From b54e02d98e42ae73071e3c01e59f12671d13d06a Mon Sep 17 00:00:00 2001
From: chengkun <chengkun@ishangstudy.com>
Date: Wed, 06 Aug 2025 17:03:57 +0800
Subject: [PATCH] 提交
---
public/static/home/venobox/preload-dots.png | 0
public/static/js/language/language.js | 103
public/static/home/venobox/next.gif | 0
public/static/home/assets/images/logo2.png | 0
public/static/home/assets/js/jquery.appear.js | 151
public/static/home/assets/images/port4.jpg | 0
public/static/home/assets/webfonts/fa-solid-900.woff | 0
public/static/home/assets/images/call-img.png | 0
public/static/home/assets/images/br2.png | 0
public/static/home/assets/fonts/Flaticon.woff | 0
public/static/home/assets/images/service-shape.png | 0
app/home/view/index/index.html | 1472 +++
public/static/home/assets/images/team-3.png | 0
public/static/home/assets/images/about-img.png | 0
public/static/home/assets/images/blog10.jpg | 0
public/static/home/assets/images/blog7.jpg | 0
public/static/home/assets/images/port-bg-img.jpg | 0
public/static/home/assets/images/port2.jpg | 0
public/static/home/assets/js/BeerSlider.js | 1
app/home/view/common/langjs.html | 4
public/static/home/venobox/prev.gif | 0
public/static/home/assets/images/sidebar2.jpg | 0
public/static/home/assets/js/jquery.meanmenu.js | 285
public/static/home/assets/images/service-shape-hover2.png | 0
public/static/home/assets/js/owl.carousel.min.js | 7
public/static/home/assets/images/blog12.jpg | 0
public/static/home/assets/images/top-bg-img.png | 0
public/static/home/assets/webfonts/fa-regular-400.ttf | 0
public/static/home/assets/corporate.mp4 | 0
public/static/home/images/slider-2.png | 0
public/static/home/assets/js/customizer.js | 43
public/static/home/assets/js/theme.js | 572 +
public/static/home/assets/js/isotope.pkgd.min.js | 12
public/static/home/images/img-1.png | 0
public/static/home/assets/images/slider1.jpg | 0
public/static/home/assets/js/bootstrap.min.js | 7
public/static/home/assets/images/price-bg.jpg | 0
public/static/home/assets/images/fottor-img.jpg | 0
public/static/home/assets/js/modernizr.custom.79639.js | 4
public/static/home/assets/js/vendor/jquery-3.5.1.min.js | 2
public/static/home/assets/images/service-3.jpg | 0
public/static/home/assets/images/team-bg-img.jpg | 0
public/static/home/assets/js/ajax-mail.js | 48
public/static/home/assets/images/port1.jpg | 0
public/static/home/assets/css/responsive.css | 2269 ++++++
public/static/home/assets/fonts/themify.woff | 0
public/static/home/assets/images/faq-img.jpg | 0
app/home/view/common/top-header.html | 97
public/static/home/assets/images/blog6.jpg | 0
public/static/home/assets/fonts/fontawesome-webfont3295.ttf | 0
public/static/home/assets/images/blog2.jpg | 0
public/static/home/assets/images/blog-thumb-01.jpg | 0
public/static/home/venobox/preload.png | 0
public/static/home/assets/images/t2.png | 0
public/static/home/assets/webfonts/fa-brands-400.woff2 | 0
public/static/home/assets/fonts/Flaticon.woff2 | 0
public/static/vue/vue-i18n.global.js | 6197 ++++++++++++++++
public/static/home/venobox/preload-ios.png | 0
public/static/home/assets/fonts/fontawesome-webfont3295.woff | 0
public/static/home/assets/images/team-2.png | 0
public/static/home/venobox/preload-circle.png | 0
public/static/home/assets/webfonts/fa-solid-900.ttf | 0
public/static/home/assets/images/service-hover.png | 0
public/static/home/assets/images/logo1.png | 0
public/static/home/assets/images/blog4.jpg | 0
public/static/home/assets/js/map.js | 2417 ++++++
public/static/home/assets/images/br3.png | 0
public/static/home/venobox/venobox.css | 327
public/static/home/assets/webfonts/fa-brands-400.ttf | 0
public/static/home/assets/images/home2-slider.jpg | 0
public/static/home/assets/images/blog11.jpg | 0
public/static/home/venobox/venobox.min.js | 12
public/static/home/assets/images/price-bg-img.jpg | 0
public/static/home/assets/images/blog1.jpg | 0
public/static/home/assets/images/breadcump.jpg | 0
public/static/home/assets/fonts/icofont.woff2 | 0
public/static/home/assets/js/jquery.nivo.slider.pack.js | 10
public/static/home/assets/images/br1.png | 0
public/static/home/assets/images/br5.png | 0
public/static/home/assets/images/testi-2.png | 0
public/static/home/assets/js/theme-pluginjs.js | 146
public/static/home/assets/fonts/icofont.woff | 0
public/static/home/assets/images/chosses-img.jpg | 0
public/static/home/assets/images/favicon.png | 0
public/static/home/assets/images/sidebar3.jpg | 0
public/static/home/images/slider-1.png | 0
public/static/home/assets/css/em-breadcrumb.css | 0
public/static/home/assets/fonts/themify.ttf | 0
public/static/home/assets/js/bootstrap.min.js.map | 1
public/static/home/assets/js/jquery.knob.js | 801 ++
public/static/home/assets/css/plugin_theme_css.css | 99
public/static/home/venobox/preload-quads.png | 0
public/static/home/assets/images/choose-img.jpg | 0
public/static/home/assets/webfonts/fa-regular-400.woff2 | 0
public/static/home/venobox/venobox.js | 448 +
public/static/home/assets/js/slick.min.js | 1
public/static/home/assets/images/cal-to-1.png | 0
public/static/home/assets/fonts/icofont.ttf | 0
public/static/home/assets/js/vendor/modernizr-2.8.3.min.js | 4
public/static/home/assets/images/port3.jpg | 0
public/static/home/assets/images/faq2.jpg | 0
public/static/home/assets/css/bootstrap.min.css | 6
public/static/home/images/logo.png | 0
public/static/home/assets/images/blog8.jpg | 0
public/static/home/assets/js/jquery.waitforimages.js | 216
public/static/home/assets/fonts/fontawesome-webfont3295.woff2 | 0
public/static/home/assets/images/blog5.jpg | 0
app/home/view/common/element-plus.html | 8
public/static/home/assets/images/blog-bg-img.jpg | 0
public/static/home/images/img-2.png | 0
public/static/vue/mixin.js | 257
public/static/home/assets/images/about-img.jpg | 0
public/static/home/assets/images/service1.jpg | 0
public/static/home/assets/images/sidebar1.jpg | 0
public/static/home/venobox/close.gif | 0
public/static/home/assets/webfonts/fa-brands-400.woff | 0
public/static/home/style.css | 5970 ++++++++++++++++
public/static/home/assets/webfonts/fa-solid-900.woff2 | 0
public/static/home/assets/js/imagesloaded.pkgd.min.js | 7
public/static/home/assets/images/t1.png | 0
public/static/home/assets/images/testi-1.png | 0
app/home/view/common/footer.html | 124
public/static/home/assets/images/testimonial-bg-img.jpg | 0
public/static/home/assets/images/br4.png | 0
/dev/null | 0
public/static/home/assets/images/blog3.jpg | 0
public/static/home/assets/images/logo.png | 0
public/static/home/assets/images/team-1.png | 0
public/static/home/assets/fonts/aprova0698.woff | 0
public/static/home/assets/images/service-2.jpg | 0
public/static/home/assets/webfonts/fa-regular-400.woff | 0
public/static/home/assets/images/price-bg-2.jpg | 0
public/static/home/assets/images/single-service1.jpg | 0
public/static/home/assets/fonts/aprova0698.ttf | 0
134 files changed, 21,808 insertions(+), 320 deletions(-)
diff --git a/app/home/view/common/element-plus.html b/app/home/view/common/element-plus.html
index 8136a76..7f67b79 100644
--- a/app/home/view/common/element-plus.html
+++ b/app/home/view/common/element-plus.html
@@ -1,5 +1,5 @@
-<link rel="stylesheet" href="/static/element/index.css" media="all">
-<link rel="stylesheet" href="/static/element/index_other.css" media="all">
+<link rel="stylesheet" href="/static/element/index.css" type="text/css">
+<link rel="stylesheet" href="/static/element/index_other.css" type="text/css">
<script type="text/javascript" src="/static/vue/vue.global.prod.js"></script>
<script type="text/javascript" src="/static/element/index.full.js"></script>
<script type="text/javascript" src="/static/element/zh-cn.js"></script>
@@ -9,5 +9,5 @@
<script type="text/javascript" src="/static/vue/moment.min.js"></script>
<script type="text/javascript" src="/static/vue/request.js"></script>
<script type="text/javascript" src="/static/jquery/jquery-3.7.1.min.js"></script>
-<!-- 语言切换 -->
-<script src="/static/js/language/language.js"></script>
\ No newline at end of file
+<!-- 语言包 -->
+<include file="common:langjs" />
\ No newline at end of file
diff --git a/app/home/view/common/footer.html b/app/home/view/common/footer.html
new file mode 100644
index 0000000..b60bc05
--- /dev/null
+++ b/app/home/view/common/footer.html
@@ -0,0 +1,124 @@
+<div class="witrfm_area em_footer_area">
+ <!-- FOOTER MIDDLE AREA -->
+ <div class="footer-middle">
+ <div class="container">
+ <div class="row">
+ <div class="col-sm-12 col-md-6 col-lg-3">
+ <div id="twr_description_widget-2" class="widget widget_twr_description_widget">
+ <div class="itpart-description-area">
+ <a href="#"><img src="/static/home/images/logo.png" alt="Footer logo" class="logo"></a>
+ <p>Round whitefish flat loach potted killifish ronquil. Long-finned pike escolar northern pike escolar nor thern squawfish eel.</p>
+ <p class="phone"><a href="tel:"> </a></p>
+ <div class="social-icons">
+ <a class="facebook" href="#" title="Facebook"><i class="icofont-facebook"></i></a>
+ <a class="twitter" href="#" title="Twitter"><i class="icofont-twitter"></i></a>
+ <a class="Pinterest" href="#" title="Pinterest"><i class="icofont-pinterest"></i></a>
+ </div>
+ </div>
+ </div>
+ </div>
+ <div class="col-sm-12 col-md-6 col-lg-3">
+ <div id="nav_menu-2" class="widget widget_nav_menu">
+ <h2 class="widget-title">Useful Links</h2>
+ <div class="menu-useful-links-container">
+ <ul class="menu">
+ <li><a href="#">Software Development</a></li>
+ <li><a href="#">Web Development</a></li>
+ <li><a href="#">Community Meetups</a></li>
+ <li><a href="#">Cloud and DevOps</a></li>
+ <li><a href="#">Product Design</a></li>
+ </ul>
+ </div>
+ </div>
+ </div>
+ <div class="col-sm-12 col-md-6 col-lg-3">
+ <div class="widget about_us">
+ <h2 class="widget-title">Address Us</h2>
+ <div class="about-footer">
+ <div class="footer-widget address">
+ <div class="footer-logo"></div>
+ <div class="footer-address">
+ <div class="footer_s_inner">
+ <div class="footer-sociala-icon">
+ <i class="icofont-google-map"></i>
+ </div>
+ <div class="footer-sociala-info">
+ <p>378 FA Tower, William SBl 2123, IL, US</p>
+ </div>
+ </div>
+ <div class="footer_s_inner">
+ <div class="footer-sociala-icon">
+ <i class="icofont-phone"></i>
+ </div>
+ <div class="footer-sociala-info">
+ <p>(+990) 698 598 631</p>
+ </div>
+ </div>
+ <div class="footer_s_inner">
+ <div class="footer-sociala-icon">
+ <i class="icofont-envelope-open"></i>
+ </div>
+ <div class="footer-sociala-info">
+ <p>demo@example.com</p>
+ </div>
+ </div>
+ <div class="footer_s_inner">
+ <div class="footer-sociala-icon">
+ <i class="icofont-ui-clock"></i>
+ </div>
+ <div class="footer-sociala-info">
+ <p>Opening Hours: 9:00 - 6:00</p>
+ </div>
+ </div>
+ </div>
+ </div>
+ </div>
+ </div>
+ </div>
+
+ <div class="col-sm-12 col-md-6 col-lg-3">
+ <div id="nav_menu-3" class="widget widget_nav_menu">
+ <h2 class="widget-title">Navigation</h2>
+ <div class="menu-navigation-container">
+ <ul class="menu">
+ <li><a href="#">Become an Affiliate</a></li>
+ <li><a href="#">About Drone</a></li>
+ <li><a href="#">Community Meetups</a></li>
+ <li><a href="#">Why Buy With Us?</a></li>
+ <li><a href="#">Blog and News</a></li>
+ </ul>
+ </div>
+ </div>
+ </div>
+
+ </div>
+ </div>
+ </div>
+ <!-- END FOOTER MIDDLE AREA -->
+ <!-- FOOTER BOTTOM AREA -->
+ <div class="footer-bottom">
+ <div class="container">
+ <div class="row">
+ <!-- FOOTER COPYRIGHT STYLE 1 -->
+ <div class="col-lg-6 col-md-6 col-sm-12">
+ <div class="copy-right-text">
+ <!-- FOOTER COPYRIGHT TEXT -->
+ <p>Copyright © All rights reserved. <a target="_blank" href="https://www.mobanwang.com/" title="网站模板" class="text-white">网站模板</a></p>
+ </div>
+ </div>
+ <div class="col-lg-6 col-md-6 col-sm-12">
+ <div class="footer-menu">
+ <!-- FOOTER COPYRIGHT MENU -->
+ <ul class="text-right">
+ <li><a href="#">Service</a></li>
+ <li><a href="#">Contact</a></li>
+ </ul>
+ </div>
+ </div>
+ <!-- FOOTER COPYRIGHT STYLE 3 -->
+ </div>
+ </div>
+ </div>
+ <!-- END FOOTER BOTTOM AREA -->
+
+</div>
\ No newline at end of file
diff --git a/app/home/view/common/langjs.html b/app/home/view/common/langjs.html
new file mode 100644
index 0000000..52cf5b9
--- /dev/null
+++ b/app/home/view/common/langjs.html
@@ -0,0 +1,4 @@
+
+<!-- 语言切换 -->
+<script src="/static/js/language/language.js"></script>
+<script src="/static/vue/vue-i18n.global.js"></script>
\ No newline at end of file
diff --git a/app/home/view/common/top-header.html b/app/home/view/common/top-header.html
new file mode 100644
index 0000000..1c628e5
--- /dev/null
+++ b/app/home/view/common/top-header.html
@@ -0,0 +1,97 @@
+<div class="em40_header_area_main">
+ <!-- top header -->
+ <div class="itpart-header-top">
+ <div class="container">
+ <div class="row">
+ <div class="col-xs-12 col-lg-9 col-xl-9 col-md-9 col-sm-12">
+ <div class="top-address text-left">
+ <p> <span> <i class="icofont-home"></i>Building 4 Country Club Woodmead Estate, 21 Woodlands Dr, Woodmead, Sandton, 2191</span> <a href="#"> <i class="icofont-envelope"></i>78322408@qq.com</a></p>
+ </div>
+ </div>
+ <div class="col-xs-12 col-lg-3 col-xl-3 col-md-3 col-sm-12 ">
+ <!-- <div class="top-right-menu">
+ <ul class="social-icons text-right text_m_center">
+ <li><a href="#"><i class="icofont-facebook"></i></a></li>
+ <li><a href="#"><i class="icofont-twitter"></i></a></li>
+ <li><a href="#"><i class="icofont-pinterest"></i></a></li>
+ <li><a href="#"><i class="icofont-vimeo"></i></a></li>
+ </ul>
+ </div> -->
+
+ <el-select v-model="currentLang" size="small" @change="(val) => changeLanguage(val, false)" style="width: 100px">
+ <el-option v-for="item in languageList" :key="item.symbol" :label="item.name_loc" :value="item.symbol" />
+ </el-select>
+ </div>
+ </div>
+ </div>
+ </div>
+ <!-- END HEADER TOP AREA -->
+ <div class="itpart-main-menu one_page hidden-xs hidden-sm witr_h_h10">
+ <div class="itpart_nav_area scroll_fixed postfix">
+ <div class="container">
+ <div class="row logo-left">
+ <div class="col-md-3 col-sm-3 col-xs-4">
+ <div class="logo">
+ <a class="main_sticky_main_l" href="/home/index/index.html" title="itpart">
+ <img src="/static/home/images/logo.png" alt="itpart">
+ </a>
+ <a class="main_sticky_l" href="/home/index/index.html" title="itpart">
+ <img src="/static/home/images/logo.png" alt="itpart">
+ </a>
+ </div>
+ </div>
+ <!-- MAIN MENU -->
+ <div class="col-md-9 col-sm-9 col-xs-8">
+ <div class="tx_mmenu_together">
+ <nav class="itpart_menu">
+ <ul class="sub-menu">
+ <!-- <li class="menu-item-has-children"><a href="#">Home</a>
+ <ul class="sub-menu">
+ <li><a href="index.html">Home Page</a></li>
+ <li><a href="home-two.html">Home Two Page</a></li>
+ <li><a href="home-video.html">Home Video Page</a></li>
+ <li><a href="landing-page.html">Landing Page</a></li>
+ </ul>
+ </li> -->
+ <li><a href="/home/index/index.html">{{ $t('message.header.home') }}</a></li>
+ <li><a href="/home/about/index.html">{{ $t('message.header.about') }}</a></li>
+ <li><a href="/home/service/index.html">{{ $t('message.header.service') }}</a></li>
+ <li><a href="/home/blog/index.html">{{ $t('message.header.blog') }}</a></li>
+ <li><a href="/home/partners/index.html">{{ $t('message.header.partners') }}</a></li>
+ <li><a href="/home/contact/index.html">{{ $t('message.header.contact') }}</a></li>
+ <!-- <li class="menu-item-has-children"><a href="blog.html">Blog</a>
+ <ul class="sub-menu">
+ <li><a href="blog-left-sidebar.html">Blog Left Sidebar</a></li>
+ <li><a href="blog-right-sidebar.html">Blog Right Sidebar</a></li>
+ <li><a href="blog.html">Blog Gird</a></li>
+ </ul>
+ </li>
+ <li class="menu-item-has-children"><a href="#">Pages</a>
+ <ul class="sub-menu">
+ <li class="menu-item-has-children"><a href="">Portfolio</a>
+ <ul class="sub-menu">
+ <li><a href="portfolio-grid.html">Portfolio Grid</a></li>
+ <li><a href="portfolio-3column.html">Portfolio 3Column</a></li>
+ <li><a href="portfolio-4column.html">Portfolio 4Column</a></li>
+ </ul>
+ </li>
+ <li><a href="testimonial.html">Testimonial</a></li>
+ <li><a href="pricing-table.html">Pricing Table</a></li>
+ <li><a href="team.html">Team</a></li>
+ <li><a href="faq-page.html">Faq Page</a></li>
+ <li><a href="single-service.html">Single Service</a></li>
+ </ul>
+ </li>
+ <li><a href="contact.html">Contact</a></li> -->
+ </ul>
+ </nav>
+ <div class="donate-btn-header">
+ <a class="dtbtn" href="#"> Let's Talk </a>
+ </div>
+ </div>
+ </div>
+ </div>
+ </div>
+ </div>
+ </div>
+</div>
\ No newline at end of file
diff --git a/app/home/view/index/index.html b/app/home/view/index/index.html
index 51dded2..1587c08 100644
--- a/app/home/view/index/index.html
+++ b/app/home/view/index/index.html
@@ -8,56 +8,1446 @@
<include file="common:title" />
<include file="common:element-plus" />
<link rel="stylesheet" href="/static/home/css/index/index.css?x=3">
+ <link rel="stylesheet" type="text/css" href="/static/home/assets/css/bootstrap.min.css" />
+ <link rel="stylesheet" type="text/css" href="/static/home/venobox/venobox.css" />
+ <link rel="stylesheet" type="text/css" href="/static/home/assets/css/plugin_theme_css.css" />
+ <link rel="stylesheet" type="text/css" href="/static/home/style.css" />
+ <link rel="stylesheet" type="text/css" href="/static/home/assets/css/responsive.css" />
+ <!-- modernizr js -->
+ <script src="/static/home/assets/js/vendor/modernizr-2.8.3.min.js"></script>
</head>
<body>
- <div class="main-container" id="vue_item">
+ <div class="main-container" id="vue_item" v-cloak>
+ <!-- 顶部 导航栏 -->
+ <include file="common:top-header" />
+ <!-- MOBILE MENU Logo AREA -->
+ <div class="mobile_logo_area hidden-md hidden-lg">
+ <div class="container">
+ <div class="row">
+ <div class="col-sm-12">
+ <div class="mobile_menu_logo text-center">
+ <a href="index.html" title="lowgo">
+ <img src="/static/home/images/logo.png" alt="lowgo">
+ </a>
+ </div>
+ </div>
+ </div>
+ </div>
+ </div>
+ <!-- MOBILE MENU AREA -->
+ <div class="home-2 mbm hidden-md hidden-lg header_area main-menu-area">
+ <div class="menu_area mobile-menu">
+ <nav class="itpart_menu">
+ <ul class="sub-menu">
+ <li class="menu-item-has-children"><a href="#">Home</a>
+ <ul class="sub-menu">
+ <li><a href="index.html">Home Page</a></li>
+ <li><a href="home-two.html">Home Two Page</a></li>
+ <li><a href="home-video.html">Home Video Page</a></li>
+ <li><a href="landing-page.html">Landing Page</a></li>
+ </ul>
+ </li>
+ <li><a href="about.html">About</a></li>
+ <li><a href="service.html">Service</a></li>
+ <li class="menu-item-has-children"><a href="blog.html">Blog</a>
+ <ul class="sub-menu">
+ <li><a href="blog-left-sidebar.html">Blog Left Sidebar</a></li>
+ <li><a href="blog-right-sidebar.html">Blog Right Sidebar</a></li>
+ <li><a href="blog.html">Blog Gird</a></li>
+ </ul>
+ </li>
+ <li class="menu-item-has-children"><a href="#">Pages</a>
+ <ul class="sub-menu">
+ <li class="menu-item-has-children"><a href="">Portfolio</a>
+ <ul class="sub-menu">
+ <li><a href="portfolio-grid.html">Portfolio Grid</a></li>
+ <li><a href="portfolio-3column.html">Portfolio 3Column</a></li>
+ <li><a href="portfolio-4column.html">Portfolio 4Column</a></li>
+ </ul>
+ </li>
+ <li><a href="testimonial.html">Testimonial</a></li>
+ <li><a href="pricing-table.html">Pricing Table</a></li>
+ <li><a href="team.html">Team</a></li>
+ <li><a href="faq-page.html">Faq Page</a></li>
+ <li><a href="single-service.html">Single Service</a></li>
+ </ul>
+ </li>
+ <li><a href="contact.html">Contact</a></li>
+ </ul>
+
+ </nav>
+ </div>
+ </div>
+ <!-- END MOBILE MENU AREA -->
+ <div class="witr_swiper_area">
+ <div class="swiper-container swiper_active">
+ <div class="swiper-wrapper">
+ <!-- single slider -->
+ <div class="swiper-slide d1 t1 m1 witr_swiper_height" style="background-image:url(/static/home/images/slider-1.png)">
+ <div class="witr_sw_text_area text-left">
+ <div class="witr_swiper_content ">
+ <!-- <h1><span>Best Secure </span> & Services</h1> -->
+ <h2>{{ $t('message.home.text-1')}}</h2>
+ <!-- <h3>it solution</h3> -->
+ <!-- <p>There are many variations of passages of lorem Ipsum have suffered alteration in some form</p> -->
+ <div class="slider_btn">
+ <div class="witr_btn_style">
+ <div class="witr_btn_sinner"> <a class="witr_btn" href="/home/contact/index.html">{{ $t('message.common.contactUs') }}</a></div>
+ </div>
+ </div>
+ </div>
+ </div>
+ </div>
+ <!-- single slider -->
+ <div class="swiper-slide d1 t1 m1 witr_swiper_height" style="background-image:url(/static/home/images/slider-2.png)">
+ <div class="witr_sw_text_area text-left">
+ <div class="witr_swiper_content ">
+ <!-- <h1><span>Best Secure </span> & Services</h1> -->
+ <h2>{{ $t('message.home.text-2')}}</h2>
+ <!-- <h3>it solution</h3> -->
+ <!-- <p>There are many variations of passages of lorem Ipsum have suffered alteration in some form</p> -->
+ <div class="slider_btn">
+ <div class="witr_btn_style">
+ <div class="witr_btn_sinner"> <a class="witr_btn" href="/home/contact/index.html">{{ $t('message.common.contactUs') }}</a></div>
+ </div>
+ </div>
+ </div>
+ </div>
+ </div>
+ </div>
+ </div>
+
+ <div class="swiper-scrollbar"></div>
+ <div class="swiper-pagination"></div>
+ <div class="swiper-button-next"></div>
+ <div class="swiper-button-prev"></div>
+ </div>
+ <!-- end slider area -->
+ <!-- it part service area -->
+ <div class="itpart_service_area">
+ <div class="container">
+ <div class="row">
+ <!-- single service -->
+ <div class="col-lg-4 col-md-6">
+ <div class="service13">
+ <div class="em_service_content ">
+ <div class="em_single_service_text ">
+ <div class="service_top_image"></div>
+ <div class="poly_text_box all_color_service">
+ <div class="service_icon_box all_icon_color">
+ <div class="em-service-icon">
+ <i class="aprova aprova-analysis"></i>
+ </div>
+ </div>
+ <div class="em_service_text_box">
+ <div class="em-service-title">
+ <h3>{{ $t('message.home.text-3')}}</h3>
+ </div>
+ <div class="em-service-desc">
+ <p>{{ $t('message.home.text-4')}}</p>
+ </div>
+ </div>
+ </div>
+ </div>
+ </div>
+ </div>
+ </div>
+ <!-- 02 single service -->
+ <div class="col-lg-4 col-md-6">
+ <div class=" service13">
+ <div class="em_service_content ">
+ <div class="em_single_service_text ">
+ <div class="service_top_image"></div>
+ <div class="poly_text_box all_color_service">
+ <div class="service_icon_box all_icon_color">
+ <div class="em-service-icon">
+ <i class="aprova aprova-clock-1"></i>
+ </div>
+ </div>
+ <div class="em_service_text_box">
+ <div class="em-service-title">
+ <h3>{{ $t('message.home.text-5')}}</h3>
+ </div>
+ <div class="em-service-desc">
+ <p>{{ $t('message.home.text-6')}}</p>
+ </div>
+ </div>
+ </div>
+ </div>
+ </div>
+ </div>
+ </div>
+ <!-- 03 single service -->
+ <div class="col-lg-4 col-md-6">
+ <div class=" service13">
+ <div class="em_service_content ">
+ <div class="em_single_service_text ">
+ <div class="service_top_image"></div>
+ <div class="poly_text_box all_color_service">
+ <div class="service_icon_box all_icon_color">
+ <div class="em-service-icon">
+ <i class="aprova aprova-landing"></i>
+ </div>
+ </div>
+ <div class="em_service_text_box">
+ <div class="em-service-title">
+ <h3>{{ $t('message.home.text-7')}}</h3>
+ </div>
+ <div class="em-service-desc">
+ <p>{{ $t('message.home.text-8')}}</p>
+ </div>
+ </div>
+ </div>
+ </div>
+ </div>
+ </div>
+ </div>
+
+ </div>
+ </div>
+ </div>
+ <!-- about area -->
+ <div class="itpart_about_area">
+ <div class="container">
+ <div class="row">
+ <div class="col-lg-6 col-md-6">
+ <div class="single_image_area">
+ <div class="single_image single_line_option ">
+ <!-- image -->
+ <img src="/static/home/assets/images/about-img.png" alt="image">
+ </div>
+ </div>
+ </div>
+ <div class="col-lg-6 col-md-6">
+ <div class="about_right_inner">
+ <h1 class="border_left_style elementor-divider__text elementor-divider__element">{{ $t('message.common.aboutUs')}}</h1>
+ <!-- title left -->
+ <div class="witr_section_title">
+ <div class="witr_section_title_inner text-left">
+ <h3>{{ $t('message.home.text-9')}}<span> {{ $t('message.home.text-10')}}<span></span></span></h3>
+ <!-- content -->
+ <p>{{ $t('message.home.text-11')}}</p>
+ </div>
+ </div>
+ <div class="witr_single_progress all_color_bar">
+ <div class="witr_title2">
+ <span class="witr_label">{{ $t('message.home.text-12')}}</span>
+ </div>
+ <div class="progress witr_progress-style2">
+ <div class="progress-bar wow fadeInLeft animated animated" data-wow-duration="1.5s" data-wow-delay="0.2s" style="width: 80%; visibility: visible; animation-duration: 1.5s; animation-delay: 0.2s; animation-name: fadeInLeft;">
+ <span class="witr_percent">80%</span>
+ </div>
+ </div>
+ </div>
+ <div class="witr_single_progress all_color_bar">
+ <div class="witr_title2">
+ <span class="witr_label">{{ $t('message.home.text-13')}}</span>
+ </div>
+ <div class="progress witr_progress-style2">
+ <div class="progress-bar wow fadeInLeft animated animated" data-wow-duration="1.5s" data-wow-delay="0.2s" style="width: 70%; visibility: visible; animation-duration: 1.5s; animation-delay: 0.2s; animation-name: fadeInLeft;">
+ <span class="witr_percent">70%</span>
+ </div>
+ </div>
+ </div>
+ <div class="witr_single_progress all_color_bar">
+ <div class="witr_title2">
+ <span class="witr_label">{{ $t('message.home.text-14')}} </span>
+ </div>
+ <div class="progress witr_progress-style2">
+ <div class="progress-bar wow fadeInLeft animated animated" data-wow-duration="1.5s" data-wow-delay="0.2s" style="width: 90%; visibility: visible; animation-duration: 1.5s; animation-delay: 0.2s; animation-name: fadeInLeft;">
+ <span class="witr_percent">90%</span>
+ </div>
+ </div>
+ </div>
+ <!-- area -->
+ <div class="witr_button_area">
+ <!-- btn default style -->
+ <div class="witr_btn_style mr">
+ <div class="witr_btn_sinner">
+ <a href="#" class="witr_btn">{{ $t('message.common.aboutUs')}}</a>
+ </div>
+ </div>
+ </div>
+ </div>
+
+ </div>
+ </div>
+ </div>
+ </div>
+ <!-- service area2 -->
+ <div class="itpart_service_area2">
+ <div class="container">
+ <div class="row">
+ <div class="col-lg-12">
+ <!-- title center -->
+ <div class="witr_section_title">
+ <div class="witr_section_title_inner text-center">
+ <!-- title top -->
+ <h2>Our Service</h2>
+ <!-- title middle -->
+ <h3>What Services We Provide to Our</h3>
+ <!-- title bottom -->
+ <h1>Customers Business</h1>
+ </div>
+ </div>
+ </div>
+ <!-- single service -->
+ <div class="col-lg-4 col-md-6">
+ <div class="witr_service2 service_overflow_inherit all_service2_color ">
+ <!-- image -->
+ <div class="witr_service2_image">
+ <img src="/static/home/assets/images/service1.jpg" alt="image">
+ <div class="wbutton_top_service_icon">
+ <a href="">
+ <span class="ti-arrow-right"></span>
+ </a>
+ </div>
+ </div>
+ <div class="witr_servicetwo_text">
+ <div class="witr_service2_icon_bottom">
+ <!-- icon -->
+ <i class="aprova aprova-landing"></i>
+ </div>
+ <!-- title -->
+ <h3>Business Planning </h3>
+ <p>Who loves or pursues or desires to tain pain of itself, because it is pain, onally circumstances pain. </p>
+ </div>
+ </div>
+ </div>
+ <!-- 02 single service -->
+ <div class="col-lg-4 col-md-6">
+ <div class="witr_service2 service_overflow_inherit all_service2_color ">
+ <!-- image -->
+ <div class="witr_service2_image">
+ <img src="/static/home/assets/images/service-2.jpg" alt="image">
+ <div class="wbutton_top_service_icon">
+ <a href="">
+ <span class="ti-arrow-right"></span>
+ </a>
+ </div>
+ </div>
+ <div class="witr_servicetwo_text">
+ <div class="witr_service2_icon_bottom">
+ <!-- icon -->
+ <i class="aprova aprova-analysis-1"></i>
+ </div>
+ <!-- title -->
+ <h3>Corporate Finance </h3>
+ <p>Who loves or pursues or desires to tain pain of itself, because it is pain, onally circumstances pain. </p>
+ </div>
+ </div>
+ </div>
+ <!-- 03 single service -->
+ <div class="col-lg-4 col-md-6">
+ <div class="witr_service2 service_overflow_inherit all_service2_color ">
+ <!-- image -->
+ <div class="witr_service2_image">
+ <img src="/static/home/assets/images/service-3.jpg" alt="image">
+ <div class="wbutton_top_service_icon">
+ <a href="">
+ <span class="ti-arrow-right"></span>
+ </a>
+ </div>
+ </div>
+ <div class="witr_servicetwo_text">
+ <div class="witr_service2_icon_bottom">
+ <!-- icon -->
+ <i class="aprova aprova-password"></i>
+ </div>
+ <!-- title -->
+ <h3>Manage Investment </h3>
+ <p>Who loves or pursues or desires to tain pain of itself, because it is pain, onally circumstances pain. </p>
+ </div>
+ </div>
+ </div>
+
+ </div>
+ </div>
+ </div>
+ <!-- itpart project area -->
+ <div class="itpart_project_area">
+ <div class="container-fluid">
+ <div class="row">
+ <div class="col-lg-12">
+ <!-- title center -->
+ <div class="witr_section_title">
+ <div class="witr_section_title_inner text-center">
+ <h2>Our Project </h2>
+ <!-- title middle -->
+ <h3>Recent Our Portfolios </h3>
+ </div>
+ </div>
+ </div>
+ <div class="col-lg-12">
+ <div class="witr_pslide4 witr_pslide3 all_pslides_color ps1 ps3">
+ <div class="portfolio_porject_act">
+ <!-- single portfolio -->
+ <div class="item_pos col-lg-12">
+ <div class="witr_single_pslide">
+ <div class="witr_pslide_image">
+ <img src="/static/home/assets/images/port1.jpg" alt="image">
+ </div>
+ <div class="witr_content_pslide_text">
+ <div class="witr_content_pslide">
+ <!-- title -->
+ <h3><a href="#" tabindex="-1">Business and Marketing </a></h3>
+ <!-- content -->
+ <p>Business </p>
+ </div>
+ </div>
+ </div>
+ </div>
+ <!-- 02 single portfolio -->
+ <div class="item_pos col-lg-12">
+ <div class="witr_single_pslide">
+ <div class="witr_pslide_image">
+ <img src="/static/home/assets/images/port2.jpg" alt="image">
+ </div>
+ <div class="witr_content_pslide_text">
+ <div class="witr_content_pslide">
+ <!-- title -->
+ <h3><a href="#" tabindex="-1">Improve for Business </a></h3>
+ <!-- content -->
+ <p>Marketing </p>
+ </div>
+ </div>
+ </div>
+ </div>
+ <!-- 03 single portfolio -->
+ <div class="item_pos col-lg-12">
+ <div class="witr_single_pslide">
+ <div class="witr_pslide_image">
+ <img src="/static/home/assets/images/port3.jpg" alt="image">
+ </div>
+ <div class="witr_content_pslide_text">
+ <div class="witr_content_pslide">
+ <!-- title -->
+ <h3><a href="#" tabindex="-1">Product of Design </a></h3>
+ <!-- content -->
+ <p>Photography </p>
+ </div>
+ </div>
+ </div>
+ </div>
+ <!-- 04 single portfolio -->
+ <div class="item_pos col-lg-12">
+ <div class="witr_single_pslide">
+ <div class="witr_pslide_image">
+ <img src="/static/home/assets/images/port4.jpg" alt="image">
+ </div>
+ <div class="witr_content_pslide_text">
+ <div class="witr_content_pslide">
+ <!-- title -->
+ <h3><a href="#" tabindex="-1">Advertising Technology</a></h3>
+ <!-- content -->
+ <p>Developer </p>
+ </div>
+ </div>
+ </div>
+ </div>
+ <!-- 05 single portfolio -->
+ <div class="item_pos col-lg-12">
+ <div class="witr_single_pslide">
+ <div class="witr_pslide_image">
+ <img src="/static/home/assets/images/port3.jpg" alt="image">
+ </div>
+ <div class="witr_content_pslide_text">
+ <div class="witr_content_pslide">
+ <!-- title -->
+ <h3><a href="#" tabindex="-1">Business and Expand</a></h3>
+ <!-- content -->
+ <p>Marketing </p>
+ </div>
+ </div>
+ </div>
+ </div>
+
+ </div>
+ </div>
+ </div>
+ </div>
+ </div>
+ </div>
+ <!-- counter up area -->
+ <div class="counter_up_area">
+ <div class="container">
+ <div class="row">
+ <!-- single counter -->
+ <div class="col-lg-3 col-md-6">
+ <div class="witr_counter_single all_counter_color">
+ <div class="witr_counter_icon">
+ <!-- icon -->
+ <i class="ti ti-heart"></i>
+ </div>
+ <div class="witr_counter_number_inn">
+ <!-- number -->
+ <h3 class="counter">25</h3>
+ <!-- symbol -->
+ <span>K</span>
+ <!-- content -->
+ <h4>Happy Customer </h4>
+ </div> <!-- counter part -->
+ </div>
+ </div>
+ <!-- 02 single counter -->
+ <div class="col-lg-3 col-md-6">
+ <div class="witr_counter_single all_counter_color">
+ <div class="witr_counter_icon">
+ <!-- icon -->
+ <i class="ti ti-user"></i>
+ </div>
+ <div class="witr_counter_number_inn">
+ <!-- number -->
+ <h3 class="counter">659</h3>
+ <!-- symbol -->
+ <span>+</span>
+ <!-- content -->
+ <h4>Employer Solutions </h4>
+ </div> <!-- counter part -->
+ </div>
+ </div>
+ <!-- 03 single counter -->
+ <div class="col-lg-3 col-md-6">
+ <div class="witr_counter_single all_counter_color">
+ <div class="witr_counter_icon">
+ <!-- icon -->
+ <i class="aprova aprova-startup1"></i>
+ </div>
+ <div class="witr_counter_number_inn">
+ <!-- number -->
+ <h3 class="counter">487</h3>
+ <!-- symbol -->
+ <span>+</span>
+ <!-- content -->
+ <h4>Online Support </h4>
+ </div> <!-- counter part -->
+ </div>
+ </div>
+ <!-- 04 single counter -->
+ <div class="col-lg-3 col-md-6">
+ <div class="witr_counter_single all_counter_color">
+ <div class="witr_counter_icon">
+ <!-- icon -->
+ <i class="ti ti-check-box"></i>
+ </div>
+ <div class="witr_counter_number_inn">
+ <!-- number -->
+ <h3 class="counter">346</h3>
+ <!-- symbol -->
+ <span>+</span>
+ <!-- content -->
+ <h4>Project Completed </h4>
+ </div> <!-- counter part -->
+ </div>
+ </div>
+
+ </div>
+ </div>
+ </div>
+ <!-- itpart team area -->
+ <div class="itpart_team_area">
+ <div class="container">
+ <div class="row">
+ <div class="col-lg-12">
+ <!-- title center -->
+ <div class="witr_section_title">
+ <div class="witr_section_title_inner text-center">
+ <h2>Our Team Member</h2>
+ <!-- title middle -->
+ <h3>We’re Experienced Professionals</h3>
+ <!-- title bottom -->
+ <h1>Our Employ</h1>
+ </div>
+ </div>
+ </div>
+ <div class="col-lg-12">
+ <div class="witr_team_area_c post_team10_area post_team11_area">
+ <div class="row team_active">
+ <!-- single team -->
+ <div class="witr_all_mb_30 col-md-12 col-xs-12 col-sm-12 col-lg-12">
+ <div class="em_team type-em_team">
+ <div class="team-part all_color_team ">
+ <div class="witr_team_section">
+ <!-- image -->
+ <img src="/static/home/assets/images/team-3.png" alt="image" />
+ <div class="team_o_icons all_team_icon_o_color">
+ <ul class="witr_pots_team_s">
+ <li><a href="#"><i class="icofont-facebook"></i></a></li>
+ <li><a href="#"><i class="icofont-twitter"></i></a></li>
+ <li><a href="#"><i class="icofont-tumblr"></i></a></li>
+ </ul>
+ </div>
+ <div class="witr_team_content post_team_p11 all_content_bg_color text-center">
+ <!-- title -->
+ <h5><a href="#">Rayhan Khan </a></h5>
+ <!-- sub title -->
+ <span>Team Leder </span>
+ </div>
+ </div> <!-- team sec -->
+
+ </div>
+ </div>
+ </div>
+ <!-- 02 single team -->
+ <div class="witr_all_mb_30 col-md-12 col-xs-12 col-sm-12 col-lg-12">
+ <div class="em_team type-em_team">
+ <div class="team-part all_color_team ">
+ <div class="witr_team_section">
+ <!-- image -->
+ <img src="/static/home/assets/images/team-2.png" alt="image" />
+ <div class="team_o_icons all_team_icon_o_color">
+ <ul class="witr_pots_team_s">
+ <li><a href="#"><i class="icofont-facebook"></i></a></li>
+ <li><a href="#"><i class="icofont-twitter"></i></a></li>
+ <li><a href="#"><i class="icofont-tumblr"></i></a></li>
+ </ul>
+ </div>
+ <div class="witr_team_content post_team_p11 all_content_bg_color text-center">
+ <!-- title -->
+ <h5><a href="#">Metton Alex </a></h5>
+ <!-- sub title -->
+ <span>Founder </span>
+ </div>
+ </div> <!-- team sec -->
+
+ </div>
+ </div>
+ </div>
+ <!-- 03 single team -->
+ <div class="witr_all_mb_30 col-md-12 col-xs-12 col-sm-12 col-lg-12">
+ <div class="em_team type-em_team">
+ <div class="team-part all_color_team ">
+ <div class="witr_team_section">
+ <!-- image -->
+ <img src="/static/home/assets/images/team-1.png" alt="image" />
+ <div class="team_o_icons all_team_icon_o_color">
+ <ul class="witr_pots_team_s">
+ <li><a href="#"><i class="icofont-facebook"></i></a></li>
+ <li><a href="#"><i class="icofont-twitter"></i></a></li>
+ <li><a href="#"><i class="icofont-tumblr"></i></a></li>
+ </ul>
+ </div>
+ <div class="witr_team_content post_team_p11 all_content_bg_color text-center">
+ <!-- title -->
+ <h5><a href="#">Rayhan Khan </a></h5>
+ <!-- sub title -->
+ <span>Team Leder </span>
+ </div>
+ </div> <!-- team sec -->
+
+ </div>
+ </div>
+ </div>
+
+ </div>
+ </div>
+ </div>
+ </div>
+ </div>
+ </div>
+ <!-- why choose area -->
+ <div class="why_choose_area">
+ <div class="container">
+ <div class="row">
+ <div class="col-lg-12"></div>
+ <!-- why choose left image -->
+ <div class="col-lg-6 col-md-6">
+ <div class="single_image_area">
+ <div class="single_image single_line_option ">
+ <!-- image -->
+ <img src="/static/home/assets/images/choose-img.jpg" alt="image" />
+ </div>
+ </div>
+ </div>
+ <!-- why choose right content -->
+ <div class="col-lg-6 col-md-6">
+ <div class="why_choose_right_content_inner">
+ <h1 class="border_left_style elementor-divider__text elementor-divider__element">Why Choose us</h1>
+ <!-- title left -->
+ <div class="witr_section_title">
+ <div class="witr_section_title_inner text-left">
+ <!-- title middle -->
+ <h3>A Right Choice that Makes theDifference to Others</h3>
+ <!-- content -->
+ <p>I'm a Freelancer Front-end Developer with 3 years of perience. I'm from I code and create web elements for amazing. </p>
+ </div>
+ </div>
+ <div class="em-service2 sleft all_color_service">
+ <div class="em_service_content ">
+ <div class="em_single_service_text ">
+ <div class="service_top_image">
+ <!-- image -->
+ </div>
+ <div class="text_box witr_s_flex">
+ <div class="service_top_text all_icon_color">
+ <div class="em-service-icon">
+ <!-- icon -->
+ <i class="aprova aprova-analysis"></i>
+ </div>
+ </div>
+ <div class="em-service-inner">
+ <div class="em-service-title">
+ <!-- title -->
+ <h3><a href="#">Quick Support</a></h3>
+ </div>
+ <div class="em-service-desc">
+ <p>Web designing in a powerful way of just not an only in a passion for our Company. </p>
+ </div>
+ </div>
+ </div>
+ </div>
+ </div>
+ </div>
+ <div class="em-service2 sleft all_color_service">
+ <div class="em_service_content ">
+ <div class="em_single_service_text ">
+ <div class="service_top_image">
+ <!-- image -->
+ </div>
+ <div class="text_box witr_s_flex">
+ <div class="service_top_text all_icon_color">
+ <div class="em-service-icon">
+ <!-- icon -->
+ <i class="aprova aprova-investment"></i>
+ </div>
+ </div>
+ <div class="em-service-inner">
+ <div class="em-service-title">
+ <!-- title -->
+ <h3><a href="#">Financial Advices</a></h3>
+ </div>
+ <div class="em-service-desc">
+ <p>Web designing in a powerful way of just not an only in a passion for our Company. </p>
+ </div>
+ </div>
+ </div>
+ </div>
+ </div>
+ </div>
+ <!-- btn area -->
+ <div class="witr_button_area">
+ <!-- btn default style -->
+ <div class="witr_btn_style mr">
+ <div class="witr_btn_sinner">
+ <a href="#" class="witr_btn">More Choose</a>
+ </div>
+ </div>
+ </div>
+
+ </div>
+ </div>
+ </div>
+ </div>
+ </div>
+ <!-- pricing plane area -->
+ <div class="pricing_plane_area">
+ <div class="container">
+ <div class="row">
+ <div class="col-lg-12">
+ <!-- title center -->
+ <div class="witr_section_title">
+ <div class="witr_section_title_inner text-center">
+ <!-- title top -->
+ <h2>Our Pricing</h2>
+ <h3>Customer Plans Anytime</h3>
+ </div>
+ </div>
+ </div>
+ <!-- single priceing plane -->
+ <div class="col-lg-4 col-md-6">
+ <div class="pricing_area all_pricing_color ">
+ <div class="pricing-part pricing_style_7 ">
+ <!-- icon -->
+ <div class="witr_pricing_icon"></div>
+ <!-- price/currency/month -->
+ <h5><span>$</span>20/ <span> mo</span></h5>
+ <div class="pricing_bar_title">
+ <h4>Basic Plan</h4>
+ </div>
+ <!-- list -->
+ <div class="witri_texti_list">
+ <ul>
+ <li class=" themex-item-b10c86d">40 Space Users</li>
+ <li class=" themex-item-63d9a15">Unlimited Service</li>
+ <li class=" themex-item-2a29fe4">15 GB Space</li>
+ <li class=" themex-item-4d82a40">Unlimtied Bandwith</li>
+ <li class=" themex-item-33c008a">Support Reports</li>
+ </ul>
+ </div>
+ <!-- button -->
+ <div class="witr_btnp_color">
+ <a class="btn" href="#">Buy Now</a>
+ </div>
+ </div>
+ </div>
+ </div>
+ <!-- 02 single priceing plane -->
+ <div class="col-lg-4 col-md-6">
+ <div class="pricing_area all_pricing_color pricing_area2">
+ <div class="pricing-part pricing_style_7 ">
+ <!-- icon -->
+ <div class="witr_pricing_icon"></div>
+ <!-- price/currency/month -->
+ <h5><span>$</span>30/ <span> ye</span></h5>
+ <div class="pricing_bar_title">
+ <h4>Advance Plan</h4>
+ </div>
+ <!-- list -->
+ <div class="witri_texti_list">
+ <ul>
+ <li class=" themex-item-b10c86d">40 Space Users</li>
+ <li class=" themex-item-63d9a15">Unlimited Service</li>
+ <li class=" themex-item-2a29fe4">15 GB Space</li>
+ <li class=" themex-item-4d82a40">Unlimtied Bandwith</li>
+ <li class=" themex-item-33c008a">Support Reports</li>
+ </ul>
+ </div>
+ <!-- button -->
+ <div class="witr_btnp_color">
+ <a class="btn" href="#">Buy Now</a>
+ </div>
+ </div>
+ </div>
+ </div>
+ <!-- 03 single priceing plane -->
+ <div class="col-lg-4 col-md-6">
+ <div class="pricing_area all_pricing_color ">
+ <div class="pricing-part pricing_style_7 ">
+ <!-- icon -->
+ <div class="witr_pricing_icon"></div>
+ <!-- price/currency/month -->
+ <h5><span>$</span>50/ <span> we</span></h5>
+ <div class="pricing_bar_title">
+ <h4>Home Plan</h4>
+ </div>
+ <!-- list -->
+ <div class="witri_texti_list">
+ <ul>
+ <li class=" themex-item-b10c86d">40 Space Users</li>
+ <li class=" themex-item-63d9a15">Unlimited Service</li>
+ <li class=" themex-item-2a29fe4">15 GB Space</li>
+ <li class=" themex-item-4d82a40">Unlimtied Bandwith</li>
+ <li class=" themex-item-33c008a">Support Reports</li>
+ </ul>
+ </div>
+ <!-- button -->
+ <div class="witr_btnp_color">
+ <a class="btn" href="#">Buy Now</a>
+ </div>
+ </div>
+ </div>
+ </div>
+
+ </div>
+ </div>
+ </div>
+ <!-- testimonial area -->
+ <div class="testimonial_area">
+ <div class="container">
+ <div class="row">
+ <div class="col-lg-12">
+ <!-- title center -->
+ <div class="witr_section_title">
+ <div class="witr_section_title_inner text-center">
+ <h2>Testimonial</h2>
+ <h3>What a Client Say ?</h3>
+ </div>
+ </div>
+ </div>
+ <div class="col-lg-12">
+ <div class="testimonial_active">
+ <!-- single testimonial -->
+ <div class="witr_testi_itemt testi-width all_color_testimonial">
+ <div class="em_single_testimonial">
+ <div class="em_test_thumb test-part">
+ <img src="/static/home/assets/images/t1.png" alt="image" />
+ </div>
+ <div class="em_testi_title">
+ <h2>David Markers <span>Co- Of Officer</span></h2>
+ </div>
+ <div class="em_testi_logo">
+ <div class="em_testilogo_inner">
+ </div>
+ </div>
+ <div class="em_testi_content">
+ <div class="em_testi_text">
+ <!-- content -->
+ <p>Through gaining experience in various economic periods, our team are able to identify the best opportunities hether we are in good times or bad times.</p>
+ </div>
+ </div>
+ <div class="test-part">
+ <ul>
+ <li>
+ <div class="execllent_toggol">
+ <div class="em_crating">
+ <i class="icofont-star active"></i>
+ <i class="icofont-star active"></i>
+ <i class="icofont-star active"></i>
+ <i class="icofont-star active"></i>
+ <i class="icofont-star active"></i>
+ </div>
+ </div>
+ </li>
+ </ul>
+ </div>
+ </div>
+ </div>
+ <!-- 02 single testimonial -->
+ <div class="witr_testi_itemt testi-width all_color_testimonial">
+ <div class="em_single_testimonial">
+ <div class="em_test_thumb test-part">
+ <img src="/static/home/assets/images/t2.png" alt="image" />
+ </div>
+ <div class="em_testi_title">
+ <h2>Chicana males <span>Manager</span></h2>
+ </div>
+ <div class="em_testi_logo">
+ <div class="em_testilogo_inner">
+ </div>
+ </div>
+ <div class="em_testi_content">
+ <div class="em_testi_text">
+ <!-- content -->
+ <p>Through gaining experience in various economic periods, our team are able to identify the best opportunities hether we are in good times or bad times.</p>
+ </div>
+ </div>
+ <div class="test-part">
+ <ul>
+ <li>
+ <div class="execllent_toggol">
+ <div class="em_crating">
+ <i class="icofont-star active"></i>
+ <i class="icofont-star active"></i>
+ <i class="icofont-star active"></i>
+ <i class="icofont-star active"></i>
+ <i class="icofont-star active"></i>
+ </div>
+ </div>
+ </li>
+ </ul>
+ </div>
+ </div>
+ </div>
+ <!-- 03 single testimonial -->
+ <div class="witr_testi_itemt testi-width all_color_testimonial">
+ <div class="em_single_testimonial">
+ <div class="em_test_thumb test-part">
+ <img src="/static/home/assets/images/t1.png" alt="image" />
+ </div>
+ <div class="em_testi_title">
+ <h2>David Markers <span>Co- Of Officer</span></h2>
+ </div>
+ <div class="em_testi_logo">
+ <div class="em_testilogo_inner">
+ </div>
+ </div>
+ <div class="em_testi_content">
+ <div class="em_testi_text">
+ <!-- content -->
+ <p>Through gaining experience in various economic periods, our team are able to identify the best opportunities hether we are in good times or bad times.</p>
+ </div>
+ </div>
+ <div class="test-part">
+ <ul>
+ <li>
+ <div class="execllent_toggol">
+ <div class="em_crating">
+ <i class="icofont-star active"></i>
+ <i class="icofont-star active"></i>
+ <i class="icofont-star active"></i>
+ <i class="icofont-star active"></i>
+ <i class="icofont-star active"></i>
+ </div>
+ </div>
+ </li>
+ </ul>
+ </div>
+ </div>
+ </div>
+
+ </div>
+ </div>
+ </div>
+ </div>
+ </div>
+ <!-- working proces area -->
+ <div class="working_proces_area">
+ <div class="container">
+ <div class="row">
+ <div class="col-lg-12">
+ <!-- title center -->
+ <div class="witr_section_title">
+ <div class="witr_section_title_inner text-center">
+ <h2>Working Process</h2>
+ <h3>Check Out Our Work Process</h3>
+ </div>
+ </div>
+ </div>
+ <!-- single feature -->
+ <div class="col-lg-3 col-md-6">
+ <div class="witr_feature_13 all_feature_color text-center ">
+ <div class="sub-item same2">
+ <!-- icon -->
+ <i class=" flaticon-settings-1"></i>
+ <!-- number -->
+ <span>01</span>
+ <!-- title -->
+ <h3><a href="#">Freedom</a></h3>
+ <!-- content -->
+ <p>We are client company and your portfolio. </p>
+ </div>
+ </div>
+ </div>
+ <!-- 02 single feature -->
+ <div class="col-lg-3 col-md-6">
+ <div class="witr_feature_13 all_feature_color text-center ">
+ <div class="sub-item same2">
+ <!-- icon -->
+ <i class=" flaticon-advertising"></i>
+ <!-- number -->
+ <span>02</span>
+ <!-- title -->
+ <h3><a href="#">Planning</a></h3>
+ <!-- content -->
+ <p>We are client company and your portfolio. </p>
+ </div>
+ </div>
+ </div>
+ <!-- 03 single feature -->
+ <div class="col-lg-3 col-md-6">
+ <div class="witr_feature_13 all_feature_color text-center ">
+ <div class="sub-item same2">
+ <!-- icon -->
+ <i class=" flaticon-cogwheels"></i>
+ <!-- number -->
+ <span>03</span>
+ <!-- title -->
+ <h3><a href="#">Execute</a></h3>
+ <!-- content -->
+ <p>We are client company and your portfolio. </p>
+ </div>
+ </div>
+ </div>
+ <!-- 04 single feature -->
+ <div class="col-lg-3 col-md-6">
+ <div class="witr_feature_13 all_feature_color text-center ">
+ <div class="sub-item same2">
+ <!-- icon -->
+ <i class=" flaticon-like-1"></i>
+ <!-- number -->
+ <span>04</span>
+ <!-- title -->
+ <h3><a href="#">Complate</a></h3>
+ <!-- content -->
+ <p>We are client company and your portfolio. </p>
+ </div>
+ </div>
+ </div>
+
+ </div>
+ </div>
+ </div>
+ <!-- accordion area -->
+ <div class="itpart_accordion_area">
+ <div class="container">
+ <div class="row">
+ <!-- accordion left faq -->
+ <div class="col-lg-6 col-md-6">
+ <h1 class="border_left_style elementor-divider__text elementor-divider__element">
+ Our Faq </h1>
+ <!-- title left -->
+ <div class="witr_section_title">
+ <div class="witr_section_title_inner text-left">
+ <!-- title middle -->
+ <h3>Frequently Asked Questions?</h3>
+ <!-- content -->
+ <p>I'm a Freelancer Front-end Developer with 3 years of perience. code and create web elements for amazing. </p>
+ </div>
+ </div>
+ <div class="accordion_area">
+ <div class="faq-part">
+ <div id="accordion">
+ <div class="card card-2 ">
+ <div class="card-header witr_ac_card">
+ <a href="#" class="card-link witr_ac_style" data-toggle="collapse" data-target="#collapse_0f9c115" aria-expanded="true">
+ <!-- icon -->
+ <i class=""></i>
+ High Quality Data Security
+ </a>
+ </div>
+ <div id="collapse_0f9c115" class="collapse ac_s_padding " data-parent="#accordion">
+ <p>Anyone who loves or pursues or desires to obtain pain of itself, because it is pain timelines for the digital consulting.</p>
+ </div>
+ </div>
+ <div class="card card-2 ">
+ <div class="card-header witr_ac_card">
+ <a href="#" class="card-link witr_ac_style" data-toggle="collapse" data-target="#collapse_57cb98a" aria-expanded="true">
+ <!-- icon -->
+ <i class=""></i>
+ How investing in dependend incer
+ </a>
+ </div>
+ <div id="collapse_57cb98a" class="collapse ac_s_padding " data-parent="#accordion">
+ <p>Anyone who loves or pursues or desires to obtain pain of itself, because it is pain timelines for the digital consulting.</p>
+ </div>
+ </div>
+ <div class="card card-2 ">
+ <div class="card-header witr_ac_card">
+ <a href="#" class="card-link witr_ac_style" data-toggle="collapse" data-target="#collapse_a90f311" aria-expanded="true">
+ <!-- icon -->
+ <i class=""></i>
+ Asing to Business Security
+ </a>
+ </div>
+ <div id="collapse_a90f311" class="collapse ac_s_padding " data-parent="#accordion">
+ <p>Anyone who loves or pursues or desires to obtain pain of itself, because it is pain timelines for the digital consulting.</p>
+ </div>
+ </div> <!-- card -->
+ <div class="card card-2 ">
+ <div class="card-header witr_ac_card">
+ <a href="#" class="card-link witr_ac_style" data-toggle="collapse" data-target="#collapse_f98c440" aria-expanded="true">
+ <!-- icon -->
+ <i class=""></i>
+ Element or Page Builder Used
+ </a>
+ </div>
+ <div id="collapse_f98c440" class="collapse ac_s_padding " data-parent="#accordion">
+ <p>Anyone who loves or pursues or desires to obtain pain of itself, because it is pain timelines for the digital consulting.</p>
+ </div>
+ </div> <!-- card -->
+ </div>
+ </div> <!-- faq part -->
+ </div>
+ </div>
+ <!-- accordion right image -->
+ <div class="col-lg-6 col-md-6">
+ <div class="single_image_area">
+ <div class="single_image single_line_option ">
+ <!-- image -->
+ <img src="/static/home/assets/images/faq-img.jpg" alt="image" />
+ </div>
+ </div>
+ </div>
+ </div>
+ </div>
+ </div>
+ <!-- itpart blog area -->
+ <div class="itpart_blog_area">
+ <div class="container">
+ <div class="row">
+ <div class="col-lg-12">
+ <!-- title center -->
+ <div class="witr_section_title">
+ <div class="witr_section_title_inner text-center">
+ <!-- title top -->
+ <h2>Blog Post</h2>
+ <!-- title middle -->
+ <h3>Our Recent Update</h3>
+ </div>
+ </div>
+ </div>
+ <div class="col-lg-12">
+ <!-- Blog Section -->
+ <div class="witr_blog_area12">
+ <div class="blog_active ">
+ <!-- single blog -->
+ <div class="witr_all_mb_30 col-md-12 col-xs-12 col-sm-12">
+ <div class="busi_singleBlog">
+ <!-- image -->
+ <div class="witr_sb_thumb">
+ <a href="#"> <img src="/static/home/assets/images/blog1.jpg" alt="image" /> </a>
+ <div class="witr_top_category">
+ <!-- category -->
+ <ul class="post-categories">
+ <li><a href="#">Developer</a></li>
+ </ul>
+ </div>
+ </div>
+ <div class="all_blog_color">
+ <div class="witr_blog_con bs5">
+ <!-- post meta -->
+ <span><a href="#"><i class="icofont-user-alt-3"></i> Itpa</a></span>
+ <span><a href="#"><i class="icofont-ui-clock"></i></a> 24 Aug 2021</span>
+ <!-- title -->
+ <h2><a href="single-blog.html">How investing in depended increasing to business.</a></h2>
+ <!-- content -->
+ <p>Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore</p>
+ <div class="wbutton_right_icon">
+ <a href="#"><i class="ti-arrow-right"></i></a>
+ </div>
+ </div>
+ </div>
+ </div>
+ </div>
+ <!-- 02 single blog -->
+ <div class="witr_all_mb_30 col-md-12 col-xs-12 col-sm-12">
+ <div class="busi_singleBlog">
+ <!-- image -->
+ <div class="witr_sb_thumb">
+ <a href="#"> <img src="/static/home/assets/images/blog2.jpg" alt="image" /> </a>
+ <div class="witr_top_category">
+ <!-- category -->
+ <ul class="post-categories">
+ <li><a href="#">Support</a></li>
+ </ul>
+ </div>
+ </div>
+ <div class="all_blog_color">
+ <div class="witr_blog_con bs5">
+ <!-- post meta -->
+ <span><a href="#"><i class="icofont-user-alt-3"></i> Itpa</a></span>
+ <span><a href="#"><i class="icofont-ui-clock"></i></a> 29 Aug 2021</span>
+ <!-- title -->
+ <h2><a href="single-blog.html">Email marketing tips that will increase your sales.</a></h2>
+ <!-- content -->
+ <p>Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore</p>
+ <div class="wbutton_right_icon">
+ <a href="#"><i class="ti-arrow-right"></i></a>
+ </div>
+ </div>
+ </div>
+ </div>
+ </div>
+ <!-- 03 single blog -->
+ <div class="witr_all_mb_30 col-md-12 col-xs-12 col-sm-12">
+ <div class="busi_singleBlog">
+ <!-- image -->
+ <div class="witr_sb_thumb">
+ <a href="#"> <img src="/static/home/assets/images/blog3.jpg" alt="image" /> </a>
+ <div class="witr_top_category">
+ <!-- category -->
+ <ul class="post-categories">
+ <li><a href="#">It Service</a></li>
+ </ul>
+ </div>
+ </div>
+ <div class="all_blog_color">
+ <div class="witr_blog_con bs5">
+ <!-- post meta -->
+ <span><a href="#"><i class="icofont-user-alt-3"></i> Itpa</a></span>
+ <span><a href="#"><i class="icofont-ui-clock"></i></a>24 Jun 2021</span>
+ <!-- title -->
+ <h2><a href="single-blog.html">Productivity tips to avoid burn out when working.</a></h2>
+ <!-- content -->
+ <p>Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore</p>
+ <div class="wbutton_right_icon">
+ <a href="#"><i class="ti-arrow-right"></i></a>
+ </div>
+ </div>
+ </div>
+ </div>
+ </div>
+ <!-- 04 single blog -->
+ <div class="witr_all_mb_30 col-md-12 col-xs-12 col-sm-12">
+ <div class="busi_singleBlog">
+ <!-- image -->
+ <div class="witr_sb_thumb">
+ <a href="#"> <img src="/static/home/assets/images/blog11.jpg" alt="image" /> </a>
+ <div class="witr_top_category">
+ <!-- category -->
+ <ul class="post-categories">
+ <li><a href="#">Management</a></li>
+ </ul>
+ </div>
+ </div>
+ <div class="all_blog_color">
+ <div class="witr_blog_con bs5">
+ <!-- post meta -->
+ <span><a href="#"><i class="icofont-user-alt-3"></i> Itpa</a></span>
+ <span><a href="#"><i class="icofont-ui-clock"></i></a> 24 Aug 2021</span>
+ <!-- title -->
+ <h2><a href="single-blog.html">How investing in depended increasing to business.</a></h2>
+ <!-- content -->
+ <p>Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore</p>
+ <div class="wbutton_right_icon">
+ <a href="#"><i class="ti-arrow-right"></i></a>
+ </div>
+ </div>
+ </div>
+ </div>
+ </div>
+
+ </div>
+ </div>
+ </div>
+ </div>
+ </div>
+ </div>
+ <!-- itpart contact area -->
+ <div class="itpart_contact_area">
+ <div class="container">
+ <div class="row">
+ <!-- contact left image -->
+ <div class="col-lg-6 col-md-6">
+ <div class="single_image_area">
+ <div class="single_image single_line_option ">
+ <!-- image -->
+ <img src="/static/home/assets/images/call-img.png" alt="image">
+ </div>
+ </div>
+ </div>
+ <!-- contact right contact form -->
+ <div class="col-lg-6 col-md-6">
+ <h1 class="border_left_style elementor-divider__text elementor-divider__element">Our Contact</h1>
+ <!-- title right -->
+ <div class="witr_section_title">
+ <div class="witr_section_title_inner text-left">
+ <!-- title middle -->
+ <h3>Get In A Touch</h3>
+ <!-- content -->
+ <p>I'm a Freelancer Front-end Developer with 3 years of patience. code and create web elements for amazing. </p>
+ </div>
+ </div>
+ <div class="apartment_area">
+ <div class="witr_apartment_form">
+ <form action="mail.php" method="post" id="contact-form">
+ <div class="row">
+ <div class="col-lg-6 col-md-6">
+ <div class="twr_form_box">
+ <input type="text" name="name" class="wpcf7-form-control wpcf7-text wpcf7-validates-as-required form-control" placeholder="Name*">
+ </div>
+ </div>
+ <div class="col-lg-6 col-md-6">
+ <div class="twr_form_box">
+ <input type="email" name="email" class="wpcf7-form-control wpcf7-text wpcf7-email wpcf7-validates-as-required wpcf7-validates-as-email form-control" placeholder="Email*">
+ </div>
+ </div>
+ <div class="col-lg-6 col-md-6">
+ <div class="twr_form_box">
+ <input type="number" name="number" class="wpcf7-form-control wpcf7-number wpcf7-validates-as-required wpcf7-validates-as-number form-control" placeholder="Phone*">
+ </div>
+ </div>
+ <div class="col-lg-6 col-md-6">
+ <div class="twr_form_box">
+ <input type="text" name="subject" class="wpcf7-form-control wpcf7-text wpcf7-validates-as-required form-control" placeholder="Subject*">
+ </div>
+ </div>
+ <div class="col-lg-12 col-md-12">
+ <div class="twr_form_box ">
+ <textarea name="textarea" class="wpcf7-form-control wpcf7-textarea wpcf7-validates-as-required form-control" placeholder="Text Message*"></textarea>
+ </div>
+ <button type="submit" name="ok" class="btn">Send Message</button>
+ </div>
+ <div class="col-lg-12 text-center">
+ <p class="form-messege"></p>
+ </div>
+ </div>
+ </form>
+ </div>
+ </div>
+ </div>
+ </div>
+ </div>
+ </div>
+ <!-- itpart brand area -->
+ <div class="itpart_brand_area">
+ <div class="container">
+ <div class="row">
+ <div class="col-lg-12">
+ <div class="carousel_imagess_area">
+ <div class="brand_active">
+ <!-- single brand -->
+ <div class="col-lg-12">
+ <div class="slide_items ">
+ <!-- image -->
+ <a href="#"><img src="/static/home/assets/images/br5.png" alt="image"></a>
+ </div>
+ </div>
+ <!-- 02 single brand -->
+ <div class="col-lg-12">
+ <div class="slide_items ">
+ <!-- image -->
+ <a href="#"><img src="/static/home/assets/images/br4.png" alt="image"></a>
+ </div>
+ </div>
+ <!-- 03 single brand -->
+ <div class="col-lg-12">
+ <div class="slide_items ">
+ <!-- image -->
+ <a href="#"><img src="/static/home/assets/images/br3.png" alt="image"></a>
+ </div>
+ </div>
+ <!-- 04 single brand -->
+ <div class="col-lg-12">
+ <div class="slide_items ">
+ <!-- image -->
+ <a href="#"><img src="/static/home/assets/images/br2.png" alt="image"></a>
+ </div>
+ </div>
+ <!-- 05 single brand -->
+ <div class="col-lg-12">
+ <div class="slide_items ">
+ <!-- image -->
+ <a href="#"><img src="/static/home/assets/images/br1.png" alt="image"></a>
+ </div>
+ </div>
+ <!-- 06 single brand -->
+ <div class="col-lg-12">
+ <div class="slide_items ">
+ <!-- image -->
+ <a href="#"><img src="/static/home/assets/images/br5.png" alt="image"></a>
+ </div>
+ </div>
+ </div>
+ </div>
+ </div>
+ </div>
+ </div>
+ </div>
+
+ <!-- 底部 -->
+ <include file="common:footer" />
</div>
-</body>
+ <!-- Vue App -->
+ <script src="/static/vue/mixin.js"></script>
+ <script>
+ const App = {
+ mixins: [sharedMixin],
+ data() {
+ return {
-<script>
- const App = {
- ///// 数据 /////
- data() {
- return {
- };
- },
+ };
+ },
+ computed: {
- ///// 计算属性 /////
- computed: {
- },
+ },
+ mounted() {
+ },
+ created() {
+ },
+ methods: {
- ///// App创建完成后执行 //////
- mounted() {
-
- },
-
- ///// App创建时候执行 /////
- created() {
-
- },
-
- ///// 方法 /////
- methods: {
- },
-
- ///// 销毁前 /////
- beforeDestroy() {
- if (this.interval) {
- clearInterval(this.interval);
- }
+ },
+ };
+ const app = Vue.createApp(App);
+ for (const [key, component] of Object.entries(ElementPlusIconsVue)) {
+ app.component(key, component)
}
- };
- const app = Vue.createApp(App);
- for (const [key, component] of Object.entries(ElementPlusIconsVue)) {
- app.component(key, component)
- }
- app.use(ElementPlus, {
- locale: ElementPlusLocaleZhCn,
- });
- app.mount("#vue_item");
-</script>
+ app.use(ElementPlus, {
+ locale: ElementPlusLocaleZhCn,
+ });
+ app.use(i18n);
+ app.mount("#vue_item");
+ </script>
+</body>
+<!-- Include All JS -->
+<!-- <script src="/static/home/assets/js/vendor/jquery-3.5.1.min.js"></script> -->
+<script src="/static/home/assets/js/bootstrap.min.js"></script>
+<script src="/static/home/assets/js/isotope.pkgd.min.js"></script>
+<script src="/static/home/assets/js/owl.carousel.min.js"></script>
+<script src="/static/home/assets/js/jquery.nivo.slider.pack.js"></script>
+<script src="/static/home/assets/js/slick.min.js"></script>
+<script src="/static/home/assets/js/imagesloaded.pkgd.min.js"></script>
+<script src="/static/home/venobox/venobox.min.js"></script>
+<script src="/static/home/assets/js/jquery.appear.js"></script>
+<script src="/static/home/assets/js/jquery.knob.js"></script>
+<script src="/static/home/assets/js/BeerSlider.js"></script>
+<script src="/static/home/assets/js/theme-pluginjs.js"></script>
+<script src="/static/home/assets/js/jquery.meanmenu.js"></script>
+<script src="/static/home/assets/js/ajax-mail.js"></script>
+<script src="/static/home/assets/js/theme.js"></script>
</html>
\ No newline at end of file
diff --git a/public/static/home/assets/corporate.mp4 b/public/static/home/assets/corporate.mp4
new file mode 100644
index 0000000..9f48ee9
--- /dev/null
+++ b/public/static/home/assets/corporate.mp4
Binary files differ
diff --git a/public/static/home/assets/css/bootstrap.min.css b/public/static/home/assets/css/bootstrap.min.css
new file mode 100644
index 0000000..b5accc2
--- /dev/null
+++ b/public/static/home/assets/css/bootstrap.min.css
@@ -0,0 +1,6 @@
+/*!
+ * Bootstrap v4.1.3 (://getbootstrap.com/)
+ * Copyright 2011-2020 The Bootstrap Authors
+ * Copyright 2011-2020 Twitter, Inc.
+ * Licensed under MIT (://github.com/twbs/bootstrap/blob/master/LICENSE)
+ */:root{--blue:#ff5e14;--indigo:#6610f2;--purple:#6f42c1;--pink:#e83e8c;--red:#dc3545;--orange:#fd7e14;--yellow:#ffc107;--green:#28a745;--teal:#20c997;--cyan:#17a2b8;--white:#fff;--gray:#6c757d;--gray-dark:#343a40;--primary:#ff5e14;--secondary:#6c757d;--success:#28a745;--info:#17a2b8;--warning:#ffc107;--danger:#dc3545;--light:#f8f9fa;--dark:#343a40;--breakpoint-xs:0;--breakpoint-sm:576px;--breakpoint-md:768px;--breakpoint-lg:992px;--breakpoint-xl:1200px;--font-family-sans-serif:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji";--font-family-monospace:SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace}*,::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%;-ms-text-size-adjust:100%;-ms-overflow-style:scrollbar;-webkit-tap-highlight-color:transparent}@-ms-viewport{width:device-width}article,aside,figcaption,figure,footer,header,hgroup,main,nav,section{display:block}body{margin:0;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji";font-size:1rem;font-weight:400;line-height:1.5;color:#212529;text-align:left;background-color:#fff}[tabindex="-1"]:focus{outline:0!important}hr{-webkit-box-sizing:content-box;box-sizing:content-box;height:0;overflow:visible}h1,h2,h3,h4,h5,h6{margin-top:0;margin-bottom:.5rem}p{margin-top:0;margin-bottom:1rem}abbr[data-original-title],abbr[title]{text-decoration:underline;-webkit-text-decoration:underline dotted;text-decoration:underline dotted;cursor:help;border-bottom:0}address{margin-bottom:1rem;font-style:normal;line-height:inherit}dl,ol,ul{margin-top:0;margin-bottom:1rem}ol ol,ol ul,ul ol,ul ul{margin-bottom:0}dt{font-weight:700}dd{margin-bottom:.5rem;margin-left:0}blockquote{margin:0 0 1rem}dfn{font-style:italic}b,strong{font-weight:bolder}small{font-size:80%}sub,sup{position:relative;font-size:75%;line-height:0;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}a{color:#ff5e14;text-decoration:none;background-color:transparent;-webkit-text-decoration-skip:objects}a:hover{color:#0056b3;text-decoration:underline}a:not([href]):not([tabindex]){color:inherit;text-decoration:none}a:not([href]):not([tabindex]):focus,a:not([href]):not([tabindex]):hover{color:inherit;text-decoration:none}a:not([href]):not([tabindex]):focus{outline:0}code,kbd,pre,samp{font-family:SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace;font-size:1em}pre{margin-top:0;margin-bottom:1rem;overflow:auto;-ms-overflow-style:scrollbar}figure{margin:0 0 1rem}img{vertical-align:middle;border-style:none}svg{overflow:hidden;vertical-align:middle}table{border-collapse:collapse}caption{padding-top:.75rem;padding-bottom:.75rem;color:#6c757d;text-align:left;caption-side:bottom}th{text-align:inherit}label{display:inline-block;margin-bottom:.5rem}button{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}[type=reset],[type=submit],button,html [type=button]{-webkit-appearance:button}[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}input[type=date],input[type=datetime-local],input[type=month],input[type=time]{-webkit-appearance:listbox}textarea{overflow:auto;resize:vertical}fieldset{min-width:0;padding:0;margin:0;border:0}legend{display:block;width:100%;max-width:100%;padding:0;margin-bottom:.5rem;font-size:1.5rem;line-height:inherit;color:inherit;white-space:normal}progress{vertical-align:baseline}[type=number]::-webkit-inner-spin-button,[type=number]::-webkit-outer-spin-button{height:auto}[type=search]{outline-offset:-2px;-webkit-appearance:none}[type=search]::-webkit-search-cancel-button,[type=search]::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{font:inherit;-webkit-appearance:button}output{display:inline-block}summary{display:list-item;cursor:pointer}template{display:none}[hidden]{display:none!important}.h1,.h2,.h3,.h4,.h5,.h6,h1,h2,h3,h4,h5,h6{margin-bottom:.5rem;font-family:inherit;font-weight:500;line-height:1.2;color:inherit}.h1,h1{font-size:2.5rem}.h2,h2{font-size:2rem}.h3,h3{font-size:1.75rem}.h4,h4{font-size:1.5rem}.h5,h5{font-size:1.25rem}.h6,h6{font-size:1rem}.lead{font-size:1.25rem;font-weight:300}.display-1{font-size:6rem;font-weight:300;line-height:1.2}.display-2{font-size:5.5rem;font-weight:300;line-height:1.2}.display-3{font-size:4.5rem;font-weight:300;line-height:1.2}.display-4{font-size:3.5rem;font-weight:300;line-height:1.2}hr{margin-top:1rem;margin-bottom:1rem;border:0;border-top:1px solid rgba(0,0,0,.1)}.small,small{font-size:80%;font-weight:400}.mark,mark{padding:.2em;background-color:#fcf8e3}.list-unstyled{padding-left:0;list-style:none}.list-inline{padding-left:0;list-style:none}.list-inline-item{display:inline-block}.list-inline-item:not(:last-child){margin-right:.5rem}.initialism{font-size:90%;text-transform:uppercase}.blockquote{margin-bottom:1rem;font-size:1.25rem}.blockquote-footer{display:block;font-size:80%;color:#6c757d}.blockquote-footer::before{content:"\2014 \00A0"}.img-fluid{max-width:100%;height:auto}.img-thumbnail{padding:.25rem;background-color:#fff;border:1px solid #dee2e6;border-radius:.25rem;max-width:100%;height:auto}.figure{display:inline-block}.figure-img{margin-bottom:.5rem;line-height:1}.figure-caption{font-size:90%;color:#6c757d}code{font-size:87.5%;color:#e83e8c;word-break:break-word}a>code{color:inherit}kbd{padding:.2rem .4rem;font-size:87.5%;color:#fff;background-color:#212529;border-radius:.2rem}kbd kbd{padding:0;font-size:100%;font-weight:700}pre{display:block;font-size:87.5%;color:#212529}pre code{font-size:inherit;color:inherit;word-break:normal}.pre-scrollable{max-height:340px;overflow-y:scroll}.container{width:100%;padding-right:15px;padding-left:15px;margin-right:auto;margin-left:auto}@media (min-width:576px){.container{max-width:540px}}@media (min-width:768px){.container{max-width:720px}}@media (min-width:992px){.container{max-width:960px}}@media (min-width:1200px){.container{max-width:1200px}}.container-fluid{width:100%;padding-right:15px;padding-left:15px;margin-right:auto;margin-left:auto}.row{display:-ms-flexbox;display:-webkit-box;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap;margin-right:-15px;margin-left:-15px}.no-gutters{margin-right:0;margin-left:0}.no-gutters>.col,.no-gutters>[class*=col-]{padding-right:0;padding-left:0}.col,.col-1,.col-10,.col-11,.col-12,.col-2,.col-3,.col-4,.col-5,.col-6,.col-7,.col-8,.col-9,.col-auto,.col-lg,.col-lg-1,.col-lg-10,.col-lg-11,.col-lg-12,.col-lg-2,.col-lg-3,.col-lg-4,.col-lg-5,.col-lg-6,.col-lg-7,.col-lg-8,.col-lg-9,.col-lg-auto,.col-md,.col-md-1,.col-md-10,.col-md-11,.col-md-12,.col-md-2,.col-md-3,.col-md-4,.col-md-5,.col-md-6,.col-md-7,.col-md-8,.col-md-9,.col-md-auto,.col-sm,.col-sm-1,.col-sm-10,.col-sm-11,.col-sm-12,.col-sm-2,.col-sm-3,.col-sm-4,.col-sm-5,.col-sm-6,.col-sm-7,.col-sm-8,.col-sm-9,.col-sm-auto,.col-xl,.col-xl-1,.col-xl-10,.col-xl-11,.col-xl-12,.col-xl-2,.col-xl-3,.col-xl-4,.col-xl-5,.col-xl-6,.col-xl-7,.col-xl-8,.col-xl-9,.col-xl-auto{position:relative;width:100%;min-height:1px;padding-right:15px;padding-left:15px}.col{-ms-flex-preferred-size:0;flex-basis:0;-ms-flex-positive:1;-webkit-box-flex:1;flex-grow:1;max-width:100%}.col-auto{-ms-flex:0 0 auto;-webkit-box-flex:0;flex:0 0 auto;width:auto;max-width:none}.col-1{-ms-flex:0 0 8.333333%;-webkit-box-flex:0;flex:0 0 8.333333%;max-width:8.333333%}.col-2{-ms-flex:0 0 16.666667%;-webkit-box-flex:0;flex:0 0 16.666667%;max-width:16.666667%}.col-3{-ms-flex:0 0 25%;-webkit-box-flex:0;flex:0 0 25%;max-width:25%}.col-4{-ms-flex:0 0 33.333333%;-webkit-box-flex:0;flex:0 0 33.333333%;max-width:33.333333%}.col-5{-ms-flex:0 0 41.666667%;-webkit-box-flex:0;flex:0 0 41.666667%;max-width:41.666667%}.col-6{-ms-flex:0 0 50%;-webkit-box-flex:0;flex:0 0 50%;max-width:50%}.col-7{-ms-flex:0 0 58.333333%;-webkit-box-flex:0;flex:0 0 58.333333%;max-width:58.333333%}.col-8{-ms-flex:0 0 66.666667%;-webkit-box-flex:0;flex:0 0 66.666667%;max-width:66.666667%}.col-9{-ms-flex:0 0 75%;-webkit-box-flex:0;flex:0 0 75%;max-width:75%}.col-10{-ms-flex:0 0 83.333333%;-webkit-box-flex:0;flex:0 0 83.333333%;max-width:83.333333%}.col-11{-ms-flex:0 0 91.666667%;-webkit-box-flex:0;flex:0 0 91.666667%;max-width:91.666667%}.col-12{-ms-flex:0 0 100%;-webkit-box-flex:0;flex:0 0 100%;max-width:100%}.order-first{-ms-flex-order:-1;-webkit-box-ordinal-group:0;order:-1}.order-last{-ms-flex-order:13;-webkit-box-ordinal-group:14;order:13}.order-0{-ms-flex-order:0;-webkit-box-ordinal-group:1;order:0}.order-1{-ms-flex-order:1;-webkit-box-ordinal-group:2;order:1}.order-2{-ms-flex-order:2;-webkit-box-ordinal-group:3;order:2}.order-3{-ms-flex-order:3;-webkit-box-ordinal-group:4;order:3}.order-4{-ms-flex-order:4;-webkit-box-ordinal-group:5;order:4}.order-5{-ms-flex-order:5;-webkit-box-ordinal-group:6;order:5}.order-6{-ms-flex-order:6;-webkit-box-ordinal-group:7;order:6}.order-7{-ms-flex-order:7;-webkit-box-ordinal-group:8;order:7}.order-8{-ms-flex-order:8;-webkit-box-ordinal-group:9;order:8}.order-9{-ms-flex-order:9;-webkit-box-ordinal-group:10;order:9}.order-10{-ms-flex-order:10;-webkit-box-ordinal-group:11;order:10}.order-11{-ms-flex-order:11;-webkit-box-ordinal-group:12;order:11}.order-12{-ms-flex-order:12;-webkit-box-ordinal-group:13;order:12}.offset-1{margin-left:8.333333%}.offset-2{margin-left:16.666667%}.offset-3{margin-left:25%}.offset-4{margin-left:33.333333%}.offset-5{margin-left:41.666667%}.offset-6{margin-left:50%}.offset-7{margin-left:58.333333%}.offset-8{margin-left:66.666667%}.offset-9{margin-left:75%}.offset-10{margin-left:83.333333%}.offset-11{margin-left:91.666667%}@media (min-width:576px){.col-sm{-ms-flex-preferred-size:0;flex-basis:0;-ms-flex-positive:1;-webkit-box-flex:1;flex-grow:1;max-width:100%}.col-sm-auto{-ms-flex:0 0 auto;-webkit-box-flex:0;flex:0 0 auto;width:auto;max-width:none}.col-sm-1{-ms-flex:0 0 8.333333%;-webkit-box-flex:0;flex:0 0 8.333333%;max-width:8.333333%}.col-sm-2{-ms-flex:0 0 16.666667%;-webkit-box-flex:0;flex:0 0 16.666667%;max-width:16.666667%}.col-sm-3{-ms-flex:0 0 25%;-webkit-box-flex:0;flex:0 0 25%;max-width:25%}.col-sm-4{-ms-flex:0 0 33.333333%;-webkit-box-flex:0;flex:0 0 33.333333%;max-width:33.333333%}.col-sm-5{-ms-flex:0 0 41.666667%;-webkit-box-flex:0;flex:0 0 41.666667%;max-width:41.666667%}.col-sm-6{-ms-flex:0 0 50%;-webkit-box-flex:0;flex:0 0 50%;max-width:50%}.col-sm-7{-ms-flex:0 0 58.333333%;-webkit-box-flex:0;flex:0 0 58.333333%;max-width:58.333333%}.col-sm-8{-ms-flex:0 0 66.666667%;-webkit-box-flex:0;flex:0 0 66.666667%;max-width:66.666667%}.col-sm-9{-ms-flex:0 0 75%;-webkit-box-flex:0;flex:0 0 75%;max-width:75%}.col-sm-10{-ms-flex:0 0 83.333333%;-webkit-box-flex:0;flex:0 0 83.333333%;max-width:83.333333%}.col-sm-11{-ms-flex:0 0 91.666667%;-webkit-box-flex:0;flex:0 0 91.666667%;max-width:91.666667%}.col-sm-12{-ms-flex:0 0 100%;-webkit-box-flex:0;flex:0 0 100%;max-width:100%}.order-sm-first{-ms-flex-order:-1;-webkit-box-ordinal-group:0;order:-1}.order-sm-last{-ms-flex-order:13;-webkit-box-ordinal-group:14;order:13}.order-sm-0{-ms-flex-order:0;-webkit-box-ordinal-group:1;order:0}.order-sm-1{-ms-flex-order:1;-webkit-box-ordinal-group:2;order:1}.order-sm-2{-ms-flex-order:2;-webkit-box-ordinal-group:3;order:2}.order-sm-3{-ms-flex-order:3;-webkit-box-ordinal-group:4;order:3}.order-sm-4{-ms-flex-order:4;-webkit-box-ordinal-group:5;order:4}.order-sm-5{-ms-flex-order:5;-webkit-box-ordinal-group:6;order:5}.order-sm-6{-ms-flex-order:6;-webkit-box-ordinal-group:7;order:6}.order-sm-7{-ms-flex-order:7;-webkit-box-ordinal-group:8;order:7}.order-sm-8{-ms-flex-order:8;-webkit-box-ordinal-group:9;order:8}.order-sm-9{-ms-flex-order:9;-webkit-box-ordinal-group:10;order:9}.order-sm-10{-ms-flex-order:10;-webkit-box-ordinal-group:11;order:10}.order-sm-11{-ms-flex-order:11;-webkit-box-ordinal-group:12;order:11}.order-sm-12{-ms-flex-order:12;-webkit-box-ordinal-group:13;order:12}.offset-sm-0{margin-left:0}.offset-sm-1{margin-left:8.333333%}.offset-sm-2{margin-left:16.666667%}.offset-sm-3{margin-left:25%}.offset-sm-4{margin-left:33.333333%}.offset-sm-5{margin-left:41.666667%}.offset-sm-6{margin-left:50%}.offset-sm-7{margin-left:58.333333%}.offset-sm-8{margin-left:66.666667%}.offset-sm-9{margin-left:75%}.offset-sm-10{margin-left:83.333333%}.offset-sm-11{margin-left:91.666667%}}@media (min-width:768px){.col-md{-ms-flex-preferred-size:0;flex-basis:0;-ms-flex-positive:1;-webkit-box-flex:1;flex-grow:1;max-width:100%}.col-md-auto{-ms-flex:0 0 auto;-webkit-box-flex:0;flex:0 0 auto;width:auto;max-width:none}.col-md-1{-ms-flex:0 0 8.333333%;-webkit-box-flex:0;flex:0 0 8.333333%;max-width:8.333333%}.col-md-2{-ms-flex:0 0 16.666667%;-webkit-box-flex:0;flex:0 0 16.666667%;max-width:16.666667%}.col-md-3{-ms-flex:0 0 25%;-webkit-box-flex:0;flex:0 0 25%;max-width:25%}.col-md-4{-ms-flex:0 0 33.333333%;-webkit-box-flex:0;flex:0 0 33.333333%;max-width:33.333333%}.col-md-5{-ms-flex:0 0 41.666667%;-webkit-box-flex:0;flex:0 0 41.666667%;max-width:41.666667%}.col-md-6{-ms-flex:0 0 50%;-webkit-box-flex:0;flex:0 0 50%;max-width:50%}.col-md-7{-ms-flex:0 0 58.333333%;-webkit-box-flex:0;flex:0 0 58.333333%;max-width:58.333333%}.col-md-8{-ms-flex:0 0 66.666667%;-webkit-box-flex:0;flex:0 0 66.666667%;max-width:66.666667%}.col-md-9{-ms-flex:0 0 75%;-webkit-box-flex:0;flex:0 0 75%;max-width:75%}.col-md-10{-ms-flex:0 0 83.333333%;-webkit-box-flex:0;flex:0 0 83.333333%;max-width:83.333333%}.col-md-11{-ms-flex:0 0 91.666667%;-webkit-box-flex:0;flex:0 0 91.666667%;max-width:91.666667%}.col-md-12{-ms-flex:0 0 100%;-webkit-box-flex:0;flex:0 0 100%;max-width:100%}.order-md-first{-ms-flex-order:-1;-webkit-box-ordinal-group:0;order:-1}.order-md-last{-ms-flex-order:13;-webkit-box-ordinal-group:14;order:13}.order-md-0{-ms-flex-order:0;-webkit-box-ordinal-group:1;order:0}.order-md-1{-ms-flex-order:1;-webkit-box-ordinal-group:2;order:1}.order-md-2{-ms-flex-order:2;-webkit-box-ordinal-group:3;order:2}.order-md-3{-ms-flex-order:3;-webkit-box-ordinal-group:4;order:3}.order-md-4{-ms-flex-order:4;-webkit-box-ordinal-group:5;order:4}.order-md-5{-ms-flex-order:5;-webkit-box-ordinal-group:6;order:5}.order-md-6{-ms-flex-order:6;-webkit-box-ordinal-group:7;order:6}.order-md-7{-ms-flex-order:7;-webkit-box-ordinal-group:8;order:7}.order-md-8{-ms-flex-order:8;-webkit-box-ordinal-group:9;order:8}.order-md-9{-ms-flex-order:9;-webkit-box-ordinal-group:10;order:9}.order-md-10{-ms-flex-order:10;-webkit-box-ordinal-group:11;order:10}.order-md-11{-ms-flex-order:11;-webkit-box-ordinal-group:12;order:11}.order-md-12{-ms-flex-order:12;-webkit-box-ordinal-group:13;order:12}.offset-md-0{margin-left:0}.offset-md-1{margin-left:8.333333%}.offset-md-2{margin-left:16.666667%}.offset-md-3{margin-left:25%}.offset-md-4{margin-left:33.333333%}.offset-md-5{margin-left:41.666667%}.offset-md-6{margin-left:50%}.offset-md-7{margin-left:58.333333%}.offset-md-8{margin-left:66.666667%}.offset-md-9{margin-left:75%}.offset-md-10{margin-left:83.333333%}.offset-md-11{margin-left:91.666667%}}@media (min-width:992px){.col-lg{-ms-flex-preferred-size:0;flex-basis:0;-ms-flex-positive:1;-webkit-box-flex:1;flex-grow:1;max-width:100%}.col-lg-auto{-ms-flex:0 0 auto;-webkit-box-flex:0;flex:0 0 auto;width:auto;max-width:none}.col-lg-1{-ms-flex:0 0 8.333333%;-webkit-box-flex:0;flex:0 0 8.333333%;max-width:8.333333%}.col-lg-2{-ms-flex:0 0 16.666667%;-webkit-box-flex:0;flex:0 0 16.666667%;max-width:16.666667%}.col-lg-3{-ms-flex:0 0 25%;-webkit-box-flex:0;flex:0 0 25%;max-width:25%}.col-lg-4{-ms-flex:0 0 33.333333%;-webkit-box-flex:0;flex:0 0 33.333333%;max-width:33.333333%}.col-lg-5{-ms-flex:0 0 41.666667%;-webkit-box-flex:0;flex:0 0 41.666667%;max-width:41.666667%}.col-lg-6{-ms-flex:0 0 50%;-webkit-box-flex:0;flex:0 0 50%;max-width:50%}.col-lg-7{-ms-flex:0 0 58.333333%;-webkit-box-flex:0;flex:0 0 58.333333%;max-width:58.333333%}.col-lg-8{-ms-flex:0 0 66.666667%;-webkit-box-flex:0;flex:0 0 66.666667%;max-width:66.666667%}.col-lg-9{-ms-flex:0 0 75%;-webkit-box-flex:0;flex:0 0 75%;max-width:75%}.col-lg-10{-ms-flex:0 0 83.333333%;-webkit-box-flex:0;flex:0 0 83.333333%;max-width:83.333333%}.col-lg-11{-ms-flex:0 0 91.666667%;-webkit-box-flex:0;flex:0 0 91.666667%;max-width:91.666667%}.col-lg-12{-ms-flex:0 0 100%;-webkit-box-flex:0;flex:0 0 100%;max-width:100%}.order-lg-first{-ms-flex-order:-1;-webkit-box-ordinal-group:0;order:-1}.order-lg-last{-ms-flex-order:13;-webkit-box-ordinal-group:14;order:13}.order-lg-0{-ms-flex-order:0;-webkit-box-ordinal-group:1;order:0}.order-lg-1{-ms-flex-order:1;-webkit-box-ordinal-group:2;order:1}.order-lg-2{-ms-flex-order:2;-webkit-box-ordinal-group:3;order:2}.order-lg-3{-ms-flex-order:3;-webkit-box-ordinal-group:4;order:3}.order-lg-4{-ms-flex-order:4;-webkit-box-ordinal-group:5;order:4}.order-lg-5{-ms-flex-order:5;-webkit-box-ordinal-group:6;order:5}.order-lg-6{-ms-flex-order:6;-webkit-box-ordinal-group:7;order:6}.order-lg-7{-ms-flex-order:7;-webkit-box-ordinal-group:8;order:7}.order-lg-8{-ms-flex-order:8;-webkit-box-ordinal-group:9;order:8}.order-lg-9{-ms-flex-order:9;-webkit-box-ordinal-group:10;order:9}.order-lg-10{-ms-flex-order:10;-webkit-box-ordinal-group:11;order:10}.order-lg-11{-ms-flex-order:11;-webkit-box-ordinal-group:12;order:11}.order-lg-12{-ms-flex-order:12;-webkit-box-ordinal-group:13;order:12}.offset-lg-0{margin-left:0}.offset-lg-1{margin-left:8.333333%}.offset-lg-2{margin-left:16.666667%}.offset-lg-3{margin-left:25%}.offset-lg-4{margin-left:33.333333%}.offset-lg-5{margin-left:41.666667%}.offset-lg-6{margin-left:50%}.offset-lg-7{margin-left:58.333333%}.offset-lg-8{margin-left:66.666667%}.offset-lg-9{margin-left:75%}.offset-lg-10{margin-left:83.333333%}.offset-lg-11{margin-left:91.666667%}}@media (min-width:1200px){.col-xl{-ms-flex-preferred-size:0;flex-basis:0;-ms-flex-positive:1;-webkit-box-flex:1;flex-grow:1;max-width:100%}.col-xl-auto{-ms-flex:0 0 auto;-webkit-box-flex:0;flex:0 0 auto;width:auto;max-width:none}.col-xl-1{-ms-flex:0 0 8.333333%;-webkit-box-flex:0;flex:0 0 8.333333%;max-width:8.333333%}.col-xl-2{-ms-flex:0 0 16.666667%;-webkit-box-flex:0;flex:0 0 16.666667%;max-width:16.666667%}.col-xl-3{-ms-flex:0 0 25%;-webkit-box-flex:0;flex:0 0 25%;max-width:25%}.col-xl-4{-ms-flex:0 0 33.333333%;-webkit-box-flex:0;flex:0 0 33.333333%;max-width:33.333333%}.col-xl-5{-ms-flex:0 0 41.666667%;-webkit-box-flex:0;flex:0 0 41.666667%;max-width:41.666667%}.col-xl-6{-ms-flex:0 0 50%;-webkit-box-flex:0;flex:0 0 50%;max-width:50%}.col-xl-7{-ms-flex:0 0 58.333333%;-webkit-box-flex:0;flex:0 0 58.333333%;max-width:58.333333%}.col-xl-8{-ms-flex:0 0 66.666667%;-webkit-box-flex:0;flex:0 0 66.666667%;max-width:66.666667%}.col-xl-9{-ms-flex:0 0 75%;-webkit-box-flex:0;flex:0 0 75%;max-width:75%}.col-xl-10{-ms-flex:0 0 83.333333%;-webkit-box-flex:0;flex:0 0 83.333333%;max-width:83.333333%}.col-xl-11{-ms-flex:0 0 91.666667%;-webkit-box-flex:0;flex:0 0 91.666667%;max-width:91.666667%}.col-xl-12{-ms-flex:0 0 100%;-webkit-box-flex:0;flex:0 0 100%;max-width:100%}.order-xl-first{-ms-flex-order:-1;-webkit-box-ordinal-group:0;order:-1}.order-xl-last{-ms-flex-order:13;-webkit-box-ordinal-group:14;order:13}.order-xl-0{-ms-flex-order:0;-webkit-box-ordinal-group:1;order:0}.order-xl-1{-ms-flex-order:1;-webkit-box-ordinal-group:2;order:1}.order-xl-2{-ms-flex-order:2;-webkit-box-ordinal-group:3;order:2}.order-xl-3{-ms-flex-order:3;-webkit-box-ordinal-group:4;order:3}.order-xl-4{-ms-flex-order:4;-webkit-box-ordinal-group:5;order:4}.order-xl-5{-ms-flex-order:5;-webkit-box-ordinal-group:6;order:5}.order-xl-6{-ms-flex-order:6;-webkit-box-ordinal-group:7;order:6}.order-xl-7{-ms-flex-order:7;-webkit-box-ordinal-group:8;order:7}.order-xl-8{-ms-flex-order:8;-webkit-box-ordinal-group:9;order:8}.order-xl-9{-ms-flex-order:9;-webkit-box-ordinal-group:10;order:9}.order-xl-10{-ms-flex-order:10;-webkit-box-ordinal-group:11;order:10}.order-xl-11{-ms-flex-order:11;-webkit-box-ordinal-group:12;order:11}.order-xl-12{-ms-flex-order:12;-webkit-box-ordinal-group:13;order:12}.offset-xl-0{margin-left:0}.offset-xl-1{margin-left:8.333333%}.offset-xl-2{margin-left:16.666667%}.offset-xl-3{margin-left:25%}.offset-xl-4{margin-left:33.333333%}.offset-xl-5{margin-left:41.666667%}.offset-xl-6{margin-left:50%}.offset-xl-7{margin-left:58.333333%}.offset-xl-8{margin-left:66.666667%}.offset-xl-9{margin-left:75%}.offset-xl-10{margin-left:83.333333%}.offset-xl-11{margin-left:91.666667%}}.table{width:100%;margin-bottom:1rem;background-color:transparent}.table td,.table th{padding:.75rem;vertical-align:top;border-top:1px solid #dee2e6}.table thead th{vertical-align:bottom;border-bottom:2px solid #dee2e6}.table tbody+tbody{border-top:2px solid #dee2e6}.table .table{background-color:#fff}.table-sm td,.table-sm th{padding:.3rem}.table-bordered{border:1px solid #dee2e6}.table-bordered td,.table-bordered th{border:1px solid #dee2e6}.table-bordered thead td,.table-bordered thead th{border-bottom-width:2px}.table-borderless tbody+tbody,.table-borderless td,.table-borderless th,.table-borderless thead th{border:0}.table-striped tbody tr:nth-of-type(odd){background-color:rgba(0,0,0,.05)}.table-hover tbody tr:hover{background-color:rgba(0,0,0,.075)}.table-primary,.table-primary>td,.table-primary>th{background-color:#b8daff}.table-hover .table-primary:hover{background-color:#9fcdff}.table-hover .table-primary:hover>td,.table-hover .table-primary:hover>th{background-color:#9fcdff}.table-secondary,.table-secondary>td,.table-secondary>th{background-color:#d6d8db}.table-hover .table-secondary:hover{background-color:#c8cbcf}.table-hover .table-secondary:hover>td,.table-hover .table-secondary:hover>th{background-color:#c8cbcf}.table-success,.table-success>td,.table-success>th{background-color:#c3e6cb}.table-hover .table-success:hover{background-color:#b1dfbb}.table-hover .table-success:hover>td,.table-hover .table-success:hover>th{background-color:#b1dfbb}.table-info,.table-info>td,.table-info>th{background-color:#bee5eb}.table-hover .table-info:hover{background-color:#abdde5}.table-hover .table-info:hover>td,.table-hover .table-info:hover>th{background-color:#abdde5}.table-warning,.table-warning>td,.table-warning>th{background-color:#ffeeba}.table-hover .table-warning:hover{background-color:#ffe8a1}.table-hover .table-warning:hover>td,.table-hover .table-warning:hover>th{background-color:#ffe8a1}.table-danger,.table-danger>td,.table-danger>th{background-color:#f5c6cb}.table-hover .table-danger:hover{background-color:#f1b0b7}.table-hover .table-danger:hover>td,.table-hover .table-danger:hover>th{background-color:#f1b0b7}.table-light,.table-light>td,.table-light>th{background-color:#fdfdfe}.table-hover .table-light:hover{background-color:#ececf6}.table-hover .table-light:hover>td,.table-hover .table-light:hover>th{background-color:#ececf6}.table-dark,.table-dark>td,.table-dark>th{background-color:#c6c8ca}.table-hover .table-dark:hover{background-color:#b9bbbe}.table-hover .table-dark:hover>td,.table-hover .table-dark:hover>th{background-color:#b9bbbe}.table-active,.table-active>td,.table-active>th{background-color:rgba(0,0,0,.075)}.table-hover .table-active:hover{background-color:rgba(0,0,0,.075)}.table-hover .table-active:hover>td,.table-hover .table-active:hover>th{background-color:rgba(0,0,0,.075)}.table .thead-dark th{color:#fff;background-color:#212529;border-color:#32383e}.table .thead-light th{color:#495057;background-color:#e9ecef;border-color:#dee2e6}.table-dark{color:#fff;background-color:#212529}.table-dark td,.table-dark th,.table-dark thead th{border-color:#32383e}.table-dark.table-bordered{border:0}.table-dark.table-striped tbody tr:nth-of-type(odd){background-color:rgba(255,255,255,.05)}.table-dark.table-hover tbody tr:hover{background-color:rgba(255,255,255,.075)}@media (max-width:575.98px){.table-responsive-sm{display:block;width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch;-ms-overflow-style:-ms-autohiding-scrollbar}.table-responsive-sm>.table-bordered{border:0}}@media (max-width:767.98px){.table-responsive-md{display:block;width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch;-ms-overflow-style:-ms-autohiding-scrollbar}.table-responsive-md>.table-bordered{border:0}}@media (max-width:991.98px){.table-responsive-lg{display:block;width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch;-ms-overflow-style:-ms-autohiding-scrollbar}.table-responsive-lg>.table-bordered{border:0}}@media (max-width:1199.98px){.table-responsive-xl{display:block;width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch;-ms-overflow-style:-ms-autohiding-scrollbar}.table-responsive-xl>.table-bordered{border:0}}.table-responsive{display:block;width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch;-ms-overflow-style:-ms-autohiding-scrollbar}.table-responsive>.table-bordered{border:0}.form-control{display:block;width:100%;height:calc(2.25rem + 2px);padding:.375rem .75rem;font-size:1rem;line-height:1.5;color:#495057;background-color:#fff;background-clip:padding-box;border:1px solid #ced4da;border-radius:.25rem;-webkit-transition:border-color .15s ease-in-out,-webkit-box-shadow .15s ease-in-out;transition:border-color .15s ease-in-out,-webkit-box-shadow .15s ease-in-out;transition:border-color .15s ease-in-out,box-shadow .15s ease-in-out;transition:border-color .15s ease-in-out,box-shadow .15s ease-in-out,-webkit-box-shadow .15s ease-in-out}@media screen and (prefers-reduced-motion:reduce){.form-control{-webkit-transition:none;transition:none}}.form-control::-ms-expand{background-color:transparent;border:0}.form-control:focus{color:#495057;background-color:#fff;border-color:#80bdff;outline:0;-webkit-box-shadow:0 0 0 .2rem rgba(0,123,255,.25);box-shadow:0 0 0 .2rem rgba(0,123,255,.25)}.form-control::-webkit-input-placeholder{color:#6c757d;opacity:1}.form-control::-moz-placeholder{color:#6c757d;opacity:1}.form-control:-ms-input-placeholder{color:#6c757d;opacity:1}.form-control::-ms-input-placeholder{color:#6c757d;opacity:1}.form-control::-webkit-input-placeholder{color:#6c757d;opacity:1}.form-control:-ms-input-placeholder{color:#6c757d;opacity:1}.form-control::placeholder{color:#6c757d;opacity:1}.form-control:disabled,.form-control[readonly]{background-color:#e9ecef;opacity:1}select.form-control:focus::-ms-value{color:#495057;background-color:#fff}.form-control-file,.form-control-range{display:block;width:100%}.col-form-label{padding-top:calc(.375rem + 1px);padding-bottom:calc(.375rem + 1px);margin-bottom:0;font-size:inherit;line-height:1.5}.col-form-label-lg{padding-top:calc(.5rem + 1px);padding-bottom:calc(.5rem + 1px);font-size:1.25rem;line-height:1.5}.col-form-label-sm{padding-top:calc(.25rem + 1px);padding-bottom:calc(.25rem + 1px);font-size:.875rem;line-height:1.5}.form-control-plaintext{display:block;width:100%;padding-top:.375rem;padding-bottom:.375rem;margin-bottom:0;line-height:1.5;color:#212529;background-color:transparent;border:solid transparent;border-width:1px 0}.form-control-plaintext.form-control-lg,.form-control-plaintext.form-control-sm{padding-right:0;padding-left:0}.form-control-sm{height:calc(1.8125rem + 2px);padding:.25rem .5rem;font-size:.875rem;line-height:1.5;border-radius:.2rem}.form-control-lg{height:calc(2.875rem + 2px);padding:.5rem 1rem;font-size:1.25rem;line-height:1.5;border-radius:.3rem}select.form-control[multiple],select.form-control[size]{height:auto}textarea.form-control{height:auto}.form-group{margin-bottom:1rem}.form-text{display:block;margin-top:.25rem}.form-row{display:-ms-flexbox;display:-webkit-box;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap;margin-right:-5px;margin-left:-5px}.form-row>.col,.form-row>[class*=col-]{padding-right:5px;padding-left:5px}.form-check{position:relative;display:block;padding-left:1.25rem}.form-check-input{position:absolute;margin-top:.3rem;margin-left:-1.25rem}.form-check-input:disabled~.form-check-label{color:#6c757d}.form-check-label{margin-bottom:0}.form-check-inline{display:-ms-inline-flexbox;display:-webkit-inline-box;display:inline-flex;-ms-flex-align:center;-webkit-box-align:center;align-items:center;padding-left:0;margin-right:.75rem}.form-check-inline .form-check-input{position:static;margin-top:0;margin-right:.3125rem;margin-left:0}.valid-feedback{display:none;width:100%;margin-top:.25rem;font-size:80%;color:#28a745}.valid-tooltip{position:absolute;top:100%;z-index:5;display:none;max-width:100%;padding:.25rem .5rem;margin-top:.1rem;font-size:.875rem;line-height:1.5;color:#fff;background-color:rgba(40,167,69,.9);border-radius:.25rem}.custom-select.is-valid,.form-control.is-valid,.was-validated .custom-select:valid,.was-validated .form-control:valid{border-color:#28a745}.custom-select.is-valid:focus,.form-control.is-valid:focus,.was-validated .custom-select:valid:focus,.was-validated .form-control:valid:focus{border-color:#28a745;-webkit-box-shadow:0 0 0 .2rem rgba(40,167,69,.25);box-shadow:0 0 0 .2rem rgba(40,167,69,.25)}.custom-select.is-valid~.valid-feedback,.custom-select.is-valid~.valid-tooltip,.form-control.is-valid~.valid-feedback,.form-control.is-valid~.valid-tooltip,.was-validated .custom-select:valid~.valid-feedback,.was-validated .custom-select:valid~.valid-tooltip,.was-validated .form-control:valid~.valid-feedback,.was-validated .form-control:valid~.valid-tooltip{display:block}.form-control-file.is-valid~.valid-feedback,.form-control-file.is-valid~.valid-tooltip,.was-validated .form-control-file:valid~.valid-feedback,.was-validated .form-control-file:valid~.valid-tooltip{display:block}.form-check-input.is-valid~.form-check-label,.was-validated .form-check-input:valid~.form-check-label{color:#28a745}.form-check-input.is-valid~.valid-feedback,.form-check-input.is-valid~.valid-tooltip,.was-validated .form-check-input:valid~.valid-feedback,.was-validated .form-check-input:valid~.valid-tooltip{display:block}.custom-control-input.is-valid~.custom-control-label,.was-validated .custom-control-input:valid~.custom-control-label{color:#28a745}.custom-control-input.is-valid~.custom-control-label::before,.was-validated .custom-control-input:valid~.custom-control-label::before{background-color:#71dd8a}.custom-control-input.is-valid~.valid-feedback,.custom-control-input.is-valid~.valid-tooltip,.was-validated .custom-control-input:valid~.valid-feedback,.was-validated .custom-control-input:valid~.valid-tooltip{display:block}.custom-control-input.is-valid:checked~.custom-control-label::before,.was-validated .custom-control-input:valid:checked~.custom-control-label::before{background-color:#34ce57}.custom-control-input.is-valid:focus~.custom-control-label::before,.was-validated .custom-control-input:valid:focus~.custom-control-label::before{-webkit-box-shadow:0 0 0 1px #fff,0 0 0 .2rem rgba(40,167,69,.25);box-shadow:0 0 0 1px #fff,0 0 0 .2rem rgba(40,167,69,.25)}.custom-file-input.is-valid~.custom-file-label,.was-validated .custom-file-input:valid~.custom-file-label{border-color:#28a745}.custom-file-input.is-valid~.custom-file-label::after,.was-validated .custom-file-input:valid~.custom-file-label::after{border-color:inherit}.custom-file-input.is-valid~.valid-feedback,.custom-file-input.is-valid~.valid-tooltip,.was-validated .custom-file-input:valid~.valid-feedback,.was-validated .custom-file-input:valid~.valid-tooltip{display:block}.custom-file-input.is-valid:focus~.custom-file-label,.was-validated .custom-file-input:valid:focus~.custom-file-label{-webkit-box-shadow:0 0 0 .2rem rgba(40,167,69,.25);box-shadow:0 0 0 .2rem rgba(40,167,69,.25)}.invalid-feedback{display:none;width:100%;margin-top:.25rem;font-size:80%;color:#dc3545}.invalid-tooltip{position:absolute;top:100%;z-index:5;display:none;max-width:100%;padding:.25rem .5rem;margin-top:.1rem;font-size:.875rem;line-height:1.5;color:#fff;background-color:rgba(220,53,69,.9);border-radius:.25rem}.custom-select.is-invalid,.form-control.is-invalid,.was-validated .custom-select:invalid,.was-validated .form-control:invalid{border-color:#dc3545}.custom-select.is-invalid:focus,.form-control.is-invalid:focus,.was-validated .custom-select:invalid:focus,.was-validated .form-control:invalid:focus{border-color:#dc3545;-webkit-box-shadow:0 0 0 .2rem rgba(220,53,69,.25);box-shadow:0 0 0 .2rem rgba(220,53,69,.25)}.custom-select.is-invalid~.invalid-feedback,.custom-select.is-invalid~.invalid-tooltip,.form-control.is-invalid~.invalid-feedback,.form-control.is-invalid~.invalid-tooltip,.was-validated .custom-select:invalid~.invalid-feedback,.was-validated .custom-select:invalid~.invalid-tooltip,.was-validated .form-control:invalid~.invalid-feedback,.was-validated .form-control:invalid~.invalid-tooltip{display:block}.form-control-file.is-invalid~.invalid-feedback,.form-control-file.is-invalid~.invalid-tooltip,.was-validated .form-control-file:invalid~.invalid-feedback,.was-validated .form-control-file:invalid~.invalid-tooltip{display:block}.form-check-input.is-invalid~.form-check-label,.was-validated .form-check-input:invalid~.form-check-label{color:#dc3545}.form-check-input.is-invalid~.invalid-feedback,.form-check-input.is-invalid~.invalid-tooltip,.was-validated .form-check-input:invalid~.invalid-feedback,.was-validated .form-check-input:invalid~.invalid-tooltip{display:block}.custom-control-input.is-invalid~.custom-control-label,.was-validated .custom-control-input:invalid~.custom-control-label{color:#dc3545}.custom-control-input.is-invalid~.custom-control-label::before,.was-validated .custom-control-input:invalid~.custom-control-label::before{background-color:#efa2a9}.custom-control-input.is-invalid~.invalid-feedback,.custom-control-input.is-invalid~.invalid-tooltip,.was-validated .custom-control-input:invalid~.invalid-feedback,.was-validated .custom-control-input:invalid~.invalid-tooltip{display:block}.custom-control-input.is-invalid:checked~.custom-control-label::before,.was-validated .custom-control-input:invalid:checked~.custom-control-label::before{background-color:#e4606d}.custom-control-input.is-invalid:focus~.custom-control-label::before,.was-validated .custom-control-input:invalid:focus~.custom-control-label::before{-webkit-box-shadow:0 0 0 1px #fff,0 0 0 .2rem rgba(220,53,69,.25);box-shadow:0 0 0 1px #fff,0 0 0 .2rem rgba(220,53,69,.25)}.custom-file-input.is-invalid~.custom-file-label,.was-validated .custom-file-input:invalid~.custom-file-label{border-color:#dc3545}.custom-file-input.is-invalid~.custom-file-label::after,.was-validated .custom-file-input:invalid~.custom-file-label::after{border-color:inherit}.custom-file-input.is-invalid~.invalid-feedback,.custom-file-input.is-invalid~.invalid-tooltip,.was-validated .custom-file-input:invalid~.invalid-feedback,.was-validated .custom-file-input:invalid~.invalid-tooltip{display:block}.custom-file-input.is-invalid:focus~.custom-file-label,.was-validated .custom-file-input:invalid:focus~.custom-file-label{-webkit-box-shadow:0 0 0 .2rem rgba(220,53,69,.25);box-shadow:0 0 0 .2rem rgba(220,53,69,.25)}.form-inline{display:-ms-flexbox;display:-webkit-box;display:flex;-ms-flex-flow:row wrap;-webkit-box-orient:horizontal;-webkit-box-direction:normal;flex-flow:row wrap;-ms-flex-align:center;-webkit-box-align:center;align-items:center}.form-inline .form-check{width:100%}@media (min-width:576px){.form-inline label{display:-ms-flexbox;display:-webkit-box;display:flex;-ms-flex-align:center;-webkit-box-align:center;align-items:center;-ms-flex-pack:center;-webkit-box-pack:center;justify-content:center;margin-bottom:0}.form-inline .form-group{display:-ms-flexbox;display:-webkit-box;display:flex;-ms-flex:0 0 auto;-webkit-box-flex:0;flex:0 0 auto;-ms-flex-flow:row wrap;-webkit-box-orient:horizontal;-webkit-box-direction:normal;flex-flow:row wrap;-ms-flex-align:center;-webkit-box-align:center;align-items:center;margin-bottom:0}.form-inline .form-control{display:inline-block;width:auto;vertical-align:middle}.form-inline .form-control-plaintext{display:inline-block}.form-inline .custom-select,.form-inline .input-group{width:auto}.form-inline .form-check{display:-ms-flexbox;display:-webkit-box;display:flex;-ms-flex-align:center;-webkit-box-align:center;align-items:center;-ms-flex-pack:center;-webkit-box-pack:center;justify-content:center;width:auto;padding-left:0}.form-inline .form-check-input{position:relative;margin-top:0;margin-right:.25rem;margin-left:0}.form-inline .custom-control{-ms-flex-align:center;-webkit-box-align:center;align-items:center;-ms-flex-pack:center;-webkit-box-pack:center;justify-content:center}.form-inline .custom-control-label{margin-bottom:0}}.btn{display:inline-block;font-weight:400;text-align:center;white-space:nowrap;vertical-align:middle;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;border:1px solid transparent;padding:.375rem .75rem;font-size:1rem;line-height:1.5;border-radius:.25rem;-webkit-transition:color .15s ease-in-out,background-color .15s ease-in-out,border-color .15s ease-in-out,-webkit-box-shadow .15s ease-in-out;transition:color .15s ease-in-out,background-color .15s ease-in-out,border-color .15s ease-in-out,-webkit-box-shadow .15s ease-in-out;transition:color .15s ease-in-out,background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out;transition:color .15s ease-in-out,background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out,-webkit-box-shadow .15s ease-in-out}@media screen and (prefers-reduced-motion:reduce){.btn{-webkit-transition:none;transition:none}}.btn:focus,.btn:hover{text-decoration:none}.btn.focus,.btn:focus{outline:0;-webkit-box-shadow:0 0 0 .2rem rgba(0,123,255,0);box-shadow:0 0 0 .2rem rgba(0,123,255,0)}.btn.disabled,.btn:disabled{opacity:.65}.btn:not(:disabled):not(.disabled){cursor:pointer}a.btn.disabled,fieldset:disabled a.btn{pointer-events:none}.btn-primary{color:#fff;background-color:#ff5e14;border-color:#ff5e14}.btn-primary:hover{color:#fff;background-color:#0069d9;border-color:#0062cc}.btn-primary.focus,.btn-primary:focus{-webkit-box-shadow:0 0 0 .2rem rgba(0,123,255,.5);box-shadow:0 0 0 .2rem rgba(0,123,255,.5)}.btn-primary.disabled,.btn-primary:disabled{color:#fff;background-color:#ff5e14;border-color:#ff5e14}.btn-primary:not(:disabled):not(.disabled).active,.btn-primary:not(:disabled):not(.disabled):active,.show>.btn-primary.dropdown-toggle{color:#fff;background-color:#0062cc;border-color:#005cbf}.btn-primary:not(:disabled):not(.disabled).active:focus,.btn-primary:not(:disabled):not(.disabled):active:focus,.show>.btn-primary.dropdown-toggle:focus{-webkit-box-shadow:0 0 0 .2rem rgba(0,123,255,.5);box-shadow:0 0 0 .2rem rgba(0,123,255,.5)}.btn-secondary{color:#fff;background-color:#6c757d;border-color:#6c757d}.btn-secondary:hover{color:#fff;background-color:#5a6268;border-color:#545b62}.btn-secondary.focus,.btn-secondary:focus{-webkit-box-shadow:0 0 0 .2rem rgba(108,117,125,.5);box-shadow:0 0 0 .2rem rgba(108,117,125,.5)}.btn-secondary.disabled,.btn-secondary:disabled{color:#fff;background-color:#6c757d;border-color:#6c757d}.btn-secondary:not(:disabled):not(.disabled).active,.btn-secondary:not(:disabled):not(.disabled):active,.show>.btn-secondary.dropdown-toggle{color:#fff;background-color:#545b62;border-color:#4e555b}.btn-secondary:not(:disabled):not(.disabled).active:focus,.btn-secondary:not(:disabled):not(.disabled):active:focus,.show>.btn-secondary.dropdown-toggle:focus{-webkit-box-shadow:0 0 0 .2rem rgba(108,117,125,.5);box-shadow:0 0 0 .2rem rgba(108,117,125,.5)}.btn-success{color:#fff;background-color:#28a745;border-color:#28a745}.btn-success:hover{color:#fff;background-color:#218838;border-color:#1e7e34}.btn-success.focus,.btn-success:focus{-webkit-box-shadow:0 0 0 .2rem rgba(40,167,69,.5);box-shadow:0 0 0 .2rem rgba(40,167,69,.5)}.btn-success.disabled,.btn-success:disabled{color:#fff;background-color:#28a745;border-color:#28a745}.btn-success:not(:disabled):not(.disabled).active,.btn-success:not(:disabled):not(.disabled):active,.show>.btn-success.dropdown-toggle{color:#fff;background-color:#1e7e34;border-color:#1c7430}.btn-success:not(:disabled):not(.disabled).active:focus,.btn-success:not(:disabled):not(.disabled):active:focus,.show>.btn-success.dropdown-toggle:focus{-webkit-box-shadow:0 0 0 .2rem rgba(40,167,69,.5);box-shadow:0 0 0 .2rem rgba(40,167,69,.5)}.btn-info{color:#fff;background-color:#17a2b8;border-color:#17a2b8}.btn-info:hover{color:#fff;background-color:#138496;border-color:#117a8b}.btn-info.focus,.btn-info:focus{-webkit-box-shadow:0 0 0 .2rem rgba(23,162,184,.5);box-shadow:0 0 0 .2rem rgba(23,162,184,.5)}.btn-info.disabled,.btn-info:disabled{color:#fff;background-color:#17a2b8;border-color:#17a2b8}.btn-info:not(:disabled):not(.disabled).active,.btn-info:not(:disabled):not(.disabled):active,.show>.btn-info.dropdown-toggle{color:#fff;background-color:#117a8b;border-color:#10707f}.btn-info:not(:disabled):not(.disabled).active:focus,.btn-info:not(:disabled):not(.disabled):active:focus,.show>.btn-info.dropdown-toggle:focus{-webkit-box-shadow:0 0 0 .2rem rgba(23,162,184,.5);box-shadow:0 0 0 .2rem rgba(23,162,184,.5)}.btn-warning{color:#212529;background-color:#ffc107;border-color:#ffc107}.btn-warning:hover{color:#212529;background-color:#e0a800;border-color:#d39e00}.btn-warning.focus,.btn-warning:focus{-webkit-box-shadow:0 0 0 .2rem rgba(255,193,7,.5);box-shadow:0 0 0 .2rem rgba(255,193,7,.5)}.btn-warning.disabled,.btn-warning:disabled{color:#212529;background-color:#ffc107;border-color:#ffc107}.btn-warning:not(:disabled):not(.disabled).active,.btn-warning:not(:disabled):not(.disabled):active,.show>.btn-warning.dropdown-toggle{color:#212529;background-color:#d39e00;border-color:#c69500}.btn-warning:not(:disabled):not(.disabled).active:focus,.btn-warning:not(:disabled):not(.disabled):active:focus,.show>.btn-warning.dropdown-toggle:focus{-webkit-box-shadow:0 0 0 .2rem rgba(255,193,7,.5);box-shadow:0 0 0 .2rem rgba(255,193,7,.5)}.btn-danger{color:#fff;background-color:#dc3545;border-color:#dc3545}.btn-danger:hover{color:#fff;background-color:#c82333;border-color:#bd2130}.btn-danger.focus,.btn-danger:focus{-webkit-box-shadow:0 0 0 .2rem rgba(220,53,69,.5);box-shadow:0 0 0 .2rem rgba(220,53,69,.5)}.btn-danger.disabled,.btn-danger:disabled{color:#fff;background-color:#dc3545;border-color:#dc3545}.btn-danger:not(:disabled):not(.disabled).active,.btn-danger:not(:disabled):not(.disabled):active,.show>.btn-danger.dropdown-toggle{color:#fff;background-color:#bd2130;border-color:#b21f2d}.btn-danger:not(:disabled):not(.disabled).active:focus,.btn-danger:not(:disabled):not(.disabled):active:focus,.show>.btn-danger.dropdown-toggle:focus{-webkit-box-shadow:0 0 0 .2rem rgba(220,53,69,.5);box-shadow:0 0 0 .2rem rgba(220,53,69,.5)}.btn-light{color:#212529;background-color:#f8f9fa;border-color:#f8f9fa}.btn-light:hover{color:#212529;background-color:#e2e6ea;border-color:#dae0e5}.btn-light.focus,.btn-light:focus{-webkit-box-shadow:0 0 0 .2rem rgba(248,249,250,.5);box-shadow:0 0 0 .2rem rgba(248,249,250,.5)}.btn-light.disabled,.btn-light:disabled{color:#212529;background-color:#f8f9fa;border-color:#f8f9fa}.btn-light:not(:disabled):not(.disabled).active,.btn-light:not(:disabled):not(.disabled):active,.show>.btn-light.dropdown-toggle{color:#212529;background-color:#dae0e5;border-color:#d3d9df}.btn-light:not(:disabled):not(.disabled).active:focus,.btn-light:not(:disabled):not(.disabled):active:focus,.show>.btn-light.dropdown-toggle:focus{-webkit-box-shadow:0 0 0 .2rem rgba(248,249,250,.5);box-shadow:0 0 0 .2rem rgba(248,249,250,.5)}.btn-dark{color:#fff;background-color:#343a40;border-color:#343a40}.btn-dark:hover{color:#fff;background-color:#23272b;border-color:#1d2124}.btn-dark.focus,.btn-dark:focus{-webkit-box-shadow:0 0 0 .2rem rgba(52,58,64,.5);box-shadow:0 0 0 .2rem rgba(52,58,64,.5)}.btn-dark.disabled,.btn-dark:disabled{color:#fff;background-color:#343a40;border-color:#343a40}.btn-dark:not(:disabled):not(.disabled).active,.btn-dark:not(:disabled):not(.disabled):active,.show>.btn-dark.dropdown-toggle{color:#fff;background-color:#1d2124;border-color:#171a1d}.btn-dark:not(:disabled):not(.disabled).active:focus,.btn-dark:not(:disabled):not(.disabled):active:focus,.show>.btn-dark.dropdown-toggle:focus{-webkit-box-shadow:0 0 0 .2rem rgba(52,58,64,.5);box-shadow:0 0 0 .2rem rgba(52,58,64,.5)}.btn-outline-primary{color:#ff5e14;background-color:transparent;background-image:none;border-color:#ff5e14}.btn-outline-primary:hover{color:#fff;background-color:#ff5e14;border-color:#ff5e14}.btn-outline-primary.focus,.btn-outline-primary:focus{-webkit-box-shadow:0 0 0 .2rem rgba(0,123,255,.5);box-shadow:0 0 0 .2rem rgba(0,123,255,.5)}.btn-outline-primary.disabled,.btn-outline-primary:disabled{color:#ff5e14;background-color:transparent}.btn-outline-primary:not(:disabled):not(.disabled).active,.btn-outline-primary:not(:disabled):not(.disabled):active,.show>.btn-outline-primary.dropdown-toggle{color:#fff;background-color:#ff5e14;border-color:#ff5e14}.btn-outline-primary:not(:disabled):not(.disabled).active:focus,.btn-outline-primary:not(:disabled):not(.disabled):active:focus,.show>.btn-outline-primary.dropdown-toggle:focus{-webkit-box-shadow:0 0 0 .2rem rgba(0,123,255,.5);box-shadow:0 0 0 .2rem rgba(0,123,255,.5)}.btn-outline-secondary{color:#6c757d;background-color:transparent;background-image:none;border-color:#6c757d}.btn-outline-secondary:hover{color:#fff;background-color:#6c757d;border-color:#6c757d}.btn-outline-secondary.focus,.btn-outline-secondary:focus{-webkit-box-shadow:0 0 0 .2rem rgba(108,117,125,.5);box-shadow:0 0 0 .2rem rgba(108,117,125,.5)}.btn-outline-secondary.disabled,.btn-outline-secondary:disabled{color:#6c757d;background-color:transparent}.btn-outline-secondary:not(:disabled):not(.disabled).active,.btn-outline-secondary:not(:disabled):not(.disabled):active,.show>.btn-outline-secondary.dropdown-toggle{color:#fff;background-color:#6c757d;border-color:#6c757d}.btn-outline-secondary:not(:disabled):not(.disabled).active:focus,.btn-outline-secondary:not(:disabled):not(.disabled):active:focus,.show>.btn-outline-secondary.dropdown-toggle:focus{-webkit-box-shadow:0 0 0 .2rem rgba(108,117,125,.5);box-shadow:0 0 0 .2rem rgba(108,117,125,.5)}.btn-outline-success{color:#28a745;background-color:transparent;background-image:none;border-color:#28a745}.btn-outline-success:hover{color:#fff;background-color:#28a745;border-color:#28a745}.btn-outline-success.focus,.btn-outline-success:focus{-webkit-box-shadow:0 0 0 .2rem rgba(40,167,69,.5);box-shadow:0 0 0 .2rem rgba(40,167,69,.5)}.btn-outline-success.disabled,.btn-outline-success:disabled{color:#28a745;background-color:transparent}.btn-outline-success:not(:disabled):not(.disabled).active,.btn-outline-success:not(:disabled):not(.disabled):active,.show>.btn-outline-success.dropdown-toggle{color:#fff;background-color:#28a745;border-color:#28a745}.btn-outline-success:not(:disabled):not(.disabled).active:focus,.btn-outline-success:not(:disabled):not(.disabled):active:focus,.show>.btn-outline-success.dropdown-toggle:focus{-webkit-box-shadow:0 0 0 .2rem rgba(40,167,69,.5);box-shadow:0 0 0 .2rem rgba(40,167,69,.5)}.btn-outline-info{color:#17a2b8;background-color:transparent;background-image:none;border-color:#17a2b8}.btn-outline-info:hover{color:#fff;background-color:#17a2b8;border-color:#17a2b8}.btn-outline-info.focus,.btn-outline-info:focus{-webkit-box-shadow:0 0 0 .2rem rgba(23,162,184,.5);box-shadow:0 0 0 .2rem rgba(23,162,184,.5)}.btn-outline-info.disabled,.btn-outline-info:disabled{color:#17a2b8;background-color:transparent}.btn-outline-info:not(:disabled):not(.disabled).active,.btn-outline-info:not(:disabled):not(.disabled):active,.show>.btn-outline-info.dropdown-toggle{color:#fff;background-color:#17a2b8;border-color:#17a2b8}.btn-outline-info:not(:disabled):not(.disabled).active:focus,.btn-outline-info:not(:disabled):not(.disabled):active:focus,.show>.btn-outline-info.dropdown-toggle:focus{-webkit-box-shadow:0 0 0 .2rem rgba(23,162,184,.5);box-shadow:0 0 0 .2rem rgba(23,162,184,.5)}.btn-outline-warning{color:#ffc107;background-color:transparent;background-image:none;border-color:#ffc107}.btn-outline-warning:hover{color:#212529;background-color:#ffc107;border-color:#ffc107}.btn-outline-warning.focus,.btn-outline-warning:focus{-webkit-box-shadow:0 0 0 .2rem rgba(255,193,7,.5);box-shadow:0 0 0 .2rem rgba(255,193,7,.5)}.btn-outline-warning.disabled,.btn-outline-warning:disabled{color:#ffc107;background-color:transparent}.btn-outline-warning:not(:disabled):not(.disabled).active,.btn-outline-warning:not(:disabled):not(.disabled):active,.show>.btn-outline-warning.dropdown-toggle{color:#212529;background-color:#ffc107;border-color:#ffc107}.btn-outline-warning:not(:disabled):not(.disabled).active:focus,.btn-outline-warning:not(:disabled):not(.disabled):active:focus,.show>.btn-outline-warning.dropdown-toggle:focus{-webkit-box-shadow:0 0 0 .2rem rgba(255,193,7,.5);box-shadow:0 0 0 .2rem rgba(255,193,7,.5)}.btn-outline-danger{color:#dc3545;background-color:transparent;background-image:none;border-color:#dc3545}.btn-outline-danger:hover{color:#fff;background-color:#dc3545;border-color:#dc3545}.btn-outline-danger.focus,.btn-outline-danger:focus{-webkit-box-shadow:0 0 0 .2rem rgba(220,53,69,.5);box-shadow:0 0 0 .2rem rgba(220,53,69,.5)}.btn-outline-danger.disabled,.btn-outline-danger:disabled{color:#dc3545;background-color:transparent}.btn-outline-danger:not(:disabled):not(.disabled).active,.btn-outline-danger:not(:disabled):not(.disabled):active,.show>.btn-outline-danger.dropdown-toggle{color:#fff;background-color:#dc3545;border-color:#dc3545}.btn-outline-danger:not(:disabled):not(.disabled).active:focus,.btn-outline-danger:not(:disabled):not(.disabled):active:focus,.show>.btn-outline-danger.dropdown-toggle:focus{-webkit-box-shadow:0 0 0 .2rem rgba(220,53,69,.5);box-shadow:0 0 0 .2rem rgba(220,53,69,.5)}.btn-outline-light{color:#f8f9fa;background-color:transparent;background-image:none;border-color:#f8f9fa}.btn-outline-light:hover{color:#212529;background-color:#f8f9fa;border-color:#f8f9fa}.btn-outline-light.focus,.btn-outline-light:focus{-webkit-box-shadow:0 0 0 .2rem rgba(248,249,250,.5);box-shadow:0 0 0 .2rem rgba(248,249,250,.5)}.btn-outline-light.disabled,.btn-outline-light:disabled{color:#f8f9fa;background-color:transparent}.btn-outline-light:not(:disabled):not(.disabled).active,.btn-outline-light:not(:disabled):not(.disabled):active,.show>.btn-outline-light.dropdown-toggle{color:#212529;background-color:#f8f9fa;border-color:#f8f9fa}.btn-outline-light:not(:disabled):not(.disabled).active:focus,.btn-outline-light:not(:disabled):not(.disabled):active:focus,.show>.btn-outline-light.dropdown-toggle:focus{-webkit-box-shadow:0 0 0 .2rem rgba(248,249,250,.5);box-shadow:0 0 0 .2rem rgba(248,249,250,.5)}.btn-outline-dark{color:#343a40;background-color:transparent;background-image:none;border-color:#343a40}.btn-outline-dark:hover{color:#fff;background-color:#343a40;border-color:#343a40}.btn-outline-dark.focus,.btn-outline-dark:focus{-webkit-box-shadow:0 0 0 .2rem rgba(52,58,64,.5);box-shadow:0 0 0 .2rem rgba(52,58,64,.5)}.btn-outline-dark.disabled,.btn-outline-dark:disabled{color:#343a40;background-color:transparent}.btn-outline-dark:not(:disabled):not(.disabled).active,.btn-outline-dark:not(:disabled):not(.disabled):active,.show>.btn-outline-dark.dropdown-toggle{color:#fff;background-color:#343a40;border-color:#343a40}.btn-outline-dark:not(:disabled):not(.disabled).active:focus,.btn-outline-dark:not(:disabled):not(.disabled):active:focus,.show>.btn-outline-dark.dropdown-toggle:focus{-webkit-box-shadow:0 0 0 .2rem rgba(52,58,64,.5);box-shadow:0 0 0 .2rem rgba(52,58,64,.5)}.btn-link{font-weight:400;color:#ff5e14;background-color:transparent}.btn-link:hover{color:#0056b3;text-decoration:underline;background-color:transparent;border-color:transparent}.btn-link.focus,.btn-link:focus{text-decoration:underline;border-color:transparent;-webkit-box-shadow:none;box-shadow:none}.btn-link.disabled,.btn-link:disabled{color:#6c757d;pointer-events:none}.btn-group-lg>.btn,.btn-lg{padding:.5rem 1rem;font-size:1.25rem;line-height:1.5;border-radius:.3rem}.btn-group-sm>.btn,.btn-sm{padding:.25rem .5rem;font-size:.875rem;line-height:1.5;border-radius:.2rem}.btn-block{display:block;width:100%}.btn-block+.btn-block{margin-top:.5rem}input[type=button].btn-block,input[type=reset].btn-block,input[type=submit].btn-block{width:100%}.fade{-webkit-transition:opacity .15s linear;transition:opacity .15s linear}@media screen and (prefers-reduced-motion:reduce){.fade{-webkit-transition:none;transition:none}}.fade:not(.show){opacity:0}.collapse:not(.show){display:none}.collapsing{position:relative;height:0;overflow:hidden;-webkit-transition:height .35s ease;transition:height .35s ease}@media screen and (prefers-reduced-motion:reduce){.collapsing{-webkit-transition:none;transition:none}}.dropdown,.dropleft,.dropright,.dropup{position:relative}.dropdown-toggle::after{display:inline-block;width:0;height:0;margin-left:.255em;vertical-align:.255em;content:"";border-top:.3em solid;border-right:.3em solid transparent;border-bottom:0;border-left:.3em solid transparent}.dropdown-toggle:empty::after{margin-left:0}.dropdown-menu{position:absolute;top:100%;left:0;z-index:1000;display:none;float:left;min-width:10rem;padding:.5rem 0;margin:.125rem 0 0;font-size:1rem;color:#212529;text-align:left;list-style:none;background-color:#fff;background-clip:padding-box;border:1px solid rgba(0,0,0,.15);border-radius:.25rem}.dropdown-menu-right{right:0;left:auto}.dropup .dropdown-menu{top:auto;bottom:100%;margin-top:0;margin-bottom:.125rem}.dropup .dropdown-toggle::after{display:inline-block;width:0;height:0;margin-left:.255em;vertical-align:.255em;content:"";border-top:0;border-right:.3em solid transparent;border-bottom:.3em solid;border-left:.3em solid transparent}.dropup .dropdown-toggle:empty::after{margin-left:0}.dropright .dropdown-menu{top:0;right:auto;left:100%;margin-top:0;margin-left:.125rem}.dropright .dropdown-toggle::after{display:inline-block;width:0;height:0;margin-left:.255em;vertical-align:.255em;content:"";border-top:.3em solid transparent;border-right:0;border-bottom:.3em solid transparent;border-left:.3em solid}.dropright .dropdown-toggle:empty::after{margin-left:0}.dropright .dropdown-toggle::after{vertical-align:0}.dropleft .dropdown-menu{top:0;right:100%;left:auto;margin-top:0;margin-right:.125rem}.dropleft .dropdown-toggle::after{display:inline-block;width:0;height:0;margin-left:.255em;vertical-align:.255em;content:""}.dropleft .dropdown-toggle::after{display:none}.dropleft .dropdown-toggle::before{display:inline-block;width:0;height:0;margin-right:.255em;vertical-align:.255em;content:"";border-top:.3em solid transparent;border-right:.3em solid;border-bottom:.3em solid transparent}.dropleft .dropdown-toggle:empty::after{margin-left:0}.dropleft .dropdown-toggle::before{vertical-align:0}.dropdown-menu[x-placement^=bottom],.dropdown-menu[x-placement^=left],.dropdown-menu[x-placement^=right],.dropdown-menu[x-placement^=top]{right:auto;bottom:auto}.dropdown-divider{height:0;margin:.5rem 0;overflow:hidden;border-top:1px solid #e9ecef}.dropdown-item{display:block;width:100%;padding:.25rem 1.5rem;clear:both;font-weight:400;color:#212529;text-align:inherit;white-space:nowrap;background-color:transparent;border:0}.dropdown-item:focus,.dropdown-item:hover{color:#16181b;text-decoration:none;background-color:#f8f9fa}.dropdown-item.active,.dropdown-item:active{color:#fff;text-decoration:none;background-color:#ff5e14}.dropdown-item.disabled,.dropdown-item:disabled{color:#6c757d;background-color:transparent}.dropdown-menu.show{display:block}.dropdown-header{display:block;padding:.5rem 1.5rem;margin-bottom:0;font-size:.875rem;color:#6c757d;white-space:nowrap}.dropdown-item-text{display:block;padding:.25rem 1.5rem;color:#212529}.btn-group,.btn-group-vertical{position:relative;display:-ms-inline-flexbox;display:-webkit-inline-box;display:inline-flex;vertical-align:middle}.btn-group-vertical>.btn,.btn-group>.btn{position:relative;-ms-flex:0 1 auto;-webkit-box-flex:0;flex:0 1 auto}.btn-group-vertical>.btn:hover,.btn-group>.btn:hover{z-index:1}.btn-group-vertical>.btn.active,.btn-group-vertical>.btn:active,.btn-group-vertical>.btn:focus,.btn-group>.btn.active,.btn-group>.btn:active,.btn-group>.btn:focus{z-index:1}.btn-group .btn+.btn,.btn-group .btn+.btn-group,.btn-group .btn-group+.btn,.btn-group .btn-group+.btn-group,.btn-group-vertical .btn+.btn,.btn-group-vertical .btn+.btn-group,.btn-group-vertical .btn-group+.btn,.btn-group-vertical .btn-group+.btn-group{margin-left:-1px}.btn-toolbar{display:-ms-flexbox;display:-webkit-box;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap;-ms-flex-pack:start;-webkit-box-pack:start;justify-content:flex-start}.btn-toolbar .input-group{width:auto}.btn-group>.btn:first-child{margin-left:0}.btn-group>.btn-group:not(:last-child)>.btn,.btn-group>.btn:not(:last-child):not(.dropdown-toggle){border-top-right-radius:0;border-bottom-right-radius:0}.btn-group>.btn-group:not(:first-child)>.btn,.btn-group>.btn:not(:first-child){border-top-left-radius:0;border-bottom-left-radius:0}.dropdown-toggle-split{padding-right:.5625rem;padding-left:.5625rem}.dropdown-toggle-split::after,.dropright .dropdown-toggle-split::after,.dropup .dropdown-toggle-split::after{margin-left:0}.dropleft .dropdown-toggle-split::before{margin-right:0}.btn-group-sm>.btn+.dropdown-toggle-split,.btn-sm+.dropdown-toggle-split{padding-right:.375rem;padding-left:.375rem}.btn-group-lg>.btn+.dropdown-toggle-split,.btn-lg+.dropdown-toggle-split{padding-right:.75rem;padding-left:.75rem}.btn-group-vertical{-ms-flex-direction:column;-webkit-box-orient:vertical;-webkit-box-direction:normal;flex-direction:column;-ms-flex-align:start;-webkit-box-align:start;align-items:flex-start;-ms-flex-pack:center;-webkit-box-pack:center;justify-content:center}.btn-group-vertical .btn,.btn-group-vertical .btn-group{width:100%}.btn-group-vertical>.btn+.btn,.btn-group-vertical>.btn+.btn-group,.btn-group-vertical>.btn-group+.btn,.btn-group-vertical>.btn-group+.btn-group{margin-top:-1px;margin-left:0}.btn-group-vertical>.btn-group:not(:last-child)>.btn,.btn-group-vertical>.btn:not(:last-child):not(.dropdown-toggle){border-bottom-right-radius:0;border-bottom-left-radius:0}.btn-group-vertical>.btn-group:not(:first-child)>.btn,.btn-group-vertical>.btn:not(:first-child){border-top-left-radius:0;border-top-right-radius:0}.btn-group-toggle>.btn,.btn-group-toggle>.btn-group>.btn{margin-bottom:0}.btn-group-toggle>.btn input[type=checkbox],.btn-group-toggle>.btn input[type=radio],.btn-group-toggle>.btn-group>.btn input[type=checkbox],.btn-group-toggle>.btn-group>.btn input[type=radio]{position:absolute;clip:rect(0,0,0,0);pointer-events:none}.input-group{position:relative;display:-ms-flexbox;display:-webkit-box;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap;-ms-flex-align:stretch;-webkit-box-align:stretch;align-items:stretch;width:100%}.input-group>.custom-file,.input-group>.custom-select,.input-group>.form-control{position:relative;-ms-flex:1 1 auto;-webkit-box-flex:1;flex:1 1 auto;width:1%;margin-bottom:0}.input-group>.custom-file+.custom-file,.input-group>.custom-file+.custom-select,.input-group>.custom-file+.form-control,.input-group>.custom-select+.custom-file,.input-group>.custom-select+.custom-select,.input-group>.custom-select+.form-control,.input-group>.form-control+.custom-file,.input-group>.form-control+.custom-select,.input-group>.form-control+.form-control{margin-left:-1px}.input-group>.custom-file .custom-file-input:focus~.custom-file-label,.input-group>.custom-select:focus,.input-group>.form-control:focus{z-index:3}.input-group>.custom-file .custom-file-input:focus{z-index:4}.input-group>.custom-select:not(:last-child),.input-group>.form-control:not(:last-child){border-top-right-radius:0;border-bottom-right-radius:0}.input-group>.custom-select:not(:first-child),.input-group>.form-control:not(:first-child){border-top-left-radius:0;border-bottom-left-radius:0}.input-group>.custom-file{display:-ms-flexbox;display:-webkit-box;display:flex;-ms-flex-align:center;-webkit-box-align:center;align-items:center}.input-group>.custom-file:not(:last-child) .custom-file-label,.input-group>.custom-file:not(:last-child) .custom-file-label::after{border-top-right-radius:0;border-bottom-right-radius:0}.input-group>.custom-file:not(:first-child) .custom-file-label{border-top-left-radius:0;border-bottom-left-radius:0}.input-group-append,.input-group-prepend{display:-ms-flexbox;display:-webkit-box;display:flex}.input-group-append .btn,.input-group-prepend .btn{position:relative;z-index:2}.input-group-append .btn+.btn,.input-group-append .btn+.input-group-text,.input-group-append .input-group-text+.btn,.input-group-append .input-group-text+.input-group-text,.input-group-prepend .btn+.btn,.input-group-prepend .btn+.input-group-text,.input-group-prepend .input-group-text+.btn,.input-group-prepend .input-group-text+.input-group-text{margin-left:-1px}.input-group-prepend{margin-right:-1px}.input-group-append{margin-left:-1px}.input-group-text{display:-ms-flexbox;display:-webkit-box;display:flex;-ms-flex-align:center;-webkit-box-align:center;align-items:center;padding:.375rem .75rem;margin-bottom:0;font-size:1rem;font-weight:400;line-height:1.5;color:#495057;text-align:center;white-space:nowrap;background-color:#e9ecef;border:1px solid #ced4da;border-radius:.25rem}.input-group-text input[type=checkbox],.input-group-text input[type=radio]{margin-top:0}.input-group-lg>.form-control,.input-group-lg>.input-group-append>.btn,.input-group-lg>.input-group-append>.input-group-text,.input-group-lg>.input-group-prepend>.btn,.input-group-lg>.input-group-prepend>.input-group-text{height:calc(2.875rem + 2px);padding:.5rem 1rem;font-size:1.25rem;line-height:1.5;border-radius:.3rem}.input-group-sm>.form-control,.input-group-sm>.input-group-append>.btn,.input-group-sm>.input-group-append>.input-group-text,.input-group-sm>.input-group-prepend>.btn,.input-group-sm>.input-group-prepend>.input-group-text{height:calc(1.8125rem + 2px);padding:.25rem .5rem;font-size:.875rem;line-height:1.5;border-radius:.2rem}.input-group>.input-group-append:last-child>.btn:not(:last-child):not(.dropdown-toggle),.input-group>.input-group-append:last-child>.input-group-text:not(:last-child),.input-group>.input-group-append:not(:last-child)>.btn,.input-group>.input-group-append:not(:last-child)>.input-group-text,.input-group>.input-group-prepend>.btn,.input-group>.input-group-prepend>.input-group-text{border-top-right-radius:0;border-bottom-right-radius:0}.input-group>.input-group-append>.btn,.input-group>.input-group-append>.input-group-text,.input-group>.input-group-prepend:first-child>.btn:not(:first-child),.input-group>.input-group-prepend:first-child>.input-group-text:not(:first-child),.input-group>.input-group-prepend:not(:first-child)>.btn,.input-group>.input-group-prepend:not(:first-child)>.input-group-text{border-top-left-radius:0;border-bottom-left-radius:0}.custom-control{position:relative;display:block;min-height:1.5rem;padding-left:1.5rem}.custom-control-inline{display:-ms-inline-flexbox;display:-webkit-inline-box;display:inline-flex;margin-right:1rem}.custom-control-input{position:absolute;z-index:-1;opacity:0}.custom-control-input:checked~.custom-control-label::before{color:#fff;background-color:#ff5e14}.custom-control-input:focus~.custom-control-label::before{-webkit-box-shadow:0 0 0 1px #fff,0 0 0 .2rem rgba(0,123,255,.25);box-shadow:0 0 0 1px #fff,0 0 0 .2rem rgba(0,123,255,.25)}.custom-control-input:active~.custom-control-label::before{color:#fff;background-color:#b3d7ff}.custom-control-input:disabled~.custom-control-label{color:#6c757d}.custom-control-input:disabled~.custom-control-label::before{background-color:#e9ecef}.custom-control-label{position:relative;margin-bottom:0}.custom-control-label::before{position:absolute;top:.25rem;left:-1.5rem;display:block;width:1rem;height:1rem;pointer-events:none;content:"";-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;background-color:#dee2e6}.custom-control-label::after{position:absolute;top:.25rem;left:-1.5rem;display:block;width:1rem;height:1rem;content:"";background-repeat:no-repeat;background-position:center center;background-size:50% 50%}.custom-checkbox .custom-control-label::before{border-radius:.25rem}.custom-checkbox .custom-control-input:checked~.custom-control-label::before{background-color:#ff5e14}.custom-checkbox .custom-control-input:checked~.custom-control-label::after{background-image:url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 8 8'%3E%3Cpath fill='%23fff' d='M6.564.75l-3.59 3.612-1.538-1.55L0 4.26 2.974 7.25 8 2.193z'/%3E%3C/svg%3E")}.custom-checkbox .custom-control-input:indeterminate~.custom-control-label::before{background-color:#ff5e14}.custom-checkbox .custom-control-input:indeterminate~.custom-control-label::after{background-image:url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 4 4'%3E%3Cpath stroke='%23fff' d='M0 2h4'/%3E%3C/svg%3E")}.custom-checkbox .custom-control-input:disabled:checked~.custom-control-label::before{background-color:rgba(0,123,255,.5)}.custom-checkbox .custom-control-input:disabled:indeterminate~.custom-control-label::before{background-color:rgba(0,123,255,.5)}.custom-radio .custom-control-label::before{border-radius:50%}.custom-radio .custom-control-input:checked~.custom-control-label::before{background-color:#ff5e14}.custom-radio .custom-control-input:checked~.custom-control-label::after{background-image:url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3E%3Ccircle r='3' fill='%23fff'/%3E%3C/svg%3E")}.custom-radio .custom-control-input:disabled:checked~.custom-control-label::before{background-color:rgba(0,123,255,.5)}.custom-select{display:inline-block;width:100%;height:calc(2.25rem + 2px);padding:.375rem 1.75rem .375rem .75rem;line-height:1.5;color:#495057;vertical-align:middle;background:#fff url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 4 5'%3E%3Cpath fill='%23343a40' d='M2 0L0 2h4zm0 5L0 3h4z'/%3E%3C/svg%3E") no-repeat right .75rem center;background-size:8px 10px;border:1px solid #ced4da;border-radius:.25rem;-webkit-appearance:none;-moz-appearance:none;appearance:none}.custom-select:focus{border-color:#80bdff;outline:0;-webkit-box-shadow:0 0 0 .2rem rgba(128,189,255,.5);box-shadow:0 0 0 .2rem rgba(128,189,255,.5)}.custom-select:focus::-ms-value{color:#495057;background-color:#fff}.custom-select[multiple],.custom-select[size]:not([size="1"]){height:auto;padding-right:.75rem;background-image:none}.custom-select:disabled{color:#6c757d;background-color:#e9ecef}.custom-select::-ms-expand{opacity:0}.custom-select-sm{height:calc(1.8125rem + 2px);padding-top:.375rem;padding-bottom:.375rem;font-size:75%}.custom-select-lg{height:calc(2.875rem + 2px);padding-top:.375rem;padding-bottom:.375rem;font-size:125%}.custom-file{position:relative;display:inline-block;width:100%;height:calc(2.25rem + 2px);margin-bottom:0}.custom-file-input{position:relative;z-index:2;width:100%;height:calc(2.25rem + 2px);margin:0;opacity:0}.custom-file-input:focus~.custom-file-label{border-color:#80bdff;-webkit-box-shadow:0 0 0 .2rem rgba(0,123,255,.25);box-shadow:0 0 0 .2rem rgba(0,123,255,.25)}.custom-file-input:focus~.custom-file-label::after{border-color:#80bdff}.custom-file-input:disabled~.custom-file-label{background-color:#e9ecef}.custom-file-input:lang(en)~.custom-file-label::after{content:"Browse"}.custom-file-label{position:absolute;top:0;right:0;left:0;z-index:1;height:calc(2.25rem + 2px);padding:.375rem .75rem;line-height:1.5;color:#495057;background-color:#fff;border:1px solid #ced4da;border-radius:.25rem}.custom-file-label::after{position:absolute;top:0;right:0;bottom:0;z-index:3;display:block;height:2.25rem;padding:.375rem .75rem;line-height:1.5;color:#495057;content:"Browse";background-color:#e9ecef;border-left:1px solid #ced4da;border-radius:0 .25rem .25rem 0}.custom-range{width:100%;padding-left:0;background-color:transparent;-webkit-appearance:none;-moz-appearance:none;appearance:none}.custom-range:focus{outline:0}.custom-range:focus::-webkit-slider-thumb{-webkit-box-shadow:0 0 0 1px #fff,0 0 0 .2rem rgba(0,123,255,.25);box-shadow:0 0 0 1px #fff,0 0 0 .2rem rgba(0,123,255,.25)}.custom-range:focus::-moz-range-thumb{box-shadow:0 0 0 1px #fff,0 0 0 .2rem rgba(0,123,255,.25)}.custom-range:focus::-ms-thumb{box-shadow:0 0 0 1px #fff,0 0 0 .2rem rgba(0,123,255,.25)}.custom-range::-moz-focus-outer{border:0}.custom-range::-webkit-slider-thumb{width:1rem;height:1rem;margin-top:-.25rem;background-color:#ff5e14;border:0;border-radius:1rem;-webkit-transition:background-color .15s ease-in-out,border-color .15s ease-in-out,-webkit-box-shadow .15s ease-in-out;transition:background-color .15s ease-in-out,border-color .15s ease-in-out,-webkit-box-shadow .15s ease-in-out;transition:background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out;transition:background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out,-webkit-box-shadow .15s ease-in-out;-webkit-appearance:none;appearance:none}@media screen and (prefers-reduced-motion:reduce){.custom-range::-webkit-slider-thumb{-webkit-transition:none;transition:none}}.custom-range::-webkit-slider-thumb:active{background-color:#b3d7ff}.custom-range::-webkit-slider-runnable-track{width:100%;height:.5rem;color:transparent;cursor:pointer;background-color:#dee2e6;border-color:transparent;border-radius:1rem}.custom-range::-moz-range-thumb{width:1rem;height:1rem;background-color:#ff5e14;border:0;border-radius:1rem;-webkit-transition:background-color .15s ease-in-out,border-color .15s ease-in-out,-webkit-box-shadow .15s ease-in-out;transition:background-color .15s ease-in-out,border-color .15s ease-in-out,-webkit-box-shadow .15s ease-in-out;transition:background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out;transition:background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out,-webkit-box-shadow .15s ease-in-out;-moz-appearance:none;appearance:none}@media screen and (prefers-reduced-motion:reduce){.custom-range::-moz-range-thumb{-webkit-transition:none;transition:none}}.custom-range::-moz-range-thumb:active{background-color:#b3d7ff}.custom-range::-moz-range-track{width:100%;height:.5rem;color:transparent;cursor:pointer;background-color:#dee2e6;border-color:transparent;border-radius:1rem}.custom-range::-ms-thumb{width:1rem;height:1rem;margin-top:0;margin-right:.2rem;margin-left:.2rem;background-color:#ff5e14;border:0;border-radius:1rem;-webkit-transition:background-color .15s ease-in-out,border-color .15s ease-in-out,-webkit-box-shadow .15s ease-in-out;transition:background-color .15s ease-in-out,border-color .15s ease-in-out,-webkit-box-shadow .15s ease-in-out;transition:background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out;transition:background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out,-webkit-box-shadow .15s ease-in-out;appearance:none}@media screen and (prefers-reduced-motion:reduce){.custom-range::-ms-thumb{-webkit-transition:none;transition:none}}.custom-range::-ms-thumb:active{background-color:#b3d7ff}.custom-range::-ms-track{width:100%;height:.5rem;color:transparent;cursor:pointer;background-color:transparent;border-color:transparent;border-width:.5rem}.custom-range::-ms-fill-lower{background-color:#dee2e6;border-radius:1rem}.custom-range::-ms-fill-upper{margin-right:15px;background-color:#dee2e6;border-radius:1rem}.custom-control-label::before,.custom-file-label,.custom-select{-webkit-transition:background-color .15s ease-in-out,border-color .15s ease-in-out,-webkit-box-shadow .15s ease-in-out;transition:background-color .15s ease-in-out,border-color .15s ease-in-out,-webkit-box-shadow .15s ease-in-out;transition:background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out;transition:background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out,-webkit-box-shadow .15s ease-in-out}@media screen and (prefers-reduced-motion:reduce){.custom-control-label::before,.custom-file-label,.custom-select{-webkit-transition:none;transition:none}}.nav{display:-ms-flexbox;display:-webkit-box;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap;padding-left:0;margin-bottom:0;list-style:none}.nav-link{display:block;padding:.5rem 1rem}.nav-link:focus,.nav-link:hover{text-decoration:none}.nav-link.disabled{color:#6c757d}.nav-tabs{border-bottom:1px solid #dee2e6}.nav-tabs .nav-item{margin-bottom:-1px}.nav-tabs .nav-link{border:1px solid transparent;border-top-left-radius:.25rem;border-top-right-radius:.25rem}.nav-tabs .nav-link:focus,.nav-tabs .nav-link:hover{border-color:#e9ecef #e9ecef #dee2e6}.nav-tabs .nav-link.disabled{color:#6c757d;background-color:transparent;border-color:transparent}.nav-tabs .nav-item.show .nav-link,.nav-tabs .nav-link.active{color:#495057;background-color:#fff;border-color:#dee2e6 #dee2e6 #fff}.nav-tabs .dropdown-menu{margin-top:-1px;border-top-left-radius:0;border-top-right-radius:0}.nav-pills .nav-link{border-radius:.25rem}.nav-pills .nav-link.active,.nav-pills .show>.nav-link{color:#fff;background-color:#ff5e14}.nav-fill .nav-item{-ms-flex:1 1 auto;-webkit-box-flex:1;flex:1 1 auto;text-align:center}.nav-justified .nav-item{-ms-flex-preferred-size:0;flex-basis:0;-ms-flex-positive:1;-webkit-box-flex:1;flex-grow:1;text-align:center}.tab-content>.tab-pane{display:none}.tab-content>.active{display:block}.navbar{position:relative;display:-ms-flexbox;display:-webkit-box;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap;-ms-flex-align:center;-webkit-box-align:center;align-items:center;-ms-flex-pack:justify;-webkit-box-pack:justify;justify-content:space-between;padding:.5rem 1rem}.navbar>.container,.navbar>.container-fluid{display:-ms-flexbox;display:-webkit-box;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap;-ms-flex-align:center;-webkit-box-align:center;align-items:center;-ms-flex-pack:justify;-webkit-box-pack:justify;justify-content:space-between}.navbar-brand{display:inline-block;padding-top:.3125rem;padding-bottom:.3125rem;margin-right:1rem;font-size:1.25rem;line-height:inherit;white-space:nowrap}.navbar-brand:focus,.navbar-brand:hover{text-decoration:none}.navbar-nav{display:-ms-flexbox;display:-webkit-box;display:flex;-ms-flex-direction:column;-webkit-box-orient:vertical;-webkit-box-direction:normal;flex-direction:column;padding-left:0;margin-bottom:0;list-style:none}.navbar-nav .nav-link{padding-right:0;padding-left:0}.navbar-nav .dropdown-menu{position:static;float:none}.navbar-text{display:inline-block;padding-top:.5rem;padding-bottom:.5rem}.navbar-collapse{-ms-flex-preferred-size:100%;flex-basis:100%;-ms-flex-positive:1;-webkit-box-flex:1;flex-grow:1;-ms-flex-align:center;-webkit-box-align:center;align-items:center}.navbar-toggler{padding:.25rem .75rem;font-size:1.25rem;line-height:1;background-color:transparent;border:1px solid transparent;border-radius:.25rem}.navbar-toggler:focus,.navbar-toggler:hover{text-decoration:none}.navbar-toggler:not(:disabled):not(.disabled){cursor:pointer}.navbar-toggler-icon{display:inline-block;width:1.5em;height:1.5em;vertical-align:middle;content:"";background:no-repeat center center;background-size:100% 100%}@media (max-width:575.98px){.navbar-expand-sm>.container,.navbar-expand-sm>.container-fluid{padding-right:0;padding-left:0}}@media (min-width:576px){.navbar-expand-sm{-ms-flex-flow:row nowrap;-webkit-box-orient:horizontal;-webkit-box-direction:normal;flex-flow:row nowrap;-ms-flex-pack:start;-webkit-box-pack:start;justify-content:flex-start}.navbar-expand-sm .navbar-nav{-ms-flex-direction:row;-webkit-box-orient:horizontal;-webkit-box-direction:normal;flex-direction:row}.navbar-expand-sm .navbar-nav .dropdown-menu{position:absolute}.navbar-expand-sm .navbar-nav .nav-link{padding-right:.5rem;padding-left:.5rem}.navbar-expand-sm>.container,.navbar-expand-sm>.container-fluid{-ms-flex-wrap:nowrap;flex-wrap:nowrap}.navbar-expand-sm .navbar-collapse{display:-ms-flexbox!important;display:-webkit-box!important;display:flex!important;-ms-flex-preferred-size:auto;flex-basis:auto}.navbar-expand-sm .navbar-toggler{display:none}}@media (max-width:767.98px){.navbar-expand-md>.container,.navbar-expand-md>.container-fluid{padding-right:0;padding-left:0}}@media (min-width:768px){.navbar-expand-md{-ms-flex-flow:row nowrap;-webkit-box-orient:horizontal;-webkit-box-direction:normal;flex-flow:row nowrap;-ms-flex-pack:start;-webkit-box-pack:start;justify-content:flex-start}.navbar-expand-md .navbar-nav{-ms-flex-direction:row;-webkit-box-orient:horizontal;-webkit-box-direction:normal;flex-direction:row}.navbar-expand-md .navbar-nav .dropdown-menu{position:absolute}.navbar-expand-md .navbar-nav .nav-link{padding-right:.5rem;padding-left:.5rem}.navbar-expand-md>.container,.navbar-expand-md>.container-fluid{-ms-flex-wrap:nowrap;flex-wrap:nowrap}.navbar-expand-md .navbar-collapse{display:-ms-flexbox!important;display:-webkit-box!important;display:flex!important;-ms-flex-preferred-size:auto;flex-basis:auto}.navbar-expand-md .navbar-toggler{display:none}}@media (max-width:991.98px){.navbar-expand-lg>.container,.navbar-expand-lg>.container-fluid{padding-right:0;padding-left:0}}@media (min-width:992px){.navbar-expand-lg{-ms-flex-flow:row nowrap;-webkit-box-orient:horizontal;-webkit-box-direction:normal;flex-flow:row nowrap;-ms-flex-pack:start;-webkit-box-pack:start;justify-content:flex-start}.navbar-expand-lg .navbar-nav{-ms-flex-direction:row;-webkit-box-orient:horizontal;-webkit-box-direction:normal;flex-direction:row}.navbar-expand-lg .navbar-nav .dropdown-menu{position:absolute}.navbar-expand-lg .navbar-nav .nav-link{padding-right:.5rem;padding-left:.5rem}.navbar-expand-lg>.container,.navbar-expand-lg>.container-fluid{-ms-flex-wrap:nowrap;flex-wrap:nowrap}.navbar-expand-lg .navbar-collapse{display:-ms-flexbox!important;display:-webkit-box!important;display:flex!important;-ms-flex-preferred-size:auto;flex-basis:auto}.navbar-expand-lg .navbar-toggler{display:none}}@media (max-width:1199.98px){.navbar-expand-xl>.container,.navbar-expand-xl>.container-fluid{padding-right:0;padding-left:0}}@media (min-width:1200px){.navbar-expand-xl{-ms-flex-flow:row nowrap;-webkit-box-orient:horizontal;-webkit-box-direction:normal;flex-flow:row nowrap;-ms-flex-pack:start;-webkit-box-pack:start;justify-content:flex-start}.navbar-expand-xl .navbar-nav{-ms-flex-direction:row;-webkit-box-orient:horizontal;-webkit-box-direction:normal;flex-direction:row}.navbar-expand-xl .navbar-nav .dropdown-menu{position:absolute}.navbar-expand-xl .navbar-nav .nav-link{padding-right:.5rem;padding-left:.5rem}.navbar-expand-xl>.container,.navbar-expand-xl>.container-fluid{-ms-flex-wrap:nowrap;flex-wrap:nowrap}.navbar-expand-xl .navbar-collapse{display:-ms-flexbox!important;display:-webkit-box!important;display:flex!important;-ms-flex-preferred-size:auto;flex-basis:auto}.navbar-expand-xl .navbar-toggler{display:none}}.navbar-expand{-ms-flex-flow:row nowrap;-webkit-box-orient:horizontal;-webkit-box-direction:normal;flex-flow:row nowrap;-ms-flex-pack:start;-webkit-box-pack:start;justify-content:flex-start}.navbar-expand>.container,.navbar-expand>.container-fluid{padding-right:0;padding-left:0}.navbar-expand .navbar-nav{-ms-flex-direction:row;-webkit-box-orient:horizontal;-webkit-box-direction:normal;flex-direction:row}.navbar-expand .navbar-nav .dropdown-menu{position:absolute}.navbar-expand .navbar-nav .nav-link{padding-right:.5rem;padding-left:.5rem}.navbar-expand>.container,.navbar-expand>.container-fluid{-ms-flex-wrap:nowrap;flex-wrap:nowrap}.navbar-expand .navbar-collapse{display:-ms-flexbox!important;display:-webkit-box!important;display:flex!important;-ms-flex-preferred-size:auto;flex-basis:auto}.navbar-expand .navbar-toggler{display:none}.navbar-light .navbar-brand{color:rgba(0,0,0,.9)}.navbar-light .navbar-brand:focus,.navbar-light .navbar-brand:hover{color:rgba(0,0,0,.9)}.navbar-light .navbar-nav .nav-link{color:rgba(0,0,0,.5)}.navbar-light .navbar-nav .nav-link:focus,.navbar-light .navbar-nav .nav-link:hover{color:rgba(0,0,0,.7)}.navbar-light .navbar-nav .nav-link.disabled{color:rgba(0,0,0,.3)}.navbar-light .navbar-nav .active>.nav-link,.navbar-light .navbar-nav .nav-link.active,.navbar-light .navbar-nav .nav-link.show,.navbar-light .navbar-nav .show>.nav-link{color:rgba(0,0,0,.9)}.navbar-light .navbar-toggler{color:rgba(0,0,0,.5);border-color:rgba(0,0,0,.1)}.navbar-light .navbar-toggler-icon{background-image:url("data:image/svg+xml;charset=utf8,%3Csvg viewBox='0 0 30 30' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath stroke='rgba(0, 0, 0, 0.5)' stroke-width='2' stroke-linecap='round' stroke-miterlimit='10' d='M4 7h22M4 15h22M4 23h22'/%3E%3C/svg%3E")}.navbar-light .navbar-text{color:rgba(0,0,0,.5)}.navbar-light .navbar-text a{color:rgba(0,0,0,.9)}.navbar-light .navbar-text a:focus,.navbar-light .navbar-text a:hover{color:rgba(0,0,0,.9)}.navbar-dark .navbar-brand{color:#fff}.navbar-dark .navbar-brand:focus,.navbar-dark .navbar-brand:hover{color:#fff}.navbar-dark .navbar-nav .nav-link{color:rgba(255,255,255,.5)}.navbar-dark .navbar-nav .nav-link:focus,.navbar-dark .navbar-nav .nav-link:hover{color:rgba(255,255,255,.75)}.navbar-dark .navbar-nav .nav-link.disabled{color:rgba(255,255,255,.25)}.navbar-dark .navbar-nav .active>.nav-link,.navbar-dark .navbar-nav .nav-link.active,.navbar-dark .navbar-nav .nav-link.show,.navbar-dark .navbar-nav .show>.nav-link{color:#fff}.navbar-dark .navbar-toggler{color:rgba(255,255,255,.5);border-color:rgba(255,255,255,.1)}.navbar-dark .navbar-toggler-icon{background-image:url("data:image/svg+xml;charset=utf8,%3Csvg viewBox='0 0 30 30' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath stroke='rgba(255, 255, 255, 0.5)' stroke-width='2' stroke-linecap='round' stroke-miterlimit='10' d='M4 7h22M4 15h22M4 23h22'/%3E%3C/svg%3E")}.navbar-dark .navbar-text{color:rgba(255,255,255,.5)}.navbar-dark .navbar-text a{color:#fff}.navbar-dark .navbar-text a:focus,.navbar-dark .navbar-text a:hover{color:#fff}.card{position:relative;display:-ms-flexbox;display:-webkit-box;display:flex;-ms-flex-direction:column;-webkit-box-orient:vertical;-webkit-box-direction:normal;flex-direction:column;min-width:0;word-wrap:break-word;background-color:#fff;background-clip:border-box;border:1px solid rgba(0,0,0,.125);border-radius:.25rem}.card>hr{margin-right:0;margin-left:0}.card>.list-group:first-child .list-group-item:first-child{border-top-left-radius:.25rem;border-top-right-radius:.25rem}.card>.list-group:last-child .list-group-item:last-child{border-bottom-right-radius:.25rem;border-bottom-left-radius:.25rem}.card-body{-ms-flex:1 1 auto;-webkit-box-flex:1;flex:1 1 auto;padding:1.25rem}.card-title{margin-bottom:.75rem}.card-subtitle{margin-top:-.375rem;margin-bottom:0}.card-text:last-child{margin-bottom:0}.card-link:hover{text-decoration:none}.card-link+.card-link{margin-left:1.25rem}.card-header{padding:.75rem 1.25rem;margin-bottom:0;background-color:rgba(0,0,0,.03);border-bottom:1px solid rgba(0,0,0,.125)}.card-header:first-child{border-radius:calc(.25rem - 1px) calc(.25rem - 1px) 0 0}.card-header+.list-group .list-group-item:first-child{border-top:0}.card-footer{padding:.75rem 1.25rem;background-color:rgba(0,0,0,.03);border-top:1px solid rgba(0,0,0,.125)}.card-footer:last-child{border-radius:0 0 calc(.25rem - 1px) calc(.25rem - 1px)}.card-header-tabs{margin-right:-.625rem;margin-bottom:-.75rem;margin-left:-.625rem;border-bottom:0}.card-header-pills{margin-right:-.625rem;margin-left:-.625rem}.card-img-overlay{position:absolute;top:0;right:0;bottom:0;left:0;padding:1.25rem}.card-img{width:100%;border-radius:calc(.25rem - 1px)}.card-img-top{width:100%;border-top-left-radius:calc(.25rem - 1px);border-top-right-radius:calc(.25rem - 1px)}.card-img-bottom{width:100%;border-bottom-right-radius:calc(.25rem - 1px);border-bottom-left-radius:calc(.25rem - 1px)}.card-deck{display:-ms-flexbox;display:-webkit-box;display:flex;-ms-flex-direction:column;-webkit-box-orient:vertical;-webkit-box-direction:normal;flex-direction:column}.card-deck .card{margin-bottom:15px}@media (min-width:576px){.card-deck{-ms-flex-flow:row wrap;-webkit-box-orient:horizontal;-webkit-box-direction:normal;flex-flow:row wrap;margin-right:-15px;margin-left:-15px}.card-deck .card{display:-ms-flexbox;display:-webkit-box;display:flex;-ms-flex:1 0 0%;-webkit-box-flex:1;flex:1 0 0%;-ms-flex-direction:column;-webkit-box-orient:vertical;-webkit-box-direction:normal;flex-direction:column;margin-right:15px;margin-bottom:0;margin-left:15px}}.card-group{display:-ms-flexbox;display:-webkit-box;display:flex;-ms-flex-direction:column;-webkit-box-orient:vertical;-webkit-box-direction:normal;flex-direction:column}.card-group>.card{margin-bottom:15px}@media (min-width:576px){.card-group{-ms-flex-flow:row wrap;-webkit-box-orient:horizontal;-webkit-box-direction:normal;flex-flow:row wrap}.card-group>.card{-ms-flex:1 0 0%;-webkit-box-flex:1;flex:1 0 0%;margin-bottom:0}.card-group>.card+.card{margin-left:0;border-left:0}.card-group>.card:first-child{border-top-right-radius:0;border-bottom-right-radius:0}.card-group>.card:first-child .card-header,.card-group>.card:first-child .card-img-top{border-top-right-radius:0}.card-group>.card:first-child .card-footer,.card-group>.card:first-child .card-img-bottom{border-bottom-right-radius:0}.card-group>.card:last-child{border-top-left-radius:0;border-bottom-left-radius:0}.card-group>.card:last-child .card-header,.card-group>.card:last-child .card-img-top{border-top-left-radius:0}.card-group>.card:last-child .card-footer,.card-group>.card:last-child .card-img-bottom{border-bottom-left-radius:0}.card-group>.card:only-child{border-radius:.25rem}.card-group>.card:only-child .card-header,.card-group>.card:only-child .card-img-top{border-top-left-radius:.25rem;border-top-right-radius:.25rem}.card-group>.card:only-child .card-footer,.card-group>.card:only-child .card-img-bottom{border-bottom-right-radius:.25rem;border-bottom-left-radius:.25rem}.card-group>.card:not(:first-child):not(:last-child):not(:only-child){border-radius:0}.card-group>.card:not(:first-child):not(:last-child):not(:only-child) .card-footer,.card-group>.card:not(:first-child):not(:last-child):not(:only-child) .card-header,.card-group>.card:not(:first-child):not(:last-child):not(:only-child) .card-img-bottom,.card-group>.card:not(:first-child):not(:last-child):not(:only-child) .card-img-top{border-radius:0}}.card-columns .card{margin-bottom:.75rem}@media (min-width:576px){.card-columns{-webkit-column-count:3;column-count:3;-webkit-column-gap:1.25rem;column-gap:1.25rem;orphans:1;widows:1}.card-columns .card{display:inline-block;width:100%}}.accordion .card:not(:first-of-type):not(:last-of-type){border-bottom:0;border-radius:0}.accordion .card:not(:first-of-type) .card-header:first-child{border-radius:0}.accordion .card:first-of-type{border-bottom:0;border-bottom-right-radius:0;border-bottom-left-radius:0}.accordion .card:last-of-type{border-top-left-radius:0;border-top-right-radius:0}.breadcrumb{display:-ms-flexbox;display:-webkit-box;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap;padding:.75rem 1rem;margin-bottom:1rem;list-style:none;background-color:#e9ecef;border-radius:.25rem}.breadcrumb-item+.breadcrumb-item{padding-left:.5rem}.breadcrumb-item+.breadcrumb-item::before{display:inline-block;padding-right:.5rem;color:#6c757d;content:"/"}.breadcrumb-item+.breadcrumb-item:hover::before{text-decoration:underline}.breadcrumb-item+.breadcrumb-item:hover::before{text-decoration:none}.breadcrumb-item.active{color:#6c757d}.pagination{display:-ms-flexbox;display:-webkit-box;display:flex;padding-left:0;list-style:none;border-radius:.25rem}.page-link{position:relative;display:block;padding:.5rem .75rem;margin-left:-1px;line-height:1.25;color:#ff5e14;background-color:#fff;border:1px solid #dee2e6}.page-link:hover{z-index:2;color:#0056b3;text-decoration:none;background-color:#e9ecef;border-color:#dee2e6}.page-link:focus{z-index:2;outline:0;-webkit-box-shadow:0 0 0 .2rem rgba(0,123,255,.25);box-shadow:0 0 0 .2rem rgba(0,123,255,.25)}.page-link:not(:disabled):not(.disabled){cursor:pointer}.page-item:first-child .page-link{margin-left:0;border-top-left-radius:.25rem;border-bottom-left-radius:.25rem}.page-item:last-child .page-link{border-top-right-radius:.25rem;border-bottom-right-radius:.25rem}.page-item.active .page-link{z-index:1;color:#fff;background-color:#ff5e14;border-color:#ff5e14}.page-item.disabled .page-link{color:#6c757d;pointer-events:none;cursor:auto;background-color:#fff;border-color:#dee2e6}.pagination-lg .page-link{padding:.75rem 1.5rem;font-size:1.25rem;line-height:1.5}.pagination-lg .page-item:first-child .page-link{border-top-left-radius:.3rem;border-bottom-left-radius:.3rem}.pagination-lg .page-item:last-child .page-link{border-top-right-radius:.3rem;border-bottom-right-radius:.3rem}.pagination-sm .page-link{padding:.25rem .5rem;font-size:.875rem;line-height:1.5}.pagination-sm .page-item:first-child .page-link{border-top-left-radius:.2rem;border-bottom-left-radius:.2rem}.pagination-sm .page-item:last-child .page-link{border-top-right-radius:.2rem;border-bottom-right-radius:.2rem}.badge{display:inline-block;padding:.25em .4em;font-size:75%;font-weight:700;line-height:1;text-align:center;white-space:nowrap;vertical-align:baseline;border-radius:.25rem}.badge:empty{display:none}.btn .badge{position:relative;top:-1px}.badge-pill{padding-right:.6em;padding-left:.6em;border-radius:10rem}.badge-primary{color:#fff;background-color:#ff5e14}.badge-primary[href]:focus,.badge-primary[href]:hover{color:#fff;text-decoration:none;background-color:#0062cc}.badge-secondary{color:#fff;background-color:#6c757d}.badge-secondary[href]:focus,.badge-secondary[href]:hover{color:#fff;text-decoration:none;background-color:#545b62}.badge-success{color:#fff;background-color:#28a745}.badge-success[href]:focus,.badge-success[href]:hover{color:#fff;text-decoration:none;background-color:#1e7e34}.badge-info{color:#fff;background-color:#17a2b8}.badge-info[href]:focus,.badge-info[href]:hover{color:#fff;text-decoration:none;background-color:#117a8b}.badge-warning{color:#212529;background-color:#ffc107}.badge-warning[href]:focus,.badge-warning[href]:hover{color:#212529;text-decoration:none;background-color:#d39e00}.badge-danger{color:#fff;background-color:#dc3545}.badge-danger[href]:focus,.badge-danger[href]:hover{color:#fff;text-decoration:none;background-color:#bd2130}.badge-light{color:#212529;background-color:#f8f9fa}.badge-light[href]:focus,.badge-light[href]:hover{color:#212529;text-decoration:none;background-color:#dae0e5}.badge-dark{color:#fff;background-color:#343a40}.badge-dark[href]:focus,.badge-dark[href]:hover{color:#fff;text-decoration:none;background-color:#1d2124}.jumbotron{padding:2rem 1rem;margin-bottom:2rem;background-color:#e9ecef;border-radius:.3rem}@media (min-width:576px){.jumbotron{padding:4rem 2rem}}.jumbotron-fluid{padding-right:0;padding-left:0;border-radius:0}.alert{position:relative;padding:.75rem 1.25rem;margin-bottom:1rem;border:1px solid transparent;border-radius:.25rem}.alert-heading{color:inherit}.alert-link{font-weight:700}.alert-dismissible{padding-right:4rem}.alert-dismissible .close{position:absolute;top:0;right:0;padding:.75rem 1.25rem;color:inherit}.alert-primary{color:#004085;background-color:#cce5ff;border-color:#b8daff}.alert-primary hr{border-top-color:#9fcdff}.alert-primary .alert-link{color:#002752}.alert-secondary{color:#383d41;background-color:#e2e3e5;border-color:#d6d8db}.alert-secondary hr{border-top-color:#c8cbcf}.alert-secondary .alert-link{color:#202326}.alert-success{color:#155724;background-color:#d4edda;border-color:#c3e6cb}.alert-success hr{border-top-color:#b1dfbb}.alert-success .alert-link{color:#0b2e13}.alert-info{color:#0c5460;background-color:#d1ecf1;border-color:#bee5eb}.alert-info hr{border-top-color:#abdde5}.alert-info .alert-link{color:#062c33}.alert-warning{color:#856404;background-color:#fff3cd;border-color:#ffeeba}.alert-warning hr{border-top-color:#ffe8a1}.alert-warning .alert-link{color:#533f03}.alert-danger{color:#721c24;background-color:#f8d7da;border-color:#f5c6cb}.alert-danger hr{border-top-color:#f1b0b7}.alert-danger .alert-link{color:#491217}.alert-light{color:#818182;background-color:#fefefe;border-color:#fdfdfe}.alert-light hr{border-top-color:#ececf6}.alert-light .alert-link{color:#686868}.alert-dark{color:#1b1e21;background-color:#d6d8d9;border-color:#c6c8ca}.alert-dark hr{border-top-color:#b9bbbe}.alert-dark .alert-link{color:#040505}@-webkit-keyframes progress-bar-stripes{from{background-position:1rem 0}to{background-position:0 0}}@keyframes progress-bar-stripes{from{background-position:1rem 0}to{background-position:0 0}}.progress{display:-ms-flexbox;display:-webkit-box;display:flex;height:1rem;overflow:hidden;font-size:.75rem;background-color:#e9ecef;border-radius:.25rem}.progress-bar{display:-ms-flexbox;display:-webkit-box;display:flex;-ms-flex-direction:column;-webkit-box-orient:vertical;-webkit-box-direction:normal;flex-direction:column;-ms-flex-pack:center;-webkit-box-pack:center;justify-content:center;color:#fff;text-align:center;white-space:nowrap;background-color:#ff5e14;-webkit-transition:width .6s ease;transition:width .6s ease}@media screen and (prefers-reduced-motion:reduce){.progress-bar{-webkit-transition:none;transition:none}}.progress-bar-striped{background-image:linear-gradient(45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent);background-size:1rem 1rem}.progress-bar-animated{-webkit-animation:progress-bar-stripes 1s linear infinite;animation:progress-bar-stripes 1s linear infinite}.media{display:-ms-flexbox;display:-webkit-box;display:flex;-ms-flex-align:start;-webkit-box-align:start;align-items:flex-start}.media-body{-ms-flex:1;-webkit-box-flex:1;flex:1}.list-group{display:-ms-flexbox;display:-webkit-box;display:flex;-ms-flex-direction:column;-webkit-box-orient:vertical;-webkit-box-direction:normal;flex-direction:column;padding-left:0;margin-bottom:0}.list-group-item-action{width:100%;color:#495057;text-align:inherit}.list-group-item-action:focus,.list-group-item-action:hover{color:#495057;text-decoration:none;background-color:#f8f9fa}.list-group-item-action:active{color:#212529;background-color:#e9ecef}.list-group-item{position:relative;display:block;padding:.75rem 1.25rem;margin-bottom:-1px;background-color:#fff;border:1px solid rgba(0,0,0,.125)}.list-group-item:first-child{border-top-left-radius:.25rem;border-top-right-radius:.25rem}.list-group-item:last-child{margin-bottom:0;border-bottom-right-radius:.25rem;border-bottom-left-radius:.25rem}.list-group-item:focus,.list-group-item:hover{z-index:1;text-decoration:none}.list-group-item.disabled,.list-group-item:disabled{color:#6c757d;background-color:#fff}.list-group-item.active{z-index:2;color:#fff;background-color:#ff5e14;border-color:#ff5e14}.list-group-flush .list-group-item{border-right:0;border-left:0;border-radius:0}.list-group-flush:first-child .list-group-item:first-child{border-top:0}.list-group-flush:last-child .list-group-item:last-child{border-bottom:0}.list-group-item-primary{color:#004085;background-color:#b8daff}.list-group-item-primary.list-group-item-action:focus,.list-group-item-primary.list-group-item-action:hover{color:#004085;background-color:#9fcdff}.list-group-item-primary.list-group-item-action.active{color:#fff;background-color:#004085;border-color:#004085}.list-group-item-secondary{color:#383d41;background-color:#d6d8db}.list-group-item-secondary.list-group-item-action:focus,.list-group-item-secondary.list-group-item-action:hover{color:#383d41;background-color:#c8cbcf}.list-group-item-secondary.list-group-item-action.active{color:#fff;background-color:#383d41;border-color:#383d41}.list-group-item-success{color:#155724;background-color:#c3e6cb}.list-group-item-success.list-group-item-action:focus,.list-group-item-success.list-group-item-action:hover{color:#155724;background-color:#b1dfbb}.list-group-item-success.list-group-item-action.active{color:#fff;background-color:#155724;border-color:#155724}.list-group-item-info{color:#0c5460;background-color:#bee5eb}.list-group-item-info.list-group-item-action:focus,.list-group-item-info.list-group-item-action:hover{color:#0c5460;background-color:#abdde5}.list-group-item-info.list-group-item-action.active{color:#fff;background-color:#0c5460;border-color:#0c5460}.list-group-item-warning{color:#856404;background-color:#ffeeba}.list-group-item-warning.list-group-item-action:focus,.list-group-item-warning.list-group-item-action:hover{color:#856404;background-color:#ffe8a1}.list-group-item-warning.list-group-item-action.active{color:#fff;background-color:#856404;border-color:#856404}.list-group-item-danger{color:#721c24;background-color:#f5c6cb}.list-group-item-danger.list-group-item-action:focus,.list-group-item-danger.list-group-item-action:hover{color:#721c24;background-color:#f1b0b7}.list-group-item-danger.list-group-item-action.active{color:#fff;background-color:#721c24;border-color:#721c24}.list-group-item-light{color:#818182;background-color:#fdfdfe}.list-group-item-light.list-group-item-action:focus,.list-group-item-light.list-group-item-action:hover{color:#818182;background-color:#ececf6}.list-group-item-light.list-group-item-action.active{color:#fff;background-color:#818182;border-color:#818182}.list-group-item-dark{color:#1b1e21;background-color:#c6c8ca}.list-group-item-dark.list-group-item-action:focus,.list-group-item-dark.list-group-item-action:hover{color:#1b1e21;background-color:#b9bbbe}.list-group-item-dark.list-group-item-action.active{color:#fff;background-color:#1b1e21;border-color:#1b1e21}.close{float:right;font-size:1.5rem;font-weight:700;line-height:1;color:#000;text-shadow:0 1px 0 #fff;opacity:.5}.close:not(:disabled):not(.disabled){cursor:pointer}.close:not(:disabled):not(.disabled):focus,.close:not(:disabled):not(.disabled):hover{color:#000;text-decoration:none;opacity:.75}button.close{padding:0;background-color:transparent;border:0;-webkit-appearance:none}.modal-open{overflow:hidden}.modal-open .modal{overflow-x:hidden;overflow-y:auto}.modal{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1050;display:none;overflow:hidden;outline:0}.modal-dialog{position:relative;width:auto;margin:.5rem;pointer-events:none}.modal.fade .modal-dialog{transition:-webkit-transform .3s ease-out;-webkit-transition:-webkit-transform .3s ease-out;transition:transform .3s ease-out;transition:transform .3s ease-out, -webkit-transform .3s ease-out;transition:transform .3s ease-out,-webkit-transform .3s ease-out;-webkit-transform:translate(0,-25%);transform:translate(0,-25%)}@media screen and (prefers-reduced-motion:reduce){.modal.fade .modal-dialog{-webkit-transition:none;transition:none}}.modal.show .modal-dialog{-webkit-transform:translate(0,0);transform:translate(0,0)}.modal-dialog-centered{display:-ms-flexbox;display:-webkit-box;display:flex;-ms-flex-align:center;-webkit-box-align:center;align-items:center;min-height:calc(100% - (.5rem * 2))}.modal-dialog-centered::before{display:block;height:calc(100vh - (.5rem * 2));content:""}.modal-content{position:relative;display:-ms-flexbox;display:-webkit-box;display:flex;-ms-flex-direction:column;-webkit-box-orient:vertical;-webkit-box-direction:normal;flex-direction:column;width:100%;pointer-events:auto;background-color:#fff;background-clip:padding-box;border:1px solid rgba(0,0,0,.2);border-radius:.3rem;outline:0}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1040;background-color:#000}.modal-backdrop.fade{opacity:0}.modal-backdrop.show{opacity:.5}.modal-header{display:-ms-flexbox;display:-webkit-box;display:flex;-ms-flex-align:start;-webkit-box-align:start;align-items:flex-start;-ms-flex-pack:justify;-webkit-box-pack:justify;justify-content:space-between;padding:1rem;border-bottom:1px solid #e9ecef;border-top-left-radius:.3rem;border-top-right-radius:.3rem}.modal-header .close{padding:1rem;margin:-1rem -1rem -1rem auto}.modal-title{margin-bottom:0;line-height:1.5}.modal-body{position:relative;-ms-flex:1 1 auto;-webkit-box-flex:1;flex:1 1 auto;padding:1rem}.modal-footer{display:-ms-flexbox;display:-webkit-box;display:flex;-ms-flex-align:center;-webkit-box-align:center;align-items:center;-ms-flex-pack:end;-webkit-box-pack:end;justify-content:flex-end;padding:1rem;border-top:1px solid #e9ecef}.modal-footer>:not(:first-child){margin-left:.25rem}.modal-footer>:not(:last-child){margin-right:.25rem}.modal-scrollbar-measure{position:absolute;top:-9999px;width:50px;height:50px;overflow:scroll}@media (min-width:576px){.modal-dialog{max-width:500px;margin:1.75rem auto}.modal-dialog-centered{min-height:calc(100% - (1.75rem * 2))}.modal-dialog-centered::before{height:calc(100vh - (1.75rem * 2))}.modal-sm{max-width:300px}}@media (min-width:992px){.modal-lg{max-width:800px}}.tooltip{position:absolute;z-index:1070;display:block;margin:0;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji";font-style:normal;font-weight:400;line-height:1.5;text-align:left;text-align:start;text-decoration:none;text-shadow:none;text-transform:none;letter-spacing:normal;word-break:normal;word-spacing:normal;white-space:normal;line-break:auto;font-size:.875rem;word-wrap:break-word;opacity:0}.tooltip.show{opacity:.9}.tooltip .arrow{position:absolute;display:block;width:.8rem;height:.4rem}.tooltip .arrow::before{position:absolute;content:"";border-color:transparent;border-style:solid}.bs-tooltip-auto[x-placement^=top],.bs-tooltip-top{padding:.4rem 0}.bs-tooltip-auto[x-placement^=top] .arrow,.bs-tooltip-top .arrow{bottom:0}.bs-tooltip-auto[x-placement^=top] .arrow::before,.bs-tooltip-top .arrow::before{top:0;border-width:.4rem .4rem 0;border-top-color:#000}.bs-tooltip-auto[x-placement^=right],.bs-tooltip-right{padding:0 .4rem}.bs-tooltip-auto[x-placement^=right] .arrow,.bs-tooltip-right .arrow{left:0;width:.4rem;height:.8rem}.bs-tooltip-auto[x-placement^=right] .arrow::before,.bs-tooltip-right .arrow::before{right:0;border-width:.4rem .4rem .4rem 0;border-right-color:#000}.bs-tooltip-auto[x-placement^=bottom],.bs-tooltip-bottom{padding:.4rem 0}.bs-tooltip-auto[x-placement^=bottom] .arrow,.bs-tooltip-bottom .arrow{top:0}.bs-tooltip-auto[x-placement^=bottom] .arrow::before,.bs-tooltip-bottom .arrow::before{bottom:0;border-width:0 .4rem .4rem;border-bottom-color:#000}.bs-tooltip-auto[x-placement^=left],.bs-tooltip-left{padding:0 .4rem}.bs-tooltip-auto[x-placement^=left] .arrow,.bs-tooltip-left .arrow{right:0;width:.4rem;height:.8rem}.bs-tooltip-auto[x-placement^=left] .arrow::before,.bs-tooltip-left .arrow::before{left:0;border-width:.4rem 0 .4rem .4rem;border-left-color:#000}.tooltip-inner{max-width:200px;padding:.25rem .5rem;color:#fff;text-align:center;background-color:#000;border-radius:.25rem}.popover{position:absolute;top:0;left:0;z-index:1060;display:block;max-width:276px;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji";font-style:normal;font-weight:400;line-height:1.5;text-align:left;text-align:start;text-decoration:none;text-shadow:none;text-transform:none;letter-spacing:normal;word-break:normal;word-spacing:normal;white-space:normal;line-break:auto;font-size:.875rem;word-wrap:break-word;background-color:#fff;background-clip:padding-box;border:1px solid rgba(0,0,0,.2);border-radius:.3rem}.popover .arrow{position:absolute;display:block;width:1rem;height:.5rem;margin:0 .3rem}.popover .arrow::after,.popover .arrow::before{position:absolute;display:block;content:"";border-color:transparent;border-style:solid}.bs-popover-auto[x-placement^=top],.bs-popover-top{margin-bottom:.5rem}.bs-popover-auto[x-placement^=top] .arrow,.bs-popover-top .arrow{bottom:calc((.5rem + 1px) * -1)}.bs-popover-auto[x-placement^=top] .arrow::after,.bs-popover-auto[x-placement^=top] .arrow::before,.bs-popover-top .arrow::after,.bs-popover-top .arrow::before{border-width:.5rem .5rem 0}.bs-popover-auto[x-placement^=top] .arrow::before,.bs-popover-top .arrow::before{bottom:0;border-top-color:rgba(0,0,0,.25)}.bs-popover-auto[x-placement^=top] .arrow::after,.bs-popover-top .arrow::after{bottom:1px;border-top-color:#fff}.bs-popover-auto[x-placement^=right],.bs-popover-right{margin-left:.5rem}.bs-popover-auto[x-placement^=right] .arrow,.bs-popover-right .arrow{left:calc((.5rem + 1px) * -1);width:.5rem;height:1rem;margin:.3rem 0}.bs-popover-auto[x-placement^=right] .arrow::after,.bs-popover-auto[x-placement^=right] .arrow::before,.bs-popover-right .arrow::after,.bs-popover-right .arrow::before{border-width:.5rem .5rem .5rem 0}.bs-popover-auto[x-placement^=right] .arrow::before,.bs-popover-right .arrow::before{left:0;border-right-color:rgba(0,0,0,.25)}.bs-popover-auto[x-placement^=right] .arrow::after,.bs-popover-right .arrow::after{left:1px;border-right-color:#fff}.bs-popover-auto[x-placement^=bottom],.bs-popover-bottom{margin-top:.5rem}.bs-popover-auto[x-placement^=bottom] .arrow,.bs-popover-bottom .arrow{top:calc((.5rem + 1px) * -1)}.bs-popover-auto[x-placement^=bottom] .arrow::after,.bs-popover-auto[x-placement^=bottom] .arrow::before,.bs-popover-bottom .arrow::after,.bs-popover-bottom .arrow::before{border-width:0 .5rem .5rem .5rem}.bs-popover-auto[x-placement^=bottom] .arrow::before,.bs-popover-bottom .arrow::before{top:0;border-bottom-color:rgba(0,0,0,.25)}.bs-popover-auto[x-placement^=bottom] .arrow::after,.bs-popover-bottom .arrow::after{top:1px;border-bottom-color:#fff}.bs-popover-auto[x-placement^=bottom] .popover-header::before,.bs-popover-bottom .popover-header::before{position:absolute;top:0;left:50%;display:block;width:1rem;margin-left:-.5rem;content:"";border-bottom:1px solid #f7f7f7}.bs-popover-auto[x-placement^=left],.bs-popover-left{margin-right:.5rem}.bs-popover-auto[x-placement^=left] .arrow,.bs-popover-left .arrow{right:calc((.5rem + 1px) * -1);width:.5rem;height:1rem;margin:.3rem 0}.bs-popover-auto[x-placement^=left] .arrow::after,.bs-popover-auto[x-placement^=left] .arrow::before,.bs-popover-left .arrow::after,.bs-popover-left .arrow::before{border-width:.5rem 0 .5rem .5rem}.bs-popover-auto[x-placement^=left] .arrow::before,.bs-popover-left .arrow::before{right:0;border-left-color:rgba(0,0,0,.25)}.bs-popover-auto[x-placement^=left] .arrow::after,.bs-popover-left .arrow::after{right:1px;border-left-color:#fff}.popover-header{padding:.5rem .75rem;margin-bottom:0;font-size:1rem;color:inherit;background-color:#f7f7f7;border-bottom:1px solid #ebebeb;border-top-left-radius:calc(.3rem - 1px);border-top-right-radius:calc(.3rem - 1px)}.popover-header:empty{display:none}.popover-body{padding:.5rem .75rem;color:#212529}.carousel{position:relative}.carousel-inner{position:relative;width:100%;overflow:hidden}.carousel-item{position:relative;display:none;-ms-flex-align:center;-webkit-box-align:center;align-items:center;width:100%;-webkit-backface-visibility:hidden;backface-visibility:hidden;-webkit-perspective:1000px;perspective:1000px}.carousel-item-next,.carousel-item-prev,.carousel-item.active{display:block;transition:-webkit-transform .6s ease;-webkit-transition:-webkit-transform .6s ease;transition:transform .6s ease;transition:transform .6s ease, -webkit-transform .6s ease;transition:transform .6s ease,-webkit-transform .6s ease}@media screen and (prefers-reduced-motion:reduce){.carousel-item-next,.carousel-item-prev,.carousel-item.active{-webkit-transition:none;transition:none}}.carousel-item-next,.carousel-item-prev{position:absolute;top:0}.carousel-item-next.carousel-item-left,.carousel-item-prev.carousel-item-right{-webkit-transform:translateX(0);transform:translateX(0)}@supports ((-webkit-transform-style: preserve-3d) or (transform-style: preserve-3d)){.carousel-item-next.carousel-item-left,.carousel-item-prev.carousel-item-right{-webkit-transform:translate3d(0,0,0);transform:translate3d(0,0,0)}}.active.carousel-item-right,.carousel-item-next{-webkit-transform:translateX(100%);transform:translateX(100%)}@supports ((-webkit-transform-style: preserve-3d) or (transform-style: preserve-3d)){.active.carousel-item-right,.carousel-item-next{-webkit-transform:translate3d(100%,0,0);transform:translate3d(100%,0,0)}}.active.carousel-item-left,.carousel-item-prev{-webkit-transform:translateX(-100%);transform:translateX(-100%)}@supports ((-webkit-transform-style: preserve-3d) or (transform-style: preserve-3d)){.active.carousel-item-left,.carousel-item-prev{-webkit-transform:translate3d(-100%,0,0);transform:translate3d(-100%,0,0)}}.carousel-fade .carousel-item{opacity:0;-webkit-transition-duration:.6s;transition-duration:.6s;-webkit-transition-property:opacity;transition-property:opacity}.carousel-fade .carousel-item-next.carousel-item-left,.carousel-fade .carousel-item-prev.carousel-item-right,.carousel-fade .carousel-item.active{opacity:1}.carousel-fade .active.carousel-item-left,.carousel-fade .active.carousel-item-right{opacity:0}.carousel-fade .active.carousel-item-left,.carousel-fade .active.carousel-item-prev,.carousel-fade .carousel-item-next,.carousel-fade .carousel-item-prev,.carousel-fade .carousel-item.active{-webkit-transform:translateX(0);transform:translateX(0)}@supports ((-webkit-transform-style: preserve-3d) or (transform-style: preserve-3d)){.carousel-fade .active.carousel-item-left,.carousel-fade .active.carousel-item-prev,.carousel-fade .carousel-item-next,.carousel-fade .carousel-item-prev,.carousel-fade .carousel-item.active{-webkit-transform:translate3d(0,0,0);transform:translate3d(0,0,0)}}.carousel-control-next,.carousel-control-prev{position:absolute;top:0;bottom:0;display:-ms-flexbox;display:-webkit-box;display:flex;-ms-flex-align:center;-webkit-box-align:center;align-items:center;-ms-flex-pack:center;-webkit-box-pack:center;justify-content:center;width:15%;color:#fff;text-align:center;opacity:.5}.carousel-control-next:focus,.carousel-control-next:hover,.carousel-control-prev:focus,.carousel-control-prev:hover{color:#fff;text-decoration:none;outline:0;opacity:.9}.carousel-control-prev{left:0}.carousel-control-next{right:0}.carousel-control-next-icon,.carousel-control-prev-icon{display:inline-block;width:20px;height:20px;background:transparent no-repeat center center;background-size:100% 100%}.carousel-control-prev-icon{background-image:url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='%23fff' viewBox='0 0 8 8'%3E%3Cpath d='M5.25 0l-4 4 4 4 1.5-1.5-2.5-2.5 2.5-2.5-1.5-1.5z'/%3E%3C/svg%3E")}.carousel-control-next-icon{background-image:url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='%23fff' viewBox='0 0 8 8'%3E%3Cpath d='M2.75 0l-1.5 1.5 2.5 2.5-2.5 2.5 1.5 1.5 4-4-4-4z'/%3E%3C/svg%3E")}.carousel-indicators{position:absolute;right:0;bottom:10px;left:0;z-index:15;display:-ms-flexbox;display:-webkit-box;display:flex;-ms-flex-pack:center;-webkit-box-pack:center;justify-content:center;padding-left:0;margin-right:15%;margin-left:15%;list-style:none}.carousel-indicators li{position:relative;-ms-flex:0 1 auto;-webkit-box-flex:0;flex:0 1 auto;width:30px;height:3px;margin-right:3px;margin-left:3px;text-indent:-999px;cursor:pointer;background-color:rgba(255,255,255,.5)}.carousel-indicators li::before{position:absolute;top:-10px;left:0;display:inline-block;width:100%;height:10px;content:""}.carousel-indicators li::after{position:absolute;bottom:-10px;left:0;display:inline-block;width:100%;height:10px;content:""}.carousel-indicators .active{background-color:#fff}.carousel-caption{position:absolute;right:15%;bottom:20px;left:15%;z-index:10;padding-top:20px;padding-bottom:20px;color:#fff;text-align:center}.align-baseline{vertical-align:baseline!important}.align-top{vertical-align:top!important}.align-middle{vertical-align:middle!important}.align-bottom{vertical-align:bottom!important}.align-text-bottom{vertical-align:text-bottom!important}.align-text-top{vertical-align:text-top!important}.bg-primary{background-color:#ff5e14!important}a.bg-primary:focus,a.bg-primary:hover,button.bg-primary:focus,button.bg-primary:hover{background-color:#0062cc!important}.bg-secondary{background-color:#6c757d!important}a.bg-secondary:focus,a.bg-secondary:hover,button.bg-secondary:focus,button.bg-secondary:hover{background-color:#545b62!important}.bg-success{background-color:#28a745!important}a.bg-success:focus,a.bg-success:hover,button.bg-success:focus,button.bg-success:hover{background-color:#1e7e34!important}.bg-info{background-color:#17a2b8!important}a.bg-info:focus,a.bg-info:hover,button.bg-info:focus,button.bg-info:hover{background-color:#117a8b!important}.bg-warning{background-color:#ffc107!important}a.bg-warning:focus,a.bg-warning:hover,button.bg-warning:focus,button.bg-warning:hover{background-color:#d39e00!important}.bg-danger{background-color:#dc3545!important}a.bg-danger:focus,a.bg-danger:hover,button.bg-danger:focus,button.bg-danger:hover{background-color:#bd2130!important}.bg-light{background-color:#f8f9fa!important}a.bg-light:focus,a.bg-light:hover,button.bg-light:focus,button.bg-light:hover{background-color:#dae0e5!important}.bg-dark{background-color:#343a40!important}a.bg-dark:focus,a.bg-dark:hover,button.bg-dark:focus,button.bg-dark:hover{background-color:#1d2124!important}.bg-white{background-color:#fff!important}.bg-transparent{background-color:transparent!important}.border{border:1px solid #dee2e6!important}.border-top{border-top:1px solid #dee2e6!important}.border-right{border-right:1px solid #dee2e6!important}.border-bottom{border-bottom:1px solid #dee2e6!important}.border-left{border-left:1px solid #dee2e6!important}.border-0{border:0!important}.border-top-0{border-top:0!important}.border-right-0{border-right:0!important}.border-bottom-0{border-bottom:0!important}.border-left-0{border-left:0!important}.border-primary{border-color:#ff5e14!important}.border-secondary{border-color:#6c757d!important}.border-success{border-color:#28a745!important}.border-info{border-color:#17a2b8!important}.border-warning{border-color:#ffc107!important}.border-danger{border-color:#dc3545!important}.border-light{border-color:#f8f9fa!important}.border-dark{border-color:#343a40!important}.border-white{border-color:#fff!important}.rounded{border-radius:.25rem!important}.rounded-top{border-top-left-radius:.25rem!important;border-top-right-radius:.25rem!important}.rounded-right{border-top-right-radius:.25rem!important;border-bottom-right-radius:.25rem!important}.rounded-bottom{border-bottom-right-radius:.25rem!important;border-bottom-left-radius:.25rem!important}.rounded-left{border-top-left-radius:.25rem!important;border-bottom-left-radius:.25rem!important}.rounded-circle{border-radius:50%!important}.rounded-0{border-radius:0!important}.clearfix::after{display:block;clear:both;content:""}.d-none{display:none!important}.d-inline{display:inline!important}.d-inline-block{display:inline-block!important}.d-block{display:block!important}.d-table{display:table!important}.d-table-row{display:table-row!important}.d-table-cell{display:table-cell!important}.d-flex{display:-ms-flexbox!important;display:-webkit-box!important;display:flex!important}.d-inline-flex{display:-ms-inline-flexbox!important;display:-webkit-inline-box!important;display:inline-flex!important}@media (min-width:576px){.d-sm-none{display:none!important}.d-sm-inline{display:inline!important}.d-sm-inline-block{display:inline-block!important}.d-sm-block{display:block!important}.d-sm-table{display:table!important}.d-sm-table-row{display:table-row!important}.d-sm-table-cell{display:table-cell!important}.d-sm-flex{display:-ms-flexbox!important;display:-webkit-box!important;display:flex!important}.d-sm-inline-flex{display:-ms-inline-flexbox!important;display:-webkit-inline-box!important;display:inline-flex!important}}@media (min-width:768px){.d-md-none{display:none!important}.d-md-inline{display:inline!important}.d-md-inline-block{display:inline-block!important}.d-md-block{display:block!important}.d-md-table{display:table!important}.d-md-table-row{display:table-row!important}.d-md-table-cell{display:table-cell!important}.d-md-flex{display:-ms-flexbox!important;display:-webkit-box!important;display:flex!important}.d-md-inline-flex{display:-ms-inline-flexbox!important;display:-webkit-inline-box!important;display:inline-flex!important}}@media (min-width:992px){.d-lg-none{display:none!important}.d-lg-inline{display:inline!important}.d-lg-inline-block{display:inline-block!important}.d-lg-block{display:block!important}.d-lg-table{display:table!important}.d-lg-table-row{display:table-row!important}.d-lg-table-cell{display:table-cell!important}.d-lg-flex{display:-ms-flexbox!important;display:-webkit-box!important;display:flex!important}.d-lg-inline-flex{display:-ms-inline-flexbox!important;display:-webkit-inline-box!important;display:inline-flex!important}}@media (min-width:1200px){.d-xl-none{display:none!important}.d-xl-inline{display:inline!important}.d-xl-inline-block{display:inline-block!important}.d-xl-block{display:block!important}.d-xl-table{display:table!important}.d-xl-table-row{display:table-row!important}.d-xl-table-cell{display:table-cell!important}.d-xl-flex{display:-ms-flexbox!important;display:-webkit-box!important;display:flex!important}.d-xl-inline-flex{display:-ms-inline-flexbox!important;display:-webkit-inline-box!important;display:inline-flex!important}}@media print{.d-print-none{display:none!important}.d-print-inline{display:inline!important}.d-print-inline-block{display:inline-block!important}.d-print-block{display:block!important}.d-print-table{display:table!important}.d-print-table-row{display:table-row!important}.d-print-table-cell{display:table-cell!important}.d-print-flex{display:-ms-flexbox!important;display:-webkit-box!important;display:flex!important}.d-print-inline-flex{display:-ms-inline-flexbox!important;display:-webkit-inline-box!important;display:inline-flex!important}}.embed-responsive{position:relative;display:block;width:100%;padding:0;overflow:hidden}.embed-responsive::before{display:block;content:""}.embed-responsive .embed-responsive-item,.embed-responsive embed,.embed-responsive iframe,.embed-responsive object,.embed-responsive video{position:absolute;top:0;bottom:0;left:0;width:100%;height:100%;border:0}.embed-responsive-21by9::before{padding-top:42.857143%}.embed-responsive-16by9::before{padding-top:56.25%}.embed-responsive-4by3::before{padding-top:75%}.embed-responsive-1by1::before{padding-top:100%}.flex-row{-ms-flex-direction:row!important;-webkit-box-orient:horizontal!important;-webkit-box-direction:normal!important;flex-direction:row!important}.flex-column{-ms-flex-direction:column!important;-webkit-box-orient:vertical!important;-webkit-box-direction:normal!important;flex-direction:column!important}.flex-row-reverse{-ms-flex-direction:row-reverse!important;-webkit-box-orient:horizontal!important;-webkit-box-direction:reverse!important;flex-direction:row-reverse!important}.flex-column-reverse{-ms-flex-direction:column-reverse!important;-webkit-box-orient:vertical!important;-webkit-box-direction:reverse!important;flex-direction:column-reverse!important}.flex-wrap{-ms-flex-wrap:wrap!important;flex-wrap:wrap!important}.flex-nowrap{-ms-flex-wrap:nowrap!important;flex-wrap:nowrap!important}.flex-wrap-reverse{-ms-flex-wrap:wrap-reverse!important;flex-wrap:wrap-reverse!important}.flex-fill{-ms-flex:1 1 auto!important;-webkit-box-flex:1!important;flex:1 1 auto!important}.flex-grow-0{-ms-flex-positive:0!important;-webkit-box-flex:0!important;flex-grow:0!important}.flex-grow-1{-ms-flex-positive:1!important;-webkit-box-flex:1!important;flex-grow:1!important}.flex-shrink-0{-ms-flex-negative:0!important;flex-shrink:0!important}.flex-shrink-1{-ms-flex-negative:1!important;flex-shrink:1!important}.justify-content-start{-ms-flex-pack:start!important;-webkit-box-pack:start!important;justify-content:flex-start!important}.justify-content-end{-ms-flex-pack:end!important;-webkit-box-pack:end!important;justify-content:flex-end!important}.justify-content-center{-ms-flex-pack:center!important;-webkit-box-pack:center!important;justify-content:center!important}.justify-content-between{-ms-flex-pack:justify!important;-webkit-box-pack:justify!important;justify-content:space-between!important}.justify-content-around{-ms-flex-pack:distribute!important;justify-content:space-around!important}.align-items-start{-ms-flex-align:start!important;-webkit-box-align:start!important;align-items:flex-start!important}.align-items-end{-ms-flex-align:end!important;-webkit-box-align:end!important;align-items:flex-end!important}.align-items-center{-ms-flex-align:center!important;-webkit-box-align:center!important;align-items:center!important}.align-items-baseline{-ms-flex-align:baseline!important;-webkit-box-align:baseline!important;align-items:baseline!important}.align-items-stretch{-ms-flex-align:stretch!important;-webkit-box-align:stretch!important;align-items:stretch!important}.align-content-start{-ms-flex-line-pack:start!important;align-content:flex-start!important}.align-content-end{-ms-flex-line-pack:end!important;align-content:flex-end!important}.align-content-center{-ms-flex-line-pack:center!important;align-content:center!important}.align-content-between{-ms-flex-line-pack:justify!important;align-content:space-between!important}.align-content-around{-ms-flex-line-pack:distribute!important;align-content:space-around!important}.align-content-stretch{-ms-flex-line-pack:stretch!important;align-content:stretch!important}.align-self-auto{-ms-flex-item-align:auto!important;align-self:auto!important}.align-self-start{-ms-flex-item-align:start!important;align-self:flex-start!important}.align-self-end{-ms-flex-item-align:end!important;align-self:flex-end!important}.align-self-center{-ms-flex-item-align:center!important;align-self:center!important}.align-self-baseline{-ms-flex-item-align:baseline!important;align-self:baseline!important}.align-self-stretch{-ms-flex-item-align:stretch!important;align-self:stretch!important}@media (min-width:576px){.flex-sm-row{-ms-flex-direction:row!important;-webkit-box-orient:horizontal!important;-webkit-box-direction:normal!important;flex-direction:row!important}.flex-sm-column{-ms-flex-direction:column!important;-webkit-box-orient:vertical!important;-webkit-box-direction:normal!important;flex-direction:column!important}.flex-sm-row-reverse{-ms-flex-direction:row-reverse!important;-webkit-box-orient:horizontal!important;-webkit-box-direction:reverse!important;flex-direction:row-reverse!important}.flex-sm-column-reverse{-ms-flex-direction:column-reverse!important;-webkit-box-orient:vertical!important;-webkit-box-direction:reverse!important;flex-direction:column-reverse!important}.flex-sm-wrap{-ms-flex-wrap:wrap!important;flex-wrap:wrap!important}.flex-sm-nowrap{-ms-flex-wrap:nowrap!important;flex-wrap:nowrap!important}.flex-sm-wrap-reverse{-ms-flex-wrap:wrap-reverse!important;flex-wrap:wrap-reverse!important}.flex-sm-fill{-ms-flex:1 1 auto!important;-webkit-box-flex:1!important;flex:1 1 auto!important}.flex-sm-grow-0{-ms-flex-positive:0!important;-webkit-box-flex:0!important;flex-grow:0!important}.flex-sm-grow-1{-ms-flex-positive:1!important;-webkit-box-flex:1!important;flex-grow:1!important}.flex-sm-shrink-0{-ms-flex-negative:0!important;flex-shrink:0!important}.flex-sm-shrink-1{-ms-flex-negative:1!important;flex-shrink:1!important}.justify-content-sm-start{-ms-flex-pack:start!important;-webkit-box-pack:start!important;justify-content:flex-start!important}.justify-content-sm-end{-ms-flex-pack:end!important;-webkit-box-pack:end!important;justify-content:flex-end!important}.justify-content-sm-center{-ms-flex-pack:center!important;-webkit-box-pack:center!important;justify-content:center!important}.justify-content-sm-between{-ms-flex-pack:justify!important;-webkit-box-pack:justify!important;justify-content:space-between!important}.justify-content-sm-around{-ms-flex-pack:distribute!important;justify-content:space-around!important}.align-items-sm-start{-ms-flex-align:start!important;-webkit-box-align:start!important;align-items:flex-start!important}.align-items-sm-end{-ms-flex-align:end!important;-webkit-box-align:end!important;align-items:flex-end!important}.align-items-sm-center{-ms-flex-align:center!important;-webkit-box-align:center!important;align-items:center!important}.align-items-sm-baseline{-ms-flex-align:baseline!important;-webkit-box-align:baseline!important;align-items:baseline!important}.align-items-sm-stretch{-ms-flex-align:stretch!important;-webkit-box-align:stretch!important;align-items:stretch!important}.align-content-sm-start{-ms-flex-line-pack:start!important;align-content:flex-start!important}.align-content-sm-end{-ms-flex-line-pack:end!important;align-content:flex-end!important}.align-content-sm-center{-ms-flex-line-pack:center!important;align-content:center!important}.align-content-sm-between{-ms-flex-line-pack:justify!important;align-content:space-between!important}.align-content-sm-around{-ms-flex-line-pack:distribute!important;align-content:space-around!important}.align-content-sm-stretch{-ms-flex-line-pack:stretch!important;align-content:stretch!important}.align-self-sm-auto{-ms-flex-item-align:auto!important;align-self:auto!important}.align-self-sm-start{-ms-flex-item-align:start!important;align-self:flex-start!important}.align-self-sm-end{-ms-flex-item-align:end!important;align-self:flex-end!important}.align-self-sm-center{-ms-flex-item-align:center!important;align-self:center!important}.align-self-sm-baseline{-ms-flex-item-align:baseline!important;align-self:baseline!important}.align-self-sm-stretch{-ms-flex-item-align:stretch!important;align-self:stretch!important}}@media (min-width:768px){.flex-md-row{-ms-flex-direction:row!important;-webkit-box-orient:horizontal!important;-webkit-box-direction:normal!important;flex-direction:row!important}.flex-md-column{-ms-flex-direction:column!important;-webkit-box-orient:vertical!important;-webkit-box-direction:normal!important;flex-direction:column!important}.flex-md-row-reverse{-ms-flex-direction:row-reverse!important;-webkit-box-orient:horizontal!important;-webkit-box-direction:reverse!important;flex-direction:row-reverse!important}.flex-md-column-reverse{-ms-flex-direction:column-reverse!important;-webkit-box-orient:vertical!important;-webkit-box-direction:reverse!important;flex-direction:column-reverse!important}.flex-md-wrap{-ms-flex-wrap:wrap!important;flex-wrap:wrap!important}.flex-md-nowrap{-ms-flex-wrap:nowrap!important;flex-wrap:nowrap!important}.flex-md-wrap-reverse{-ms-flex-wrap:wrap-reverse!important;flex-wrap:wrap-reverse!important}.flex-md-fill{-ms-flex:1 1 auto!important;-webkit-box-flex:1!important;flex:1 1 auto!important}.flex-md-grow-0{-ms-flex-positive:0!important;-webkit-box-flex:0!important;flex-grow:0!important}.flex-md-grow-1{-ms-flex-positive:1!important;-webkit-box-flex:1!important;flex-grow:1!important}.flex-md-shrink-0{-ms-flex-negative:0!important;flex-shrink:0!important}.flex-md-shrink-1{-ms-flex-negative:1!important;flex-shrink:1!important}.justify-content-md-start{-ms-flex-pack:start!important;-webkit-box-pack:start!important;justify-content:flex-start!important}.justify-content-md-end{-ms-flex-pack:end!important;-webkit-box-pack:end!important;justify-content:flex-end!important}.justify-content-md-center{-ms-flex-pack:center!important;-webkit-box-pack:center!important;justify-content:center!important}.justify-content-md-between{-ms-flex-pack:justify!important;-webkit-box-pack:justify!important;justify-content:space-between!important}.justify-content-md-around{-ms-flex-pack:distribute!important;justify-content:space-around!important}.align-items-md-start{-ms-flex-align:start!important;-webkit-box-align:start!important;align-items:flex-start!important}.align-items-md-end{-ms-flex-align:end!important;-webkit-box-align:end!important;align-items:flex-end!important}.align-items-md-center{-ms-flex-align:center!important;-webkit-box-align:center!important;align-items:center!important}.align-items-md-baseline{-ms-flex-align:baseline!important;-webkit-box-align:baseline!important;align-items:baseline!important}.align-items-md-stretch{-ms-flex-align:stretch!important;-webkit-box-align:stretch!important;align-items:stretch!important}.align-content-md-start{-ms-flex-line-pack:start!important;align-content:flex-start!important}.align-content-md-end{-ms-flex-line-pack:end!important;align-content:flex-end!important}.align-content-md-center{-ms-flex-line-pack:center!important;align-content:center!important}.align-content-md-between{-ms-flex-line-pack:justify!important;align-content:space-between!important}.align-content-md-around{-ms-flex-line-pack:distribute!important;align-content:space-around!important}.align-content-md-stretch{-ms-flex-line-pack:stretch!important;align-content:stretch!important}.align-self-md-auto{-ms-flex-item-align:auto!important;align-self:auto!important}.align-self-md-start{-ms-flex-item-align:start!important;align-self:flex-start!important}.align-self-md-end{-ms-flex-item-align:end!important;align-self:flex-end!important}.align-self-md-center{-ms-flex-item-align:center!important;align-self:center!important}.align-self-md-baseline{-ms-flex-item-align:baseline!important;align-self:baseline!important}.align-self-md-stretch{-ms-flex-item-align:stretch!important;align-self:stretch!important}}@media (min-width:992px){.flex-lg-row{-ms-flex-direction:row!important;-webkit-box-orient:horizontal!important;-webkit-box-direction:normal!important;flex-direction:row!important}.flex-lg-column{-ms-flex-direction:column!important;-webkit-box-orient:vertical!important;-webkit-box-direction:normal!important;flex-direction:column!important}.flex-lg-row-reverse{-ms-flex-direction:row-reverse!important;-webkit-box-orient:horizontal!important;-webkit-box-direction:reverse!important;flex-direction:row-reverse!important}.flex-lg-column-reverse{-ms-flex-direction:column-reverse!important;-webkit-box-orient:vertical!important;-webkit-box-direction:reverse!important;flex-direction:column-reverse!important}.flex-lg-wrap{-ms-flex-wrap:wrap!important;flex-wrap:wrap!important}.flex-lg-nowrap{-ms-flex-wrap:nowrap!important;flex-wrap:nowrap!important}.flex-lg-wrap-reverse{-ms-flex-wrap:wrap-reverse!important;flex-wrap:wrap-reverse!important}.flex-lg-fill{-ms-flex:1 1 auto!important;-webkit-box-flex:1!important;flex:1 1 auto!important}.flex-lg-grow-0{-ms-flex-positive:0!important;-webkit-box-flex:0!important;flex-grow:0!important}.flex-lg-grow-1{-ms-flex-positive:1!important;-webkit-box-flex:1!important;flex-grow:1!important}.flex-lg-shrink-0{-ms-flex-negative:0!important;flex-shrink:0!important}.flex-lg-shrink-1{-ms-flex-negative:1!important;flex-shrink:1!important}.justify-content-lg-start{-ms-flex-pack:start!important;-webkit-box-pack:start!important;justify-content:flex-start!important}.justify-content-lg-end{-ms-flex-pack:end!important;-webkit-box-pack:end!important;justify-content:flex-end!important}.justify-content-lg-center{-ms-flex-pack:center!important;-webkit-box-pack:center!important;justify-content:center!important}.justify-content-lg-between{-ms-flex-pack:justify!important;-webkit-box-pack:justify!important;justify-content:space-between!important}.justify-content-lg-around{-ms-flex-pack:distribute!important;justify-content:space-around!important}.align-items-lg-start{-ms-flex-align:start!important;-webkit-box-align:start!important;align-items:flex-start!important}.align-items-lg-end{-ms-flex-align:end!important;-webkit-box-align:end!important;align-items:flex-end!important}.align-items-lg-center{-ms-flex-align:center!important;-webkit-box-align:center!important;align-items:center!important}.align-items-lg-baseline{-ms-flex-align:baseline!important;-webkit-box-align:baseline!important;align-items:baseline!important}.align-items-lg-stretch{-ms-flex-align:stretch!important;-webkit-box-align:stretch!important;align-items:stretch!important}.align-content-lg-start{-ms-flex-line-pack:start!important;align-content:flex-start!important}.align-content-lg-end{-ms-flex-line-pack:end!important;align-content:flex-end!important}.align-content-lg-center{-ms-flex-line-pack:center!important;align-content:center!important}.align-content-lg-between{-ms-flex-line-pack:justify!important;align-content:space-between!important}.align-content-lg-around{-ms-flex-line-pack:distribute!important;align-content:space-around!important}.align-content-lg-stretch{-ms-flex-line-pack:stretch!important;align-content:stretch!important}.align-self-lg-auto{-ms-flex-item-align:auto!important;align-self:auto!important}.align-self-lg-start{-ms-flex-item-align:start!important;align-self:flex-start!important}.align-self-lg-end{-ms-flex-item-align:end!important;align-self:flex-end!important}.align-self-lg-center{-ms-flex-item-align:center!important;align-self:center!important}.align-self-lg-baseline{-ms-flex-item-align:baseline!important;align-self:baseline!important}.align-self-lg-stretch{-ms-flex-item-align:stretch!important;align-self:stretch!important}}@media (min-width:1200px){.flex-xl-row{-ms-flex-direction:row!important;-webkit-box-orient:horizontal!important;-webkit-box-direction:normal!important;flex-direction:row!important}.flex-xl-column{-ms-flex-direction:column!important;-webkit-box-orient:vertical!important;-webkit-box-direction:normal!important;flex-direction:column!important}.flex-xl-row-reverse{-ms-flex-direction:row-reverse!important;-webkit-box-orient:horizontal!important;-webkit-box-direction:reverse!important;flex-direction:row-reverse!important}.flex-xl-column-reverse{-ms-flex-direction:column-reverse!important;-webkit-box-orient:vertical!important;-webkit-box-direction:reverse!important;flex-direction:column-reverse!important}.flex-xl-wrap{-ms-flex-wrap:wrap!important;flex-wrap:wrap!important}.flex-xl-nowrap{-ms-flex-wrap:nowrap!important;flex-wrap:nowrap!important}.flex-xl-wrap-reverse{-ms-flex-wrap:wrap-reverse!important;flex-wrap:wrap-reverse!important}.flex-xl-fill{-ms-flex:1 1 auto!important;-webkit-box-flex:1!important;flex:1 1 auto!important}.flex-xl-grow-0{-ms-flex-positive:0!important;-webkit-box-flex:0!important;flex-grow:0!important}.flex-xl-grow-1{-ms-flex-positive:1!important;-webkit-box-flex:1!important;flex-grow:1!important}.flex-xl-shrink-0{-ms-flex-negative:0!important;flex-shrink:0!important}.flex-xl-shrink-1{-ms-flex-negative:1!important;flex-shrink:1!important}.justify-content-xl-start{-ms-flex-pack:start!important;-webkit-box-pack:start!important;justify-content:flex-start!important}.justify-content-xl-end{-ms-flex-pack:end!important;-webkit-box-pack:end!important;justify-content:flex-end!important}.justify-content-xl-center{-ms-flex-pack:center!important;-webkit-box-pack:center!important;justify-content:center!important}.justify-content-xl-between{-ms-flex-pack:justify!important;-webkit-box-pack:justify!important;justify-content:space-between!important}.justify-content-xl-around{-ms-flex-pack:distribute!important;justify-content:space-around!important}.align-items-xl-start{-ms-flex-align:start!important;-webkit-box-align:start!important;align-items:flex-start!important}.align-items-xl-end{-ms-flex-align:end!important;-webkit-box-align:end!important;align-items:flex-end!important}.align-items-xl-center{-ms-flex-align:center!important;-webkit-box-align:center!important;align-items:center!important}.align-items-xl-baseline{-ms-flex-align:baseline!important;-webkit-box-align:baseline!important;align-items:baseline!important}.align-items-xl-stretch{-ms-flex-align:stretch!important;-webkit-box-align:stretch!important;align-items:stretch!important}.align-content-xl-start{-ms-flex-line-pack:start!important;align-content:flex-start!important}.align-content-xl-end{-ms-flex-line-pack:end!important;align-content:flex-end!important}.align-content-xl-center{-ms-flex-line-pack:center!important;align-content:center!important}.align-content-xl-between{-ms-flex-line-pack:justify!important;align-content:space-between!important}.align-content-xl-around{-ms-flex-line-pack:distribute!important;align-content:space-around!important}.align-content-xl-stretch{-ms-flex-line-pack:stretch!important;align-content:stretch!important}.align-self-xl-auto{-ms-flex-item-align:auto!important;align-self:auto!important}.align-self-xl-start{-ms-flex-item-align:start!important;align-self:flex-start!important}.align-self-xl-end{-ms-flex-item-align:end!important;align-self:flex-end!important}.align-self-xl-center{-ms-flex-item-align:center!important;align-self:center!important}.align-self-xl-baseline{-ms-flex-item-align:baseline!important;align-self:baseline!important}.align-self-xl-stretch{-ms-flex-item-align:stretch!important;align-self:stretch!important}}.float-left{float:left!important}.float-right{float:right!important}.float-none{float:none!important}@media (min-width:576px){.float-sm-left{float:left!important}.float-sm-right{float:right!important}.float-sm-none{float:none!important}}@media (min-width:768px){.float-md-left{float:left!important}.float-md-right{float:right!important}.float-md-none{float:none!important}}@media (min-width:992px){.float-lg-left{float:left!important}.float-lg-right{float:right!important}.float-lg-none{float:none!important}}@media (min-width:1200px){.float-xl-left{float:left!important}.float-xl-right{float:right!important}.float-xl-none{float:none!important}}.position-static{position:static!important}.position-relative{position:relative!important}.position-absolute{position:absolute!important}.position-fixed{position:fixed!important}.position-sticky{position:-webkit-sticky!important;position:sticky!important}.fixed-top{position:fixed;top:0;right:0;left:0;z-index:1030}.fixed-bottom{position:fixed;right:0;bottom:0;left:0;z-index:1030}@supports ((position: -webkit-sticky) or (position: sticky)){.sticky-top{position:-webkit-sticky;position:sticky;top:0;z-index:1020}}.sr-only{position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.sr-only-focusable:active,.sr-only-focusable:focus{position:static;width:auto;height:auto;overflow:visible;clip:auto;white-space:normal}.shadow-sm{-webkit-box-shadow:0 .125rem .25rem rgba(0,0,0,.075)!important;box-shadow:0 .125rem .25rem rgba(0,0,0,.075)!important}.shadow{-webkit-box-shadow:0 .5rem 1rem rgba(0,0,0,.15)!important;box-shadow:0 .5rem 1rem rgba(0,0,0,.15)!important}.shadow-lg{-webkit-box-shadow:0 1rem 3rem rgba(0,0,0,.175)!important;box-shadow:0 1rem 3rem rgba(0,0,0,.175)!important}.shadow-none{-webkit-box-shadow:none!important;box-shadow:none!important}.w-25{width:25%!important}.w-50{width:50%!important}.w-75{width:75%!important}.w-100{width:100%!important}.w-auto{width:auto!important}.h-25{height:25%!important}.h-50{height:50%!important}.h-75{height:75%!important}.h-100{height:100%!important}.h-auto{height:auto!important}.mw-100{max-width:100%!important}.mh-100{max-height:100%!important}.m-0{margin:0!important}.mt-0,.my-0{margin-top:0!important}.mr-0,.mx-0{margin-right:0!important}.mb-0,.my-0{margin-bottom:0!important}.ml-0,.mx-0{margin-left:0!important}.m-1{margin:.25rem!important}.mt-1,.my-1{margin-top:.25rem!important}.mr-1,.mx-1{margin-right:.25rem!important}.mb-1,.my-1{margin-bottom:.25rem!important}.ml-1,.mx-1{margin-left:.25rem!important}.m-2{margin:.5rem!important}.mt-2,.my-2{margin-top:.5rem!important}.mr-2,.mx-2{margin-right:.5rem!important}.mb-2,.my-2{margin-bottom:.5rem!important}.ml-2,.mx-2{margin-left:.5rem!important}.m-3{margin:1rem!important}.mt-3,.my-3{margin-top:1rem!important}.mr-3,.mx-3{margin-right:1rem!important}.mb-3,.my-3{margin-bottom:1rem!important}.ml-3,.mx-3{margin-left:1rem!important}.m-4{margin:1.5rem!important}.mt-4,.my-4{margin-top:1.5rem!important}.mr-4,.mx-4{margin-right:1.5rem!important}.mb-4,.my-4{margin-bottom:1.5rem!important}.ml-4,.mx-4{margin-left:1.5rem!important}.m-5{margin:3rem!important}.mt-5,.my-5{margin-top:3rem!important}.mr-5,.mx-5{margin-right:3rem!important}.mb-5,.my-5{margin-bottom:3rem!important}.ml-5,.mx-5{margin-left:3rem!important}.p-0{padding:0!important}.pt-0,.py-0{padding-top:0!important}.pr-0,.px-0{padding-right:0!important}.pb-0,.py-0{padding-bottom:0!important}.pl-0,.px-0{padding-left:0!important}.p-1{padding:.25rem!important}.pt-1,.py-1{padding-top:.25rem!important}.pr-1,.px-1{padding-right:.25rem!important}.pb-1,.py-1{padding-bottom:.25rem!important}.pl-1,.px-1{padding-left:.25rem!important}.p-2{padding:.5rem!important}.pt-2,.py-2{padding-top:.5rem!important}.pr-2,.px-2{padding-right:.5rem!important}.pb-2,.py-2{padding-bottom:.5rem!important}.pl-2,.px-2{padding-left:.5rem!important}.p-3{padding:1rem!important}.pt-3,.py-3{padding-top:1rem!important}.pr-3,.px-3{padding-right:1rem!important}.pb-3,.py-3{padding-bottom:1rem!important}.pl-3,.px-3{padding-left:1rem!important}.p-4{padding:1.5rem!important}.pt-4,.py-4{padding-top:1.5rem!important}.pr-4,.px-4{padding-right:1.5rem!important}.pb-4,.py-4{padding-bottom:1.5rem!important}.pl-4,.px-4{padding-left:1.5rem!important}.p-5{padding:3rem!important}.pt-5,.py-5{padding-top:3rem!important}.pr-5,.px-5{padding-right:3rem!important}.pb-5,.py-5{padding-bottom:3rem!important}.pl-5,.px-5{padding-left:3rem!important}.m-auto{margin:auto!important}.mt-auto,.my-auto{margin-top:auto!important}.mr-auto,.mx-auto{margin-right:auto!important}.mb-auto,.my-auto{margin-bottom:auto!important}.ml-auto,.mx-auto{margin-left:auto!important}@media (min-width:576px){.m-sm-0{margin:0!important}.mt-sm-0,.my-sm-0{margin-top:0!important}.mr-sm-0,.mx-sm-0{margin-right:0!important}.mb-sm-0,.my-sm-0{margin-bottom:0!important}.ml-sm-0,.mx-sm-0{margin-left:0!important}.m-sm-1{margin:.25rem!important}.mt-sm-1,.my-sm-1{margin-top:.25rem!important}.mr-sm-1,.mx-sm-1{margin-right:.25rem!important}.mb-sm-1,.my-sm-1{margin-bottom:.25rem!important}.ml-sm-1,.mx-sm-1{margin-left:.25rem!important}.m-sm-2{margin:.5rem!important}.mt-sm-2,.my-sm-2{margin-top:.5rem!important}.mr-sm-2,.mx-sm-2{margin-right:.5rem!important}.mb-sm-2,.my-sm-2{margin-bottom:.5rem!important}.ml-sm-2,.mx-sm-2{margin-left:.5rem!important}.m-sm-3{margin:1rem!important}.mt-sm-3,.my-sm-3{margin-top:1rem!important}.mr-sm-3,.mx-sm-3{margin-right:1rem!important}.mb-sm-3,.my-sm-3{margin-bottom:1rem!important}.ml-sm-3,.mx-sm-3{margin-left:1rem!important}.m-sm-4{margin:1.5rem!important}.mt-sm-4,.my-sm-4{margin-top:1.5rem!important}.mr-sm-4,.mx-sm-4{margin-right:1.5rem!important}.mb-sm-4,.my-sm-4{margin-bottom:1.5rem!important}.ml-sm-4,.mx-sm-4{margin-left:1.5rem!important}.m-sm-5{margin:3rem!important}.mt-sm-5,.my-sm-5{margin-top:3rem!important}.mr-sm-5,.mx-sm-5{margin-right:3rem!important}.mb-sm-5,.my-sm-5{margin-bottom:3rem!important}.ml-sm-5,.mx-sm-5{margin-left:3rem!important}.p-sm-0{padding:0!important}.pt-sm-0,.py-sm-0{padding-top:0!important}.pr-sm-0,.px-sm-0{padding-right:0!important}.pb-sm-0,.py-sm-0{padding-bottom:0!important}.pl-sm-0,.px-sm-0{padding-left:0!important}.p-sm-1{padding:.25rem!important}.pt-sm-1,.py-sm-1{padding-top:.25rem!important}.pr-sm-1,.px-sm-1{padding-right:.25rem!important}.pb-sm-1,.py-sm-1{padding-bottom:.25rem!important}.pl-sm-1,.px-sm-1{padding-left:.25rem!important}.p-sm-2{padding:.5rem!important}.pt-sm-2,.py-sm-2{padding-top:.5rem!important}.pr-sm-2,.px-sm-2{padding-right:.5rem!important}.pb-sm-2,.py-sm-2{padding-bottom:.5rem!important}.pl-sm-2,.px-sm-2{padding-left:.5rem!important}.p-sm-3{padding:1rem!important}.pt-sm-3,.py-sm-3{padding-top:1rem!important}.pr-sm-3,.px-sm-3{padding-right:1rem!important}.pb-sm-3,.py-sm-3{padding-bottom:1rem!important}.pl-sm-3,.px-sm-3{padding-left:1rem!important}.p-sm-4{padding:1.5rem!important}.pt-sm-4,.py-sm-4{padding-top:1.5rem!important}.pr-sm-4,.px-sm-4{padding-right:1.5rem!important}.pb-sm-4,.py-sm-4{padding-bottom:1.5rem!important}.pl-sm-4,.px-sm-4{padding-left:1.5rem!important}.p-sm-5{padding:3rem!important}.pt-sm-5,.py-sm-5{padding-top:3rem!important}.pr-sm-5,.px-sm-5{padding-right:3rem!important}.pb-sm-5,.py-sm-5{padding-bottom:3rem!important}.pl-sm-5,.px-sm-5{padding-left:3rem!important}.m-sm-auto{margin:auto!important}.mt-sm-auto,.my-sm-auto{margin-top:auto!important}.mr-sm-auto,.mx-sm-auto{margin-right:auto!important}.mb-sm-auto,.my-sm-auto{margin-bottom:auto!important}.ml-sm-auto,.mx-sm-auto{margin-left:auto!important}}@media (min-width:768px){.m-md-0{margin:0!important}.mt-md-0,.my-md-0{margin-top:0!important}.mr-md-0,.mx-md-0{margin-right:0!important}.mb-md-0,.my-md-0{margin-bottom:0!important}.ml-md-0,.mx-md-0{margin-left:0!important}.m-md-1{margin:.25rem!important}.mt-md-1,.my-md-1{margin-top:.25rem!important}.mr-md-1,.mx-md-1{margin-right:.25rem!important}.mb-md-1,.my-md-1{margin-bottom:.25rem!important}.ml-md-1,.mx-md-1{margin-left:.25rem!important}.m-md-2{margin:.5rem!important}.mt-md-2,.my-md-2{margin-top:.5rem!important}.mr-md-2,.mx-md-2{margin-right:.5rem!important}.mb-md-2,.my-md-2{margin-bottom:.5rem!important}.ml-md-2,.mx-md-2{margin-left:.5rem!important}.m-md-3{margin:1rem!important}.mt-md-3,.my-md-3{margin-top:1rem!important}.mr-md-3,.mx-md-3{margin-right:1rem!important}.mb-md-3,.my-md-3{margin-bottom:1rem!important}.ml-md-3,.mx-md-3{margin-left:1rem!important}.m-md-4{margin:1.5rem!important}.mt-md-4,.my-md-4{margin-top:1.5rem!important}.mr-md-4,.mx-md-4{margin-right:1.5rem!important}.mb-md-4,.my-md-4{margin-bottom:1.5rem!important}.ml-md-4,.mx-md-4{margin-left:1.5rem!important}.m-md-5{margin:3rem!important}.mt-md-5,.my-md-5{margin-top:3rem!important}.mr-md-5,.mx-md-5{margin-right:3rem!important}.mb-md-5,.my-md-5{margin-bottom:3rem!important}.ml-md-5,.mx-md-5{margin-left:3rem!important}.p-md-0{padding:0!important}.pt-md-0,.py-md-0{padding-top:0!important}.pr-md-0,.px-md-0{padding-right:0!important}.pb-md-0,.py-md-0{padding-bottom:0!important}.pl-md-0,.px-md-0{padding-left:0!important}.p-md-1{padding:.25rem!important}.pt-md-1,.py-md-1{padding-top:.25rem!important}.pr-md-1,.px-md-1{padding-right:.25rem!important}.pb-md-1,.py-md-1{padding-bottom:.25rem!important}.pl-md-1,.px-md-1{padding-left:.25rem!important}.p-md-2{padding:.5rem!important}.pt-md-2,.py-md-2{padding-top:.5rem!important}.pr-md-2,.px-md-2{padding-right:.5rem!important}.pb-md-2,.py-md-2{padding-bottom:.5rem!important}.pl-md-2,.px-md-2{padding-left:.5rem!important}.p-md-3{padding:1rem!important}.pt-md-3,.py-md-3{padding-top:1rem!important}.pr-md-3,.px-md-3{padding-right:1rem!important}.pb-md-3,.py-md-3{padding-bottom:1rem!important}.pl-md-3,.px-md-3{padding-left:1rem!important}.p-md-4{padding:1.5rem!important}.pt-md-4,.py-md-4{padding-top:1.5rem!important}.pr-md-4,.px-md-4{padding-right:1.5rem!important}.pb-md-4,.py-md-4{padding-bottom:1.5rem!important}.pl-md-4,.px-md-4{padding-left:1.5rem!important}.p-md-5{padding:3rem!important}.pt-md-5,.py-md-5{padding-top:3rem!important}.pr-md-5,.px-md-5{padding-right:3rem!important}.pb-md-5,.py-md-5{padding-bottom:3rem!important}.pl-md-5,.px-md-5{padding-left:3rem!important}.m-md-auto{margin:auto!important}.mt-md-auto,.my-md-auto{margin-top:auto!important}.mr-md-auto,.mx-md-auto{margin-right:auto!important}.mb-md-auto,.my-md-auto{margin-bottom:auto!important}.ml-md-auto,.mx-md-auto{margin-left:auto!important}}@media (min-width:992px){.m-lg-0{margin:0!important}.mt-lg-0,.my-lg-0{margin-top:0!important}.mr-lg-0,.mx-lg-0{margin-right:0!important}.mb-lg-0,.my-lg-0{margin-bottom:0!important}.ml-lg-0,.mx-lg-0{margin-left:0!important}.m-lg-1{margin:.25rem!important}.mt-lg-1,.my-lg-1{margin-top:.25rem!important}.mr-lg-1,.mx-lg-1{margin-right:.25rem!important}.mb-lg-1,.my-lg-1{margin-bottom:.25rem!important}.ml-lg-1,.mx-lg-1{margin-left:.25rem!important}.m-lg-2{margin:.5rem!important}.mt-lg-2,.my-lg-2{margin-top:.5rem!important}.mr-lg-2,.mx-lg-2{margin-right:.5rem!important}.mb-lg-2,.my-lg-2{margin-bottom:.5rem!important}.ml-lg-2,.mx-lg-2{margin-left:.5rem!important}.m-lg-3{margin:1rem!important}.mt-lg-3,.my-lg-3{margin-top:1rem!important}.mr-lg-3,.mx-lg-3{margin-right:1rem!important}.mb-lg-3,.my-lg-3{margin-bottom:1rem!important}.ml-lg-3,.mx-lg-3{margin-left:1rem!important}.m-lg-4{margin:1.5rem!important}.mt-lg-4,.my-lg-4{margin-top:1.5rem!important}.mr-lg-4,.mx-lg-4{margin-right:1.5rem!important}.mb-lg-4,.my-lg-4{margin-bottom:1.5rem!important}.ml-lg-4,.mx-lg-4{margin-left:1.5rem!important}.m-lg-5{margin:3rem!important}.mt-lg-5,.my-lg-5{margin-top:3rem!important}.mr-lg-5,.mx-lg-5{margin-right:3rem!important}.mb-lg-5,.my-lg-5{margin-bottom:3rem!important}.ml-lg-5,.mx-lg-5{margin-left:3rem!important}.p-lg-0{padding:0!important}.pt-lg-0,.py-lg-0{padding-top:0!important}.pr-lg-0,.px-lg-0{padding-right:0!important}.pb-lg-0,.py-lg-0{padding-bottom:0!important}.pl-lg-0,.px-lg-0{padding-left:0!important}.p-lg-1{padding:.25rem!important}.pt-lg-1,.py-lg-1{padding-top:.25rem!important}.pr-lg-1,.px-lg-1{padding-right:.25rem!important}.pb-lg-1,.py-lg-1{padding-bottom:.25rem!important}.pl-lg-1,.px-lg-1{padding-left:.25rem!important}.p-lg-2{padding:.5rem!important}.pt-lg-2,.py-lg-2{padding-top:.5rem!important}.pr-lg-2,.px-lg-2{padding-right:.5rem!important}.pb-lg-2,.py-lg-2{padding-bottom:.5rem!important}.pl-lg-2,.px-lg-2{padding-left:.5rem!important}.p-lg-3{padding:1rem!important}.pt-lg-3,.py-lg-3{padding-top:1rem!important}.pr-lg-3,.px-lg-3{padding-right:1rem!important}.pb-lg-3,.py-lg-3{padding-bottom:1rem!important}.pl-lg-3,.px-lg-3{padding-left:1rem!important}.p-lg-4{padding:1.5rem!important}.pt-lg-4,.py-lg-4{padding-top:1.5rem!important}.pr-lg-4,.px-lg-4{padding-right:1.5rem!important}.pb-lg-4,.py-lg-4{padding-bottom:1.5rem!important}.pl-lg-4,.px-lg-4{padding-left:1.5rem!important}.p-lg-5{padding:3rem!important}.pt-lg-5,.py-lg-5{padding-top:3rem!important}.pr-lg-5,.px-lg-5{padding-right:3rem!important}.pb-lg-5,.py-lg-5{padding-bottom:3rem!important}.pl-lg-5,.px-lg-5{padding-left:3rem!important}.m-lg-auto{margin:auto!important}.mt-lg-auto,.my-lg-auto{margin-top:auto!important}.mr-lg-auto,.mx-lg-auto{margin-right:auto!important}.mb-lg-auto,.my-lg-auto{margin-bottom:auto!important}.ml-lg-auto,.mx-lg-auto{margin-left:auto!important}}@media (min-width:1200px){.m-xl-0{margin:0!important}.mt-xl-0,.my-xl-0{margin-top:0!important}.mr-xl-0,.mx-xl-0{margin-right:0!important}.mb-xl-0,.my-xl-0{margin-bottom:0!important}.ml-xl-0,.mx-xl-0{margin-left:0!important}.m-xl-1{margin:.25rem!important}.mt-xl-1,.my-xl-1{margin-top:.25rem!important}.mr-xl-1,.mx-xl-1{margin-right:.25rem!important}.mb-xl-1,.my-xl-1{margin-bottom:.25rem!important}.ml-xl-1,.mx-xl-1{margin-left:.25rem!important}.m-xl-2{margin:.5rem!important}.mt-xl-2,.my-xl-2{margin-top:.5rem!important}.mr-xl-2,.mx-xl-2{margin-right:.5rem!important}.mb-xl-2,.my-xl-2{margin-bottom:.5rem!important}.ml-xl-2,.mx-xl-2{margin-left:.5rem!important}.m-xl-3{margin:1rem!important}.mt-xl-3,.my-xl-3{margin-top:1rem!important}.mr-xl-3,.mx-xl-3{margin-right:1rem!important}.mb-xl-3,.my-xl-3{margin-bottom:1rem!important}.ml-xl-3,.mx-xl-3{margin-left:1rem!important}.m-xl-4{margin:1.5rem!important}.mt-xl-4,.my-xl-4{margin-top:1.5rem!important}.mr-xl-4,.mx-xl-4{margin-right:1.5rem!important}.mb-xl-4,.my-xl-4{margin-bottom:1.5rem!important}.ml-xl-4,.mx-xl-4{margin-left:1.5rem!important}.m-xl-5{margin:3rem!important}.mt-xl-5,.my-xl-5{margin-top:3rem!important}.mr-xl-5,.mx-xl-5{margin-right:3rem!important}.mb-xl-5,.my-xl-5{margin-bottom:3rem!important}.ml-xl-5,.mx-xl-5{margin-left:3rem!important}.p-xl-0{padding:0!important}.pt-xl-0,.py-xl-0{padding-top:0!important}.pr-xl-0,.px-xl-0{padding-right:0!important}.pb-xl-0,.py-xl-0{padding-bottom:0!important}.pl-xl-0,.px-xl-0{padding-left:0!important}.p-xl-1{padding:.25rem!important}.pt-xl-1,.py-xl-1{padding-top:.25rem!important}.pr-xl-1,.px-xl-1{padding-right:.25rem!important}.pb-xl-1,.py-xl-1{padding-bottom:.25rem!important}.pl-xl-1,.px-xl-1{padding-left:.25rem!important}.p-xl-2{padding:.5rem!important}.pt-xl-2,.py-xl-2{padding-top:.5rem!important}.pr-xl-2,.px-xl-2{padding-right:.5rem!important}.pb-xl-2,.py-xl-2{padding-bottom:.5rem!important}.pl-xl-2,.px-xl-2{padding-left:.5rem!important}.p-xl-3{padding:1rem!important}.pt-xl-3,.py-xl-3{padding-top:1rem!important}.pr-xl-3,.px-xl-3{padding-right:1rem!important}.pb-xl-3,.py-xl-3{padding-bottom:1rem!important}.pl-xl-3,.px-xl-3{padding-left:1rem!important}.p-xl-4{padding:1.5rem!important}.pt-xl-4,.py-xl-4{padding-top:1.5rem!important}.pr-xl-4,.px-xl-4{padding-right:1.5rem!important}.pb-xl-4,.py-xl-4{padding-bottom:1.5rem!important}.pl-xl-4,.px-xl-4{padding-left:1.5rem!important}.p-xl-5{padding:3rem!important}.pt-xl-5,.py-xl-5{padding-top:3rem!important}.pr-xl-5,.px-xl-5{padding-right:3rem!important}.pb-xl-5,.py-xl-5{padding-bottom:3rem!important}.pl-xl-5,.px-xl-5{padding-left:3rem!important}.m-xl-auto{margin:auto!important}.mt-xl-auto,.my-xl-auto{margin-top:auto!important}.mr-xl-auto,.mx-xl-auto{margin-right:auto!important}.mb-xl-auto,.my-xl-auto{margin-bottom:auto!important}.ml-xl-auto,.mx-xl-auto{margin-left:auto!important}}.text-monospace{font-family:SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace}.text-justify{text-align:justify!important}.text-nowrap{white-space:nowrap!important}.text-truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.text-left{text-align:left!important}.text-right{text-align:right!important}.text-center{text-align:center!important}@media (min-width:576px){.text-sm-left{text-align:left!important}.text-sm-right{text-align:right!important}.text-sm-center{text-align:center!important}}@media (min-width:768px){.text-md-left{text-align:left!important}.text-md-right{text-align:right!important}.text-md-center{text-align:center!important}}@media (min-width:992px){.text-lg-left{text-align:left!important}.text-lg-right{text-align:right!important}.text-lg-center{text-align:center!important}}@media (min-width:1200px){.text-xl-left{text-align:left!important}.text-xl-right{text-align:right!important}.text-xl-center{text-align:center!important}}.text-lowercase{text-transform:lowercase!important}.text-uppercase{text-transform:uppercase!important}.text-capitalize{text-transform:capitalize!important}.font-weight-light{font-weight:300!important}.font-weight-normal{font-weight:400!important}.font-weight-bold{font-weight:700!important}.font-italic{font-style:italic!important}.text-white{color:#fff!important}.text-primary{color:#ff5e14!important}a.text-primary:focus,a.text-primary:hover{color:#0062cc!important}.text-secondary{color:#6c757d!important}a.text-secondary:focus,a.text-secondary:hover{color:#545b62!important}.text-success{color:#28a745!important}a.text-success:focus,a.text-success:hover{color:#1e7e34!important}.text-info{color:#17a2b8!important}a.text-info:focus,a.text-info:hover{color:#117a8b!important}.text-warning{color:#ffc107!important}a.text-warning:focus,a.text-warning:hover{color:#d39e00!important}.text-danger{color:#dc3545!important}a.text-danger:focus,a.text-danger:hover{color:#bd2130!important}.text-light{color:#f8f9fa!important}a.text-light:focus,a.text-light:hover{color:#dae0e5!important}.text-dark{color:#343a40!important}a.text-dark:focus,a.text-dark:hover{color:#1d2124!important}.text-body{color:#212529!important}.text-muted{color:#6c757d!important}.text-black-50{color:rgba(0,0,0,.5)!important}.text-white-50{color:rgba(255,255,255,.5)!important}.text-hide{font:0/0 a;color:transparent;text-shadow:none;background-color:transparent;border:0}.visible{visibility:visible!important}.invisible{visibility:hidden!important}@media print{*,::after,::before{text-shadow:none!important;-webkit-box-shadow:none!important;box-shadow:none!important}a:not(.btn){text-decoration:underline}abbr[title]::after{content:" (" attr(title) ")"}pre{white-space:pre-wrap!important}blockquote,pre{border:1px solid #adb5bd;page-break-inside:avoid}thead{display:table-header-group}img,tr{page-break-inside:avoid}h2,h3,p{orphans:3;widows:3}h2,h3{page-break-after:avoid}@page{size:a3}body{min-width:992px!important}.container{min-width:992px!important}.navbar{display:none}.badge{border:1px solid #000}.table{border-collapse:collapse!important}.table td,.table th{background-color:#fff!important}.table-bordered td,.table-bordered th{border:1px solid #dee2e6!important}.table-dark{color:inherit}.table-dark tbody+tbody,.table-dark td,.table-dark th,.table-dark thead th{border-color:#dee2e6}.table .thead-dark th{color:inherit;border-color:#dee2e6}}
\ No newline at end of file
diff --git a/public/static/home/assets/css/em-breadcrumb.css b/public/static/home/assets/css/em-breadcrumb.css
new file mode 100644
index 0000000..e69de29
--- /dev/null
+++ b/public/static/home/assets/css/em-breadcrumb.css
diff --git a/public/static/home/assets/css/plugin_theme_css.css b/public/static/home/assets/css/plugin_theme_css.css
new file mode 100644
index 0000000..ef5a037
--- /dev/null
+++ b/public/static/home/assets/css/plugin_theme_css.css
@@ -0,0 +1,99 @@
+@charset "UTF-8";/*!
+ * animate.css -http://daneden.me/animate
+ * Version - 3.5.2
+ * Licensed under the MIT license - http://opensource.org/licenses/MIT
+ *
+ * Copyright (c) 2018 Daniel Eden
+ */.animated{animation-duration:1s;animation-fill-mode:both}.animated.infinite{animation-iteration-count:infinite}.animated.hinge{animation-duration:2s}.animated.bounceIn,.animated.bounceOut,.animated.flipOutX,.animated.flipOutY{animation-duration:.75s}@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 bounceOut{20%{transform:scale3d(.9,.9,.9)}50%,55%{opacity:1;transform:scale3d(1.1,1.1,1.1)}to{opacity:0;transform:scale3d(.3,.3,.3)}}.bounceOut{animation-name:bounceOut}@keyframes bounceOutDown{20%{transform:translate3d(0,10px,0)}40%,45%{opacity:1;transform:translate3d(0,-20px,0)}to{opacity:0;transform:translate3d(0,2000px,0)}}.bounceOutDown{animation-name:bounceOutDown}@keyframes bounceOutLeft{20%{opacity:1;transform:translate3d(20px,0,0)}to{opacity:0;transform:translate3d(-2000px,0,0)}}.bounceOutLeft{animation-name:bounceOutLeft}@keyframes bounceOutRight{20%{opacity:1;transform:translate3d(-20px,0,0)}to{opacity:0;transform:translate3d(2000px,0,0)}}.bounceOutRight{animation-name:bounceOutRight}@keyframes bounceOutUp{20%{transform:translate3d(0,-10px,0)}40%,45%{opacity:1;transform:translate3d(0,20px,0)}to{opacity:0;transform:translate3d(0,-2000px,0)}}.bounceOutUp{animation-name:bounceOutUp}@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 fadeInDownBig{from{opacity:0;transform:translate3d(0,-2000px,0)}to{opacity:1;transform:none}}.fadeInDownBig{animation-name:fadeInDownBig}@keyframes fadeInLeft{from{opacity:0;transform:translate3d(-100%,0,0)}to{opacity:1;transform:none}}.fadeInLeft{animation-name:fadeInLeft}@keyframes fadeInLeftBig{from{opacity:0;transform:translate3d(-2000px,0,0)}to{opacity:1;transform:none}}.fadeInLeftBig{animation-name:fadeInLeftBig}@keyframes fadeInRight{from{opacity:0;transform:translate3d(100%,0,0)}to{opacity:1;transform:none}}.fadeInRight{animation-name:fadeInRight}@keyframes fadeInRightBig{from{opacity:0;transform:translate3d(2000px,0,0)}to{opacity:1;transform:none}}.fadeInRightBig{animation-name:fadeInRightBig}@keyframes fadeInUp{from{opacity:0;transform:translate3d(0,100%,0)}to{opacity:1;transform:none}}.fadeInUp{animation-name:fadeInUp}@keyframes fadeInUpBig{from{opacity:0;transform:translate3d(0,2000px,0)}to{opacity:1;transform:none}}.fadeInUpBig{animation-name:fadeInUpBig}@keyframes fadeOut{from{opacity:1}to{opacity:0}}.fadeOut{animation-name:fadeOut}@keyframes fadeOutDown{from{opacity:1}to{opacity:0;transform:translate3d(0,100%,0)}}.fadeOutDown{animation-name:fadeOutDown}@keyframes fadeOutDownBig{from{opacity:1}to{opacity:0;transform:translate3d(0,2000px,0)}}.fadeOutDownBig{animation-name:fadeOutDownBig}@keyframes fadeOutLeft{from{opacity:1}to{opacity:0;transform:translate3d(-100%,0,0)}}.fadeOutLeft{animation-name:fadeOutLeft}@keyframes fadeOutLeftBig{from{opacity:1}to{opacity:0;transform:translate3d(-2000px,0,0)}}.fadeOutLeftBig{animation-name:fadeOutLeftBig}@keyframes fadeOutRight{from{opacity:1}to{opacity:0;transform:translate3d(100%,0,0)}}.fadeOutRight{animation-name:fadeOutRight}@keyframes fadeOutRightBig{from{opacity:1}to{opacity:0;transform:translate3d(2000px,0,0)}}.fadeOutRightBig{animation-name:fadeOutRightBig}@keyframes fadeOutUp{from{opacity:1}to{opacity:0;transform:translate3d(0,-100%,0)}}.fadeOutUp{animation-name:fadeOutUp}@keyframes fadeOutUpBig{from{opacity:1}to{opacity:0;transform:translate3d(0,-2000px,0)}}.fadeOutUpBig{animation-name:fadeOutUpBig}@keyframes flip{from{transform:perspective(400px) rotate3d(0,1,0,-360deg);animation-timing-function:ease-out}40%{transform:perspective(400px) translate3d(0,0,150px) rotate3d(0,1,0,-190deg);animation-timing-function:ease-out}50%{transform:perspective(400px) translate3d(0,0,150px) rotate3d(0,1,0,-170deg);animation-timing-function:ease-in}80%{transform:perspective(400px) scale3d(.95,.95,.95);animation-timing-function:ease-in}to{transform:perspective(400px);animation-timing-function:ease-in}}.animated.flip{-webkit-backface-visibility:visible;backface-visibility:visible;animation-name:flip}@keyframes flipInX{from{transform:perspective(400px) rotate3d(1,0,0,90deg);animation-timing-function:ease-in;opacity:0}40%{transform:perspective(400px) rotate3d(1,0,0,-20deg);animation-timing-function:ease-in}60%{transform:perspective(400px) rotate3d(1,0,0,10deg);opacity:1}80%{transform:perspective(400px) rotate3d(1,0,0,-5deg)}to{transform:perspective(400px)}}.flipInX{-webkit-backface-visibility:visible!important;backface-visibility:visible!important;animation-name:flipInX}.flipInY,.flipOutX{-webkit-backface-visibility:visible!important}@keyframes flipInY{from{transform:perspective(400px) rotate3d(0,1,0,90deg);animation-timing-function:ease-in;opacity:0}40%{transform:perspective(400px) rotate3d(0,1,0,-20deg);animation-timing-function:ease-in}60%{transform:perspective(400px) rotate3d(0,1,0,10deg);opacity:1}80%{transform:perspective(400px) rotate3d(0,1,0,-5deg)}to{transform:perspective(400px)}}.flipInY{backface-visibility:visible!important;animation-name:flipInY}@keyframes flipOutX{from{transform:perspective(400px)}30%{transform:perspective(400px) rotate3d(1,0,0,-20deg);opacity:1}to{transform:perspective(400px) rotate3d(1,0,0,90deg);opacity:0}}.flipOutX{animation-name:flipOutX;backface-visibility:visible!important}@keyframes flipOutY{from{transform:perspective(400px)}30%{transform:perspective(400px) rotate3d(0,1,0,-15deg);opacity:1}to{transform:perspective(400px) rotate3d(0,1,0,90deg);opacity:0}}.flipOutY{-webkit-backface-visibility:visible!important;backface-visibility:visible!important;animation-name:flipOutY}@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 lightSpeedOut{from{opacity:1}to{transform:translate3d(100%,0,0) skewX(30deg);opacity:0}}.lightSpeedOut{animation-name:lightSpeedOut;animation-timing-function:ease-in}@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 rotateOut{from{transform-origin:center;opacity:1}to{transform-origin:center;transform:rotate3d(0,0,1,200deg);opacity:0}}.rotateOut{animation-name:rotateOut}@keyframes rotateOutDownLeft{from{transform-origin:left bottom;opacity:1}to{transform-origin:left bottom;transform:rotate3d(0,0,1,45deg);opacity:0}}.rotateOutDownLeft{animation-name:rotateOutDownLeft}@keyframes rotateOutDownRight{from{transform-origin:right bottom;opacity:1}to{transform-origin:right bottom;transform:rotate3d(0,0,1,-45deg);opacity:0}}.rotateOutDownRight{animation-name:rotateOutDownRight}@keyframes rotateOutUpLeft{from{transform-origin:left bottom;opacity:1}to{transform-origin:left bottom;transform:rotate3d(0,0,1,-45deg);opacity:0}}.rotateOutUpLeft{animation-name:rotateOutUpLeft}@keyframes rotateOutUpRight{from{transform-origin:right bottom;opacity:1}to{transform-origin:right bottom;transform:rotate3d(0,0,1,90deg);opacity:0}}.rotateOutUpRight{animation-name:rotateOutUpRight}@keyframes hinge{0%{transform-origin:top left;animation-timing-function:ease-in-out}20%,60%{transform:rotate3d(0,0,1,80deg);transform-origin:top left;animation-timing-function:ease-in-out}40%,80%{transform:rotate3d(0,0,1,60deg);transform-origin:top left;animation-timing-function:ease-in-out;opacity:1}to{transform:translate3d(0,700px,0);opacity:0}}.hinge{animation-name:hinge}@keyframes jackInTheBox{from{opacity:0;transform:scale(.1) rotate(30deg);transform-origin:center bottom}50%{transform:rotate(-10deg)}70%{transform:rotate(3deg)}to{opacity:1;transform:scale(1)}}.jackInTheBox{animation-name:jackInTheBox}@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 rollOut{from{opacity:1}to{opacity:0;transform:translate3d(100%,0,0) rotate3d(0,0,1,120deg)}}.rollOut{animation-name:rollOut}@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 zoomOut{from{opacity:1}50%{opacity:0;transform:scale3d(.3,.3,.3)}to{opacity:0}}.zoomOut{animation-name:zoomOut}@keyframes zoomOutDown{40%{opacity:1;transform:scale3d(.475,.475,.475) translate3d(0,-60px,0);animation-timing-function:cubic-bezier(.55,.055,.675,.19)}to{opacity:0;transform:scale3d(.1,.1,.1) translate3d(0,2000px,0);transform-origin:center bottom;animation-timing-function:cubic-bezier(.175,.885,.32,1)}}.zoomOutDown{animation-name:zoomOutDown}@keyframes zoomOutLeft{40%{opacity:1;transform:scale3d(.475,.475,.475) translate3d(42px,0,0)}to{opacity:0;transform:scale(.1) translate3d(-2000px,0,0);transform-origin:left center}}.zoomOutLeft{animation-name:zoomOutLeft}@keyframes zoomOutRight{40%{opacity:1;transform:scale3d(.475,.475,.475) translate3d(-42px,0,0)}to{opacity:0;transform:scale(.1) translate3d(2000px,0,0);transform-origin:right center}}.zoomOutRight{animation-name:zoomOutRight}@keyframes zoomOutUp{40%{opacity:1;transform:scale3d(.475,.475,.475) translate3d(0,60px,0);animation-timing-function:cubic-bezier(.55,.055,.675,.19)}to{opacity:0;transform:scale3d(.1,.1,.1) translate3d(0,-2000px,0);transform-origin:center bottom;animation-timing-function:cubic-bezier(.175,.885,.32,1)}}.zoomOutUp{animation-name:zoomOutUp}@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}@keyframes slideOutDown{from{transform:translate3d(0,0,0)}to{visibility:hidden;transform:translate3d(0,100%,0)}}.slideOutDown{animation-name:slideOutDown}@keyframes slideOutLeft{from{transform:translate3d(0,0,0)}to{visibility:hidden;transform:translate3d(-100%,0,0)}}.slideOutLeft{animation-name:slideOutLeft}@keyframes slideOutRight{from{transform:translate3d(0,0,0)}to{visibility:hidden;transform:translate3d(100%,0,0)}}.slideOutRight{animation-name:slideOutRight}@keyframes slideOutUp{from{transform:translate3d(0,0,0)}to{visibility:hidden;transform:translate3d(0,-100%,0)}}.slideOutUp{animation-name:slideOutUp}
+
+
+ /* animate headline */
+
+ .cd-words-wrapper{display:inline-block;position:relative;text-align:left}.cd-words-wrapper b{display:inline-block;position:absolute;white-space:nowrap;left:0;top:0}.cd-words-wrapper b.is-visible{position:relative}.no-js .cd-words-wrapper b{opacity:0}.no-js .cd-words-wrapper b.is-visible{opacity:1}.cd-headline.rotate-1 .cd-words-wrapper{-webkit-perspective:300px;-moz-perspective:300px;perspective:300px}.cd-headline.rotate-1 b{opacity:0;-webkit-transform-origin:50% 100%;-moz-transform-origin:50% 100%;-ms-transform-origin:50% 100%;-o-transform-origin:50% 100%;transform-origin:50% 100%;-webkit-transform:rotateX(180deg);-moz-transform:rotateX(180deg);-ms-transform:rotateX(180deg);-o-transform:rotateX(180deg);transform:rotateX(180deg)}.cd-headline.rotate-1 b.is-visible{opacity:1;-webkit-transform:rotateX(0deg);-moz-transform:rotateX(0deg);-ms-transform:rotateX(0deg);-o-transform:rotateX(0deg);transform:rotateX(0deg);-webkit-animation:cd-rotate-1-in 1.2s;-moz-animation:cd-rotate-1-in 1.2s;animation:cd-rotate-1-in 1.2s}.cd-headline.rotate-1 b.is-hidden{-webkit-transform:rotateX(180deg);-moz-transform:rotateX(180deg);-ms-transform:rotateX(180deg);-o-transform:rotateX(180deg);transform:rotateX(180deg);-webkit-animation:cd-rotate-1-out 1.2s;-moz-animation:cd-rotate-1-out 1.2s;animation:cd-rotate-1-out 1.2s}@-webkit-keyframes cd-rotate-1-in{0%{-webkit-transform:rotateX(180deg);opacity:0}35%{-webkit-transform:rotateX(120deg);opacity:0}65%{opacity:0}100%{-webkit-transform:rotateX(360deg);opacity:1}}@-moz-keyframes cd-rotate-1-in{0%{-moz-transform:rotateX(180deg);opacity:0}35%{-moz-transform:rotateX(120deg);opacity:0}65%{opacity:0}100%{-moz-transform:rotateX(360deg);opacity:1}}@keyframes cd-rotate-1-in{0%{-webkit-transform:rotateX(180deg);-moz-transform:rotateX(180deg);-ms-transform:rotateX(180deg);-o-transform:rotateX(180deg);transform:rotateX(180deg);opacity:0}35%{-webkit-transform:rotateX(120deg);-moz-transform:rotateX(120deg);-ms-transform:rotateX(120deg);-o-transform:rotateX(120deg);transform:rotateX(120deg);opacity:0}65%{opacity:0}100%{-webkit-transform:rotateX(360deg);-moz-transform:rotateX(360deg);-ms-transform:rotateX(360deg);-o-transform:rotateX(360deg);transform:rotateX(360deg);opacity:1}}@-webkit-keyframes cd-rotate-1-out{0%{-webkit-transform:rotateX(0deg);opacity:1}35%{-webkit-transform:rotateX(-40deg);opacity:1}65%{opacity:0}100%{-webkit-transform:rotateX(180deg);opacity:0}}@-moz-keyframes cd-rotate-1-out{0%{-moz-transform:rotateX(0deg);opacity:1}35%{-moz-transform:rotateX(-40deg);opacity:1}65%{opacity:0}100%{-moz-transform:rotateX(180deg);opacity:0}}@keyframes cd-rotate-1-out{0%{-webkit-transform:rotateX(0deg);-moz-transform:rotateX(0deg);-ms-transform:rotateX(0deg);-o-transform:rotateX(0deg);transform:rotateX(0deg);opacity:1}35%{-webkit-transform:rotateX(-40deg);-moz-transform:rotateX(-40deg);-ms-transform:rotateX(-40deg);-o-transform:rotateX(-40deg);transform:rotateX(-40deg);opacity:1}65%{opacity:0}100%{-webkit-transform:rotateX(180deg);-moz-transform:rotateX(180deg);-ms-transform:rotateX(180deg);-o-transform:rotateX(180deg);transform:rotateX(180deg);opacity:0}}.cd-headline.type .cd-words-wrapper{vertical-align:top;overflow:hidden}.cd-headline.type .cd-words-wrapper::after{content:'';position:absolute;right:0;top:50%;bottom:auto;-webkit-transform:translateY(-50%);-moz-transform:translateY(-50%);-ms-transform:translateY(-50%);-o-transform:translateY(-50%);transform:translateY(-50%);height:90%;width:1px;background-color:#aebcb9}.cd-headline.type .cd-words-wrapper.waiting::after{-webkit-animation:cd-pulse 1s infinite;-moz-animation:cd-pulse 1s infinite;animation:cd-pulse 1s infinite}.cd-headline.type .cd-words-wrapper.selected{background-color:#aebcb9}.cd-headline.type .cd-words-wrapper.selected::after{visibility:hidden}.cd-headline.type .cd-words-wrapper.selected b{color:#0d0d0d}.cd-headline.type b{visibility:hidden}.cd-headline.type b.is-visible{visibility:visible}.cd-headline.type i{position:absolute;visibility:hidden}.cd-headline.type i.in{position:relative;visibility:visible}@-webkit-keyframes cd-pulse{0%{-webkit-transform:translateY(-50%) scale(1);opacity:1}40%{-webkit-transform:translateY(-50%) scale(0.9);opacity:0}100%{-webkit-transform:translateY(-50%) scale(0);opacity:0}}@-moz-keyframes cd-pulse{0%{-moz-transform:translateY(-50%) scale(1);opacity:1}40%{-moz-transform:translateY(-50%) scale(0.9);opacity:0}100%{-moz-transform:translateY(-50%) scale(0);opacity:0}}@keyframes cd-pulse{0%{-webkit-transform:translateY(-50%) scale(1);-moz-transform:translateY(-50%) scale(1);-ms-transform:translateY(-50%) scale(1);-o-transform:translateY(-50%) scale(1);transform:translateY(-50%) scale(1);opacity:1}40%{-webkit-transform:translateY(-50%) scale(0.9);-moz-transform:translateY(-50%) scale(0.9);-ms-transform:translateY(-50%) scale(0.9);-o-transform:translateY(-50%) scale(0.9);transform:translateY(-50%) scale(0.9);opacity:0}100%{-webkit-transform:translateY(-50%) scale(0);-moz-transform:translateY(-50%) scale(0);-ms-transform:translateY(-50%) scale(0);-o-transform:translateY(-50%) scale(0);transform:translateY(-50%) scale(0);opacity:0}}.cd-headline.rotate-2 .cd-words-wrapper{-webkit-perspective:300px;-moz-perspective:300px;perspective:300px}.cd-headline.rotate-2 i, .cd-headline.rotate-2 em{display:inline-block;-webkit-backface-visibility:hidden;backface-visibility:hidden}.cd-headline.rotate-2 b{opacity:0}.cd-headline.rotate-2 i{-webkit-transform-style:preserve-3d;-moz-transform-style:preserve-3d;-ms-transform-style:preserve-3d;-o-transform-style:preserve-3d;transform-style:preserve-3d;-webkit-transform:translateZ(-20px) rotateX(90deg);-moz-transform:translateZ(-20px) rotateX(90deg);-ms-transform:translateZ(-20px) rotateX(90deg);-o-transform:translateZ(-20px) rotateX(90deg);transform:translateZ(-20px) rotateX(90deg);opacity:0}.is-visible .cd-headline.rotate-2 i{opacity:1}.cd-headline.rotate-2 i.in{-webkit-animation:cd-rotate-2-in 0.4s forwards;-moz-animation:cd-rotate-2-in 0.4s forwards;animation:cd-rotate-2-in 0.4s forwards}.cd-headline.rotate-2 i.out{-webkit-animation:cd-rotate-2-out 0.4s forwards;-moz-animation:cd-rotate-2-out 0.4s forwards;animation:cd-rotate-2-out 0.4s forwards}.cd-headline.rotate-2 em{-webkit-transform:translateZ(20px);-moz-transform:translateZ(20px);-ms-transform:translateZ(20px);-o-transform:translateZ(20px);transform:translateZ(20px)}.no-csstransitions .cd-headline.rotate-2 i{-webkit-transform:rotateX(0deg);-moz-transform:rotateX(0deg);-ms-transform:rotateX(0deg);-o-transform:rotateX(0deg);transform:rotateX(0deg);opacity:0}.no-csstransitions .cd-headline.rotate-2 i em{-webkit-transform:scale(1);-moz-transform:scale(1);-ms-transform:scale(1);-o-transform:scale(1);transform:scale(1)}.no-csstransitions .cd-headline.rotate-2 .is-visible i{opacity:1}@-webkit-keyframes cd-rotate-2-in{0%{opacity:0;-webkit-transform:translateZ(-20px) rotateX(90deg)}60%{opacity:1;-webkit-transform:translateZ(-20px) rotateX(-10deg)}100%{opacity:1;-webkit-transform:translateZ(-20px) rotateX(0deg)}}@-moz-keyframes cd-rotate-2-in{0%{opacity:0;-moz-transform:translateZ(-20px) rotateX(90deg)}60%{opacity:1;-moz-transform:translateZ(-20px) rotateX(-10deg)}100%{opacity:1;-moz-transform:translateZ(-20px) rotateX(0deg)}}@keyframes cd-rotate-2-in{0%{opacity:0;-webkit-transform:translateZ(-20px) rotateX(90deg);-moz-transform:translateZ(-20px) rotateX(90deg);-ms-transform:translateZ(-20px) rotateX(90deg);-o-transform:translateZ(-20px) rotateX(90deg);transform:translateZ(-20px) rotateX(90deg)}60%{opacity:1;-webkit-transform:translateZ(-20px) rotateX(-10deg);-moz-transform:translateZ(-20px) rotateX(-10deg);-ms-transform:translateZ(-20px) rotateX(-10deg);-o-transform:translateZ(-20px) rotateX(-10deg);transform:translateZ(-20px) rotateX(-10deg)}100%{opacity:1;-webkit-transform:translateZ(-20px) rotateX(0deg);-moz-transform:translateZ(-20px) rotateX(0deg);-ms-transform:translateZ(-20px) rotateX(0deg);-o-transform:translateZ(-20px) rotateX(0deg);transform:translateZ(-20px) rotateX(0deg)}}@-webkit-keyframes cd-rotate-2-out{0%{opacity:1;-webkit-transform:translateZ(-20px) rotateX(0)}60%{opacity:0;-webkit-transform:translateZ(-20px) rotateX(-100deg)}100%{opacity:0;-webkit-transform:translateZ(-20px) rotateX(-90deg)}}@-moz-keyframes cd-rotate-2-out{0%{opacity:1;-moz-transform:translateZ(-20px) rotateX(0)}60%{opacity:0;-moz-transform:translateZ(-20px) rotateX(-100deg)}100%{opacity:0;-moz-transform:translateZ(-20px) rotateX(-90deg)}}@keyframes cd-rotate-2-out{0%{opacity:1;-webkit-transform:translateZ(-20px) rotateX(0);-moz-transform:translateZ(-20px) rotateX(0);-ms-transform:translateZ(-20px) rotateX(0);-o-transform:translateZ(-20px) rotateX(0);transform:translateZ(-20px) rotateX(0)}60%{opacity:0;-webkit-transform:translateZ(-20px) rotateX(-100deg);-moz-transform:translateZ(-20px) rotateX(-100deg);-ms-transform:translateZ(-20px) rotateX(-100deg);-o-transform:translateZ(-20px) rotateX(-100deg);transform:translateZ(-20px) rotateX(-100deg)}100%{opacity:0;-webkit-transform:translateZ(-20px) rotateX(-90deg);-moz-transform:translateZ(-20px) rotateX(-90deg);-ms-transform:translateZ(-20px) rotateX(-90deg);-o-transform:translateZ(-20px) rotateX(-90deg);transform:translateZ(-20px) rotateX(-90deg)}}.cd-headline.loading-bar span{display:inline-block;padding: .2em 0}.cd-headline.loading-bar .cd-words-wrapper{overflow:hidden;vertical-align:top}.cd-headline.loading-bar .cd-words-wrapper::after{content:'';position:absolute;left:0;bottom:0;height:3px;width:0;background:#0096a7;z-index:2;-webkit-transition:width 0.3s -0.1s;-moz-transition:width 0.3s -0.1s;transition:width 0.3s -0.1s}.cd-headline.loading-bar .cd-words-wrapper.is-loading::after{width:100%;-webkit-transition:width 3s;-moz-transition:width 3s;transition:width 3s}.cd-headline.loading-bar b{top: .2em;opacity:0;-webkit-transition:opacity 0.3s;-moz-transition:opacity 0.3s;transition:opacity 0.3s}.cd-headline.loading-bar b.is-visible{opacity:1;top:0}.cd-headline.slide span{display:inline-block;padding: .2em 0}.cd-headline.slide .cd-words-wrapper{overflow:hidden;vertical-align:top}.cd-headline.slide b{opacity:0;top: .2em}.cd-headline.slide b.is-visible{top:0;opacity:1;-webkit-animation:slide-in 0.6s;-moz-animation:slide-in 0.6s;animation:slide-in 0.6s}.cd-headline.slide b.is-hidden{-webkit-animation:slide-out 0.6s;-moz-animation:slide-out 0.6s;animation:slide-out 0.6s}@-webkit-keyframes slide-in{0%{opacity:0;-webkit-transform:translateY(-100%)}60%{opacity:1;-webkit-transform:translateY(20%)}100%{opacity:1;-webkit-transform:translateY(0)}}@-moz-keyframes slide-in{0%{opacity:0;-moz-transform:translateY(-100%)}60%{opacity:1;-moz-transform:translateY(20%)}100%{opacity:1;-moz-transform:translateY(0)}}@keyframes slide-in{0%{opacity:0;-webkit-transform:translateY(-100%);-moz-transform:translateY(-100%);-ms-transform:translateY(-100%);-o-transform:translateY(-100%);transform:translateY(-100%)}60%{opacity:1;-webkit-transform:translateY(20%);-moz-transform:translateY(20%);-ms-transform:translateY(20%);-o-transform:translateY(20%);transform:translateY(20%)}100%{opacity:1;-webkit-transform:translateY(0);-moz-transform:translateY(0);-ms-transform:translateY(0);-o-transform:translateY(0);transform:translateY(0)}}@-webkit-keyframes slide-out{0%{opacity:1;-webkit-transform:translateY(0)}60%{opacity:0;-webkit-transform:translateY(120%)}100%{opacity:0;-webkit-transform:translateY(100%)}}@-moz-keyframes slide-out{0%{opacity:1;-moz-transform:translateY(0)}60%{opacity:0;-moz-transform:translateY(120%)}100%{opacity:0;-moz-transform:translateY(100%)}}@keyframes slide-out{0%{opacity:1;-webkit-transform:translateY(0);-moz-transform:translateY(0);-ms-transform:translateY(0);-o-transform:translateY(0);transform:translateY(0)}60%{opacity:0;-webkit-transform:translateY(120%);-moz-transform:translateY(120%);-ms-transform:translateY(120%);-o-transform:translateY(120%);transform:translateY(120%)}100%{opacity:0;-webkit-transform:translateY(100%);-moz-transform:translateY(100%);-ms-transform:translateY(100%);-o-transform:translateY(100%);transform:translateY(100%)}}.cd-headline.clip span{display:inline-block;padding: 0}.cd-headline.clip .cd-words-wrapper{overflow:hidden;vertical-align:top}.cd-headline.clip .cd-words-wrapper::after{content:'';position:absolute;top:0;right:0;width:2px;height:100%;background-color:#aebcb9}.cd-headline.clip b{opacity:0}.cd-headline.clip b.is-visible{opacity:1}.cd-headline.zoom .cd-words-wrapper{-webkit-perspective:300px;-moz-perspective:300px;perspective:300px}.cd-headline.zoom b{opacity:0}.cd-headline.zoom b.is-visible{opacity:1;-webkit-animation:zoom-in 0.8s;-moz-animation:zoom-in 0.8s;animation:zoom-in 0.8s}.cd-headline.zoom b.is-hidden{-webkit-animation:zoom-out 0.8s;-moz-animation:zoom-out 0.8s;animation:zoom-out 0.8s}@-webkit-keyframes zoom-in{0%{opacity:0;-webkit-transform:translateZ(100px)}100%{opacity:1;-webkit-transform:translateZ(0)}}@-moz-keyframes zoom-in{0%{opacity:0;-moz-transform:translateZ(100px)}100%{opacity:1;-moz-transform:translateZ(0)}}@keyframes zoom-in{0%{opacity:0;-webkit-transform:translateZ(100px);-moz-transform:translateZ(100px);-ms-transform:translateZ(100px);-o-transform:translateZ(100px);transform:translateZ(100px)}100%{opacity:1;-webkit-transform:translateZ(0);-moz-transform:translateZ(0);-ms-transform:translateZ(0);-o-transform:translateZ(0);transform:translateZ(0)}}@-webkit-keyframes zoom-out{0%{opacity:1;-webkit-transform:translateZ(0)}100%{opacity:0;-webkit-transform:translateZ(-100px)}}@-moz-keyframes zoom-out{0%{opacity:1;-moz-transform:translateZ(0)}100%{opacity:0;-moz-transform:translateZ(-100px)}}@keyframes zoom-out{0%{opacity:1;-webkit-transform:translateZ(0);-moz-transform:translateZ(0);-ms-transform:translateZ(0);-o-transform:translateZ(0);transform:translateZ(0)}100%{opacity:0;-webkit-transform:translateZ(-100px);-moz-transform:translateZ(-100px);-ms-transform:translateZ(-100px);-o-transform:translateZ(-100px);transform:translateZ(-100px)}}.cd-headline.rotate-3 .cd-words-wrapper{-webkit-perspective:300px;-moz-perspective:300px;perspective:300px}.cd-headline.rotate-3 b{opacity:0}.cd-headline.rotate-3 i{display:inline-block;-webkit-transform:rotateY(180deg);-moz-transform:rotateY(180deg);-ms-transform:rotateY(180deg);-o-transform:rotateY(180deg);transform:rotateY(180deg);-webkit-backface-visibility:hidden;backface-visibility:hidden}.is-visible .cd-headline.rotate-3 i{-webkit-transform:rotateY(0deg);-moz-transform:rotateY(0deg);-ms-transform:rotateY(0deg);-o-transform:rotateY(0deg);transform:rotateY(0deg)}.cd-headline.rotate-3 i.in{-webkit-animation:cd-rotate-3-in 0.6s forwards;-moz-animation:cd-rotate-3-in 0.6s forwards;animation:cd-rotate-3-in 0.6s forwards}.cd-headline.rotate-3 i.out{-webkit-animation:cd-rotate-3-out 0.6s forwards;-moz-animation:cd-rotate-3-out 0.6s forwards;animation:cd-rotate-3-out 0.6s forwards}.no-csstransitions .cd-headline.rotate-3 i{-webkit-transform:rotateY(0deg);-moz-transform:rotateY(0deg);-ms-transform:rotateY(0deg);-o-transform:rotateY(0deg);transform:rotateY(0deg);opacity:0}.no-csstransitions .cd-headline.rotate-3 .is-visible i{opacity:1}@-webkit-keyframes cd-rotate-3-in{0%{-webkit-transform:rotateY(180deg)}100%{-webkit-transform:rotateY(0deg)}}@-moz-keyframes cd-rotate-3-in{0%{-moz-transform:rotateY(180deg)}100%{-moz-transform:rotateY(0deg)}}@keyframes cd-rotate-3-in{0%{-webkit-transform:rotateY(180deg);-moz-transform:rotateY(180deg);-ms-transform:rotateY(180deg);-o-transform:rotateY(180deg);transform:rotateY(180deg)}100%{-webkit-transform:rotateY(0deg);-moz-transform:rotateY(0deg);-ms-transform:rotateY(0deg);-o-transform:rotateY(0deg);transform:rotateY(0deg)}}@-webkit-keyframes cd-rotate-3-out{0%{-webkit-transform:rotateY(0)}100%{-webkit-transform:rotateY(-180deg)}}@-moz-keyframes cd-rotate-3-out{0%{-moz-transform:rotateY(0)}100%{-moz-transform:rotateY(-180deg)}}@keyframes cd-rotate-3-out{0%{-webkit-transform:rotateY(0);-moz-transform:rotateY(0);-ms-transform:rotateY(0);-o-transform:rotateY(0);transform:rotateY(0)}100%{-webkit-transform:rotateY(-180deg);-moz-transform:rotateY(-180deg);-ms-transform:rotateY(-180deg);-o-transform:rotateY(-180deg);transform:rotateY(-180deg)}}.cd-headline.scale b{opacity:0}.cd-headline.scale i{display:inline-block;opacity:0;-webkit-transform:scale(0);-moz-transform:scale(0);-ms-transform:scale(0);-o-transform:scale(0);transform:scale(0)}.is-visible .cd-headline.scale i{opacity:1}.cd-headline.scale i.in{-webkit-animation:scale-up 0.6s forwards;-moz-animation:scale-up 0.6s forwards;animation:scale-up 0.6s forwards}.cd-headline.scale i.out{-webkit-animation:scale-down 0.6s forwards;-moz-animation:scale-down 0.6s forwards;animation:scale-down 0.6s forwards}.no-csstransitions .cd-headline.scale i{-webkit-transform:scale(1);-moz-transform:scale(1);-ms-transform:scale(1);-o-transform:scale(1);transform:scale(1);opacity:0}.no-csstransitions .cd-headline.scale .is-visible i{opacity:1}@-webkit-keyframes scale-up{0%{-webkit-transform:scale(0);opacity:0}60%{-webkit-transform:scale(1.2);opacity:1}100%{-webkit-transform:scale(1);opacity:1}}@-moz-keyframes scale-up{0%{-moz-transform:scale(0);opacity:0}60%{-moz-transform:scale(1.2);opacity:1}100%{-moz-transform:scale(1);opacity:1}}@keyframes scale-up{0%{-webkit-transform:scale(0);-moz-transform:scale(0);-ms-transform:scale(0);-o-transform:scale(0);transform:scale(0);opacity:0}60%{-webkit-transform:scale(1.2);-moz-transform:scale(1.2);-ms-transform:scale(1.2);-o-transform:scale(1.2);transform:scale(1.2);opacity:1}100%{-webkit-transform:scale(1);-moz-transform:scale(1);-ms-transform:scale(1);-o-transform:scale(1);transform:scale(1);opacity:1}}@-webkit-keyframes scale-down{0%{-webkit-transform:scale(1);opacity:1}60%{-webkit-transform:scale(0);opacity:0}}@-moz-keyframes scale-down{0%{-moz-transform:scale(1);opacity:1}60%{-moz-transform:scale(0);opacity:0}}@keyframes scale-down{0%{-webkit-transform:scale(1);-moz-transform:scale(1);-ms-transform:scale(1);-o-transform:scale(1);transform:scale(1);opacity:1}60%{-webkit-transform:scale(0);-moz-transform:scale(0);-ms-transform:scale(0);-o-transform:scale(0);transform:scale(0);opacity:0}}.cd-headline.push b{opacity:0}.cd-headline.push b.is-visible{opacity:1;-webkit-animation:push-in 0.6s;-moz-animation:push-in 0.6s;animation:push-in 0.6s}.cd-headline.push b.is-hidden{-webkit-animation:push-out 0.6s;-moz-animation:push-out 0.6s;animation:push-out 0.6s}@-webkit-keyframes push-in{0%{opacity:0;-webkit-transform:translateX(-100%)}60%{opacity:1;-webkit-transform:translateX(10%)}100%{opacity:1;-webkit-transform:translateX(0)}}@-moz-keyframes push-in{0%{opacity:0;-moz-transform:translateX(-100%)}60%{opacity:1;-moz-transform:translateX(10%)}100%{opacity:1;-moz-transform:translateX(0)}}@keyframes push-in{0%{opacity:0;-webkit-transform:translateX(-100%);-moz-transform:translateX(-100%);-ms-transform:translateX(-100%);-o-transform:translateX(-100%);transform:translateX(-100%)}60%{opacity:1;-webkit-transform:translateX(10%);-moz-transform:translateX(10%);-ms-transform:translateX(10%);-o-transform:translateX(10%);transform:translateX(10%)}100%{opacity:1;-webkit-transform:translateX(0);-moz-transform:translateX(0);-ms-transform:translateX(0);-o-transform:translateX(0);transform:translateX(0)}}@-webkit-keyframes push-out{0%{opacity:1;-webkit-transform:translateX(0)}60%{opacity:0;-webkit-transform:translateX(110%)}100%{opacity:0;-webkit-transform:translateX(100%)}}@-moz-keyframes push-out{0%{opacity:1;-moz-transform:translateX(0)}60%{opacity:0;-moz-transform:translateX(110%)}100%{opacity:0;-moz-transform:translateX(100%)}}@keyframes push-out{0%{opacity:1;-webkit-transform:translateX(0);-moz-transform:translateX(0);-ms-transform:translateX(0);-o-transform:translateX(0);transform:translateX(0)}60%{opacity:0;-webkit-transform:translateX(110%);-moz-transform:translateX(110%);-ms-transform:translateX(110%);-o-transform:translateX(110%);transform:translateX(110%)}100%{opacity:0;-webkit-transform:translateX(100%);-moz-transform:translateX(100%);-ms-transform:translateX(100%);-o-transform:translateX(100%);transform:translateX(100%)}}
+
+/* BeerSlider css */
+.beer-slider{display:inline-block;overflow:hidden;position:relative}.beer-slider *,.beer-slider:after,.beer-slider :after,.beer-slider:before,.beer-slider :before{box-sizing:border-box}.beer-slider img,.beer-slider svg{vertical-align:bottom}.beer-slider>*{height:100%}.beer-slider>img{height:auto;max-width:100%}.beer-reveal{left:0;opacity:0;overflow:hidden;position:absolute;right:50%;top:0;transition:opacity .35s;z-index:1}.beer-reveal>:first-child{height:100%;max-width:none;width:200%}.beer-reveal>img:first-child{height:auto}.beer-range{-moz-appearance:none;-ms-touch-action:auto;-webkit-appearance:slider-horizontal!important;bottom:0;cursor:pointer;height:100%;left:-1px;margin:0;opacity:0;position:absolute;top:0;touch-action:auto;width:calc(100% + 2px);z-index:2}.beer-range::-webkit-slider-thumb{-webkit-appearance:none;height:300vh}.beer-range::-moz-range-thumb{-webkit-appearance:none;height:300vh}.beer-range::-ms-tooltip{display:none}.beer-handle{background:hsla(0,0%,100%,.5);border-radius:50%;box-shadow:0 0 6px transparent;color:#000;height:48px;left:50%;opacity:0;pointer-events:none;position:absolute;top:50%;transform:translate3d(-50%,-50%,0);transition:background .3s,box-shadow .3s,opacity .5s .25s;width:48px;z-index:2}.beer-handle:after,.beer-handle:before{border-left:2px solid;border-top:2px solid;content:"";height:10px;position:absolute;top:50%;transform-origin:0 0;width:10px}.beer-handle:before{left:10px;transform:rotate(-45deg)}.beer-handle:after{right:0;transform:rotate(135deg)}.beer-range:focus~.beer-handle{background:hsla(0,0%,100%,.85);box-shadow:0 0 3px rgba(0,0,0,.4)}.beer-reveal[data-beer-label]:after,.beer-slider[data-beer-label]:after{background:hsla(0,0%,100%,.75);border-radius:.125rem;content:attr(data-beer-label);line-height:1;padding:.5rem;position:absolute;top:1.5rem}.beer-slider[data-beer-label]:after{right:1.5rem}.beer-reveal[data-beer-label]:after{left:1.5rem}.beer-reveal[data-beer-label=""]:after,.beer-slider[data-beer-label=""]:after{content:none}.beer-ready .beer-handle,.beer-ready .beer-reveal{opacity:1}
+
+/* dnslider */
+.dnSlide-main{position:relative;visibility:hidden;padding:0;margin:0;list-style:none;width:800px;height:234px;margin-left:auto;margin-right:auto}.dnSlide-main.done{visibility:visible}.dnSlide-main.dn-response{width:100%}.dnSlide-main.dn-response .dnSlide-list{width:100%;height:100%;margin:0;margin-top:35px;margin-bottom:35px;padding-left:0}.dnSlide-main a,.dnSlide-main img{display:block;border:0}.dnSlide-main .dnSlide-list{width:800px;height:234px;list-style:none}.dnSlide-main .dnSlide-btn{color:#000;height:234px;width:100px;opacity:.5;position:absolute;top:0;left:0;-webkit-transition:opacity .3s;transition:opacity .3s;z-index:10;cursor:pointer;background-repeat:no-repeat;background-position:center center}.dnSlide-main .dnSlide-btn:hover{opacity:.8;-webkit-transition:opacity .3s;transition:opacity .3s}.dnSlide-main.dnSlide-hide{display:none}.dnSlide-main .dnSlide-item{position:absolute;top:0;left:0;opacity:1!important}.dnSlide-main .dnSlide-left-btn{background-image:url(../images/left.svg);background-size:35%;left:0}.dnSlide-main .dnSlide-right-btn{background-image:url(../images/right.svg);background-size:35%;right:0;left:auto}@media \0screen\,screen\9{.dnSlide-main{margin-top:35px;margin-bottom:35px}.dnSlide-main .dnSlide-right-btn{background-image:url(../images/right.png)}.dnSlide-main .dnSlide-left-btn{background-image:url(../images/left.png)}}
+
+/* meanmenu */
+a.meanmenu-reveal{display:none}.mean-container .mean-bar{background:#0f99de;float:left;min-height:60px;padding:4px 0 0;position:relative;width:100%;z-index:999999}.mean-container a.meanmenu-reveal{width:22px;height:22px;padding:18px;top:0;right:0;cursor:pointer;color:#fff;text-decoration:none;font-size:16px;text-indent:-9999em;line-height:22px;font-size:1px;display:block;font-family:Arial,Helvetica,sans-serif;font-weight:700;float:right}.mean-container a.meanmenu-reveal span{display:block;background:#fff;height:3px;margin-top:4px}.mean-container .mean-nav{float:left;width:100%;background:#0c1923}.mean-container .mean-nav ul{padding:0;margin:0;width:100%;list-style-type:none}.mean-container .mean-nav ul li{background:#f8f8f8 none repeat scroll 0 0;float:left;position:relative;width:100%;border-top:1px solid#ddd}.mean-container .mean-nav ul li a{background:#f8f8f8 none repeat scroll 0 0;color:#666;display:block;float:left;font-size:13px;margin:0;padding:1em 5%;text-align:left;text-decoration:none;text-transform:uppercase;width:90%;font-weight:700}.mobile-menu-area{background:#262626}.mean-container .mean-nav ul li li a{border-top:1px solid rgba(255,255,255,.25);opacity:.75;padding:1em 10%;text-shadow:none!important;visibility:visible;width:80%;font-weight:500;text-transform:capitalize;color:#444}.mean-container .mean-nav ul li.mean-last a{border-bottom:0;margin-bottom:0}.mean-container .mean-nav ul li li li a{width:70%;padding:1em 15%}.mean-container .mean-nav ul li li li li a{width:60%;padding:1em 20%}.mean-container .mean-nav ul li li li li li a{width:50%;padding:1em 25%}.mean-container .mean-nav ul li a:hover{background:#f8f8f8 none repeat scroll 0 0;color:#f47e1e}.mean-container .mean-nav ul li a.mean-expand{width:100%;height:18px; line-height:1;margin-top:1px;padding:12px!important;text-align:right;position:absolute;right:0;top:0;z-index:2;font-weight:700;background:rgba(255,255,255,.1);border:0!important;background:#f8f8f8}.mean-container .mean-nav ul li a.mean-expand:hover{background:#f8f8f8}.mean-container .mean-push{float:left;width:100%;padding:0;margin:0;clear:both}.mean-nav .wrapper{width:100%;padding:0;margin:0}.mean-container .mean-bar,.mean-container .mean-bar *{-webkit-box-sizing:content-box;-moz-box-sizing:content-box;box-sizing:content-box}.mean-remove{display:none!important}.mean-container .mean-bar::after{color:#fff;content:"MENU";font-size:21px;left:5%;position:absolute;top:12px}.mean-container .mean-bar::after{display:none}.mean-container .mean-nav ul li a:hover{color:#f47e1e;border-radius:0}.mean-container a.meanmenu-reveal span{background:#fff}.mobile-menu-area{background:#fff none repeat scroll 0 0;border-top:3px solid #2bcdc1}.mean-container .mean-nav ul li a{background:#fff;color:#444;display:block}.mean-container .mean-nav ul li a.mean-expand{ background:0;top:0px}.mean-container .mean-nav ul li a.mean-expand:hover{background:0 0}.mean-container .mean-nav ul li{background:#444}.mean-container .mean-nav ul li li a{opacity:.9;border-top:0}.mean-container a.meanmenu-reveal{color:#fff}.meanmenu-reveal.meanclose:hover{color:#fff!important}.mean-container a.meanmenu-reveal:hover span{background:#fff}.mean-container .mean-bar::before{color:#fff;content:"Menu";font-size:18px;font-weight:700;left:10px;position:absolute;top:13px}
+
+
+
+
+
+/* nice select */
+
+.nice-select{-webkit-tap-highlight-color:transparent;background-color:#fff;border-radius:5px;border:solid 1px #e8e8e8;box-sizing:border-box;clear:both;cursor:pointer;display:block;float:left;font-family:inherit;font-size:14px;font-weight:400;height:42px;line-height:40px;outline:0;padding-left:18px;padding-right:30px;position:relative;text-align:left!important;-webkit-transition:all .2s ease-in-out;transition:all .2s ease-in-out;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;white-space:nowrap;width:auto}.nice-select:hover{border-color:#dbdbdb}.nice-select.open,.nice-select:active,.nice-select:focus{border-color:#999}.nice-select:after{border-bottom:2px solid #999;border-right:2px solid #999;content:'';display:block;height:5px;margin-top:-4px;pointer-events:none;position:absolute;right:12px;top:50%;-webkit-transform-origin:66% 66%;-ms-transform-origin:66% 66%;transform-origin:66% 66%;-webkit-transform:rotate(45deg);-ms-transform:rotate(45deg);transform:rotate(45deg);-webkit-transition:all .15s ease-in-out;transition:all .15s ease-in-out;width:5px}.nice-select.open:after{-webkit-transform:rotate(-135deg);-ms-transform:rotate(-135deg);transform:rotate(-135deg)}.nice-select.open .list{opacity:1;pointer-events:auto;-webkit-transform:scale(1) translateY(0);-ms-transform:scale(1) translateY(0);transform:scale(1) translateY(0)}.nice-select.disabled{border-color:#ededed;color:#999;pointer-events:none}.nice-select.disabled:after{border-color:#ccc}.nice-select.wide{width:100%}.nice-select.wide .list{left:0!important;right:0!important}.nice-select.right{float:right}.nice-select.right .list{left:auto;right:0}.nice-select.small{font-size:12px;height:36px;line-height:34px}.nice-select.small:after{height:4px;width:4px}.nice-select.small .option{line-height:34px;min-height:34px}.nice-select .list{background-color:#fff;border-radius:5px;box-shadow:0 0 0 1px rgba(68,68,68,.11);box-sizing:border-box;margin-top:4px;opacity:0;overflow:hidden;padding:0;pointer-events:none;position:absolute;top:100%;left:0;-webkit-transform-origin:50% 0;-ms-transform-origin:50% 0;transform-origin:50% 0;-webkit-transform:scale(.75) translateY(-21px);-ms-transform:scale(.75) translateY(-21px);transform:scale(.75) translateY(-21px);-webkit-transition:all .2s cubic-bezier(.5,0,0,1.25),opacity .15s ease-out;transition:all .2s cubic-bezier(.5,0,0,1.25),opacity .15s ease-out;z-index:9}.nice-select .list:hover .option:not(:hover){background-color:transparent!important}.nice-select .option{cursor:pointer;font-weight:400;line-height:40px;list-style:none;min-height:40px;outline:0;padding-left:18px;padding-right:29px;text-align:left;-webkit-transition:all .2s;transition:all .2s}.nice-select .option.focus,.nice-select .option.selected.focus,.nice-select .option:hover{background-color:#f6f6f6}.nice-select .option.selected{font-weight:700}.nice-select .option.disabled{background-color:transparent;color:#999;cursor:default}.no-csspointerevents .nice-select .list{display:none}.no-csspointerevents .nice-select.open .list{display:block}
+
+/* slick css */
+
+.slick-slider{position:relative;display:block;box-sizing:border-box;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;-webkit-touch-callout:none;-khtml-user-select:none;-ms-touch-action:pan-y;touch-action:pan-y;-webkit-tap-highlight-color:transparent}.slick-list{position:relative;display:block;overflow:hidden;margin:0;padding:0}.slick-list:focus{outline:0}.slick-list.dragging{cursor:pointer;cursor:hand}.slick-slider .slick-list,.slick-slider .slick-track{-webkit-transform:translate3d(0,0,0);-moz-transform:translate3d(0,0,0);-ms-transform:translate3d(0,0,0);-o-transform:translate3d(0,0,0);transform:translate3d(0,0,0)}.slick-track{position:relative;top:0;left:0;display:block;margin-left:auto;margin-right:auto}.slick-track:after,.slick-track:before{display:table;content:''}.slick-track:after{clear:both}.slick-loading .slick-track{visibility:hidden}.slick-slide{display:none;float:left;height:100%;min-height:1px}[dir=rtl] .slick-slide{float:right}.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}
+.slick-slide {padding-top: 15px}
+
+/* aprova icon */
+
+@font-face{font-family:aprova;src:url(../fonts/aprova0698.eot?ef1ywa);src:url(../fonts/aprova0698.eot?ef1ywa#iefix) format('embedded-opentype'),url(../fonts/aprova0698.ttf?ef1ywa) format('truetype'),url(../fonts/aprova0698.woff?ef1ywa) format('woff'),url(../fonts/aprova0698.svg?ef1ywa#aprova) format('svg');font-weight:400;font-style:normal;font-display:block}[class*=" aprova-"],[class^=aprova-]{font-family:aprova!important;speak:none;font-style:normal;font-weight:400;font-variant:normal;text-transform:none;line-height:1;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.aprova-landing:before{content:"\e900"}.aprova-bar-chart:before{content:"\e901"}.aprova-website:before{content:"\e902"}.aprova-objective:before{content:"\e903"}.aprova-lightbulb:before{content:"\e904"}.aprova-analysis:before{content:"\e905"}.aprova-startup1:before{content:"\e906"}.aprova-website-1:before{content:"\e907"}.aprova-profits:before{content:"\e908"}.aprova-research:before{content:"\e909"}.aprova-analysis-1:before{content:"\e90a"}.aprova-doctor1:before{content:"\e90b"}.aprova-research-1:before{content:"\e90c"}.aprova-team:before{content:"\e90d"}.aprova-vaccine:before{content:"\e90e"}.aprova-medicine:before{content:"\e90f"}.aprova-drug:before{content:"\e910"}.aprova-dose:before{content:"\e911"}.aprova-prize:before{content:"\e912"}.aprova-reward:before{content:"\e913"}.aprova-plaster:before{content:"\e914"}.aprova-medicine1:before{content:"\e915"}.aprova-chemical:before{content:"\e916"}.aprova-medicine-1:before{content:"\e917"}.aprova-doctor:before{content:"\e918"}.aprova-data:before{content:"\e919"}.aprova-brain:before{content:"\e91a"}.aprova-lung:before{content:"\e91b"}.aprova-kidney:before{content:"\e91c"}.aprova-mri:before{content:"\e91d"}.aprova-trophy:before{content:"\e91e"}.aprova-envelope-with-a-letter:before{content:"\e91f"}.aprova-verified-text-paper:before{content:"\e920"}.aprova-calculator-interface-symbol:before{content:"\e921"}.aprova-clock:before{content:"\e922"}.aprova-class-with-students-and-whiteboard:before{content:"\e923"}.aprova-target1:before{content:"\e924"}.aprova-worldwide:before{content:"\e925"}.aprova-award:before{content:"\e926"}.aprova-map:before{content:"\e927"}.aprova-roof:before{content:"\e928"}.aprova-clock-1:before{content:"\e929"}.aprova-wash:before{content:"\e92a"}.aprova-dinner:before{content:"\e92b"}.aprova-food:before{content:"\e92c"}.aprova-shower:before{content:"\e92d"}.aprova-frying-pan-cooking:before{content:"\e92e"}.aprova-music:before{content:"\e92f"}.aprova-fan:before{content:"\e930"}.aprova-screen:before{content:"\e931"}.aprova-digital-marketing:before{content:"\e932"}.aprova-startup:before{content:"\e933"}.aprova-prize-1:before{content:"\e934"}.aprova-circular:before{content:"\e935"}.aprova-computer:before{content:"\e936"}.aprova-research1:before{content:"\e937"}.aprova-analytics:before{content:"\e938"}.aprova-bitcoin:before{content:"\e939"}.aprova-talk:before{content:"\e93a"}.aprova-bitcoin-1:before{content:"\e93b"}.aprova-bitcoin-2:before{content:"\e93c"}.aprova-bitcoin-3:before{content:"\e93d"}.aprova-bitcoin-4:before{content:"\e93e"}.aprova-bitcoin-5:before{content:"\e93f"}.aprova-bitcoin-6:before{content:"\e940"}.aprova-password:before{content:"\e941"}.aprova-bitcoin-7:before{content:"\e942"}.aprova-blockchain:before{content:"\e943"}.aprova-ui:before{content:"\e944"}.aprova-shaver:before{content:"\e945"}.aprova-shave:before{content:"\e946"}.aprova-chair:before{content:"\e947"}.aprova-woman:before{content:"\e948"}.aprova-gym:before{content:"\e949"}.aprova-down:before{content:"\e94a"}.aprova-earth-grid-symbol-and-three-persons:before{content:"\e94b"}.aprova-weightlifting:before{content:"\e94c"}.aprova-partner:before{content:"\e94d"}.aprova-city-hall:before{content:"\e94e"}.aprova-shake-hands:before{content:"\e94f"}.aprova-avatar:before{content:"\e950"}.aprova-target:before{content:"\e951"}.aprova-contract:before{content:"\e952"}.aprova-investment:before{content:"\e953"}.flaticon-arrows:before{content:"\f100"}.aprova-test:before{content:"\e953"}
+
+/* themify icon */
+
+@font-face{font-family:themify;src:url(../fonts/themify.eot?-fvbane);src:url(../fonts/themify.eot?#iefix-fvbane) format('embedded-opentype'),url(../fonts/themify.woff?-fvbane) format('woff'),url(../fonts/themify.ttf?-fvbane) format('truetype'),url(../fonts/themify.svg?-fvbane#themify) format('svg');font-weight:400;font-style:normal}[class*=" ti-"],[class^=ti-]{font-family:themify;speak:none;font-style:normal;font-weight:400;font-variant:normal;text-transform:none;line-height:1;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.ti-wand:before{content:"\e600"}.ti-volume:before{content:"\e601"}.ti-user:before{content:"\e602"}.ti-unlock:before{content:"\e603"}.ti-unlink:before{content:"\e604"}.ti-trash:before{content:"\e605"}.ti-thought:before{content:"\e606"}.ti-target:before{content:"\e607"}.ti-tag:before{content:"\e608"}.ti-tablet:before{content:"\e609"}.ti-star:before{content:"\e60a"}.ti-spray:before{content:"\e60b"}.ti-signal:before{content:"\e60c"}.ti-shopping-cart:before{content:"\e60d"}.ti-shopping-cart-full:before{content:"\e60e"}.ti-settings:before{content:"\e60f"}.ti-search:before{content:"\e610"}.ti-zoom-in:before{content:"\e611"}.ti-zoom-out:before{content:"\e612"}.ti-cut:before{content:"\e613"}.ti-ruler:before{content:"\e614"}.ti-ruler-pencil:before{content:"\e615"}.ti-ruler-alt:before{content:"\e616"}.ti-bookmark:before{content:"\e617"}.ti-bookmark-alt:before{content:"\e618"}.ti-reload:before{content:"\e619"}.ti-plus:before{content:"\e61a"}.ti-pin:before{content:"\e61b"}.ti-pencil:before{content:"\e61c"}.ti-pencil-alt:before{content:"\e61d"}.ti-paint-roller:before{content:"\e61e"}.ti-paint-bucket:before{content:"\e61f"}.ti-na:before{content:"\e620"}.ti-mobile:before{content:"\e621"}.ti-minus:before{content:"\e622"}.ti-medall:before{content:"\e623"}.ti-medall-alt:before{content:"\e624"}.ti-marker:before{content:"\e625"}.ti-marker-alt:before{content:"\e626"}.ti-arrow-up:before{content:"\e627"}.ti-arrow-right:before{content:"\e628"}.ti-arrow-left:before{content:"\e629"}.ti-arrow-down:before{content:"\e62a"}.ti-lock:before{content:"\e62b"}.ti-location-arrow:before{content:"\e62c"}.ti-link:before{content:"\e62d"}.ti-layout:before{content:"\e62e"}.ti-layers:before{content:"\e62f"}.ti-layers-alt:before{content:"\e630"}.ti-key:before{content:"\e631"}.ti-import:before{content:"\e632"}.ti-image:before{content:"\e633"}.ti-heart:before{content:"\e634"}.ti-heart-broken:before{content:"\e635"}.ti-hand-stop:before{content:"\e636"}.ti-hand-open:before{content:"\e637"}.ti-hand-drag:before{content:"\e638"}.ti-folder:before{content:"\e639"}.ti-flag:before{content:"\e63a"}.ti-flag-alt:before{content:"\e63b"}.ti-flag-alt-2:before{content:"\e63c"}.ti-eye:before{content:"\e63d"}.ti-export:before{content:"\e63e"}.ti-exchange-vertical:before{content:"\e63f"}.ti-desktop:before{content:"\e640"}.ti-cup:before{content:"\e641"}.ti-crown:before{content:"\e642"}.ti-comments:before{content:"\e643"}.ti-comment:before{content:"\e644"}.ti-comment-alt:before{content:"\e645"}.ti-close:before{content:"\e646"}.ti-clip:before{content:"\e647"}.ti-angle-up:before{content:"\e648"}.ti-angle-right:before{content:"\e649"}.ti-angle-left:before{content:"\e64a"}.ti-angle-down:before{content:"\e64b"}.ti-check:before{content:"\e64c"}.ti-check-box:before{content:"\e64d"}.ti-camera:before{content:"\e64e"}.ti-announcement:before{content:"\e64f"}.ti-brush:before{content:"\e650"}.ti-briefcase:before{content:"\e651"}.ti-bolt:before{content:"\e652"}.ti-bolt-alt:before{content:"\e653"}.ti-blackboard:before{content:"\e654"}.ti-bag:before{content:"\e655"}.ti-move:before{content:"\e656"}.ti-arrows-vertical:before{content:"\e657"}.ti-arrows-horizontal:before{content:"\e658"}.ti-fullscreen:before{content:"\e659"}.ti-arrow-top-right:before{content:"\e65a"}.ti-arrow-top-left:before{content:"\e65b"}.ti-arrow-circle-up:before{content:"\e65c"}.ti-arrow-circle-right:before{content:"\e65d"}.ti-arrow-circle-left:before{content:"\e65e"}.ti-arrow-circle-down:before{content:"\e65f"}.ti-angle-double-up:before{content:"\e660"}.ti-angle-double-right:before{content:"\e661"}.ti-angle-double-left:before{content:"\e662"}.ti-angle-double-down:before{content:"\e663"}.ti-zip:before{content:"\e664"}.ti-world:before{content:"\e665"}.ti-wheelchair:before{content:"\e666"}.ti-view-list:before{content:"\e667"}.ti-view-list-alt:before{content:"\e668"}.ti-view-grid:before{content:"\e669"}.ti-uppercase:before{content:"\e66a"}.ti-upload:before{content:"\e66b"}.ti-underline:before{content:"\e66c"}.ti-truck:before{content:"\e66d"}.ti-timer:before{content:"\e66e"}.ti-ticket:before{content:"\e66f"}.ti-thumb-up:before{content:"\e670"}.ti-thumb-down:before{content:"\e671"}.ti-text:before{content:"\e672"}.ti-stats-up:before{content:"\e673"}.ti-stats-down:before{content:"\e674"}.ti-split-v:before{content:"\e675"}.ti-split-h:before{content:"\e676"}.ti-smallcap:before{content:"\e677"}.ti-shine:before{content:"\e678"}.ti-shift-right:before{content:"\e679"}.ti-shift-left:before{content:"\e67a"}.ti-shield:before{content:"\e67b"}.ti-notepad:before{content:"\e67c"}.ti-server:before{content:"\e67d"}.ti-quote-right:before{content:"\e67e"}.ti-quote-left:before{content:"\e67f"}.ti-pulse:before{content:"\e680"}.ti-printer:before{content:"\e681"}.ti-power-off:before{content:"\e682"}.ti-plug:before{content:"\e683"}.ti-pie-chart:before{content:"\e684"}.ti-paragraph:before{content:"\e685"}.ti-panel:before{content:"\e686"}.ti-package:before{content:"\e687"}.ti-music:before{content:"\e688"}.ti-music-alt:before{content:"\e689"}.ti-mouse:before{content:"\e68a"}.ti-mouse-alt:before{content:"\e68b"}.ti-money:before{content:"\e68c"}.ti-microphone:before{content:"\e68d"}.ti-menu:before{content:"\e68e"}.ti-menu-alt:before{content:"\e68f"}.ti-map:before{content:"\e690"}.ti-map-alt:before{content:"\e691"}.ti-loop:before{content:"\e692"}.ti-location-pin:before{content:"\e693"}.ti-list:before{content:"\e694"}.ti-light-bulb:before{content:"\e695"}.ti-Italic:before{content:"\e696"}.ti-info:before{content:"\e697"}.ti-infinite:before{content:"\e698"}.ti-id-badge:before{content:"\e699"}.ti-hummer:before{content:"\e69a"}.ti-home:before{content:"\e69b"}.ti-help:before{content:"\e69c"}.ti-headphone:before{content:"\e69d"}.ti-harddrives:before{content:"\e69e"}.ti-harddrive:before{content:"\e69f"}.ti-gift:before{content:"\e6a0"}.ti-game:before{content:"\e6a1"}.ti-filter:before{content:"\e6a2"}.ti-files:before{content:"\e6a3"}.ti-file:before{content:"\e6a4"}.ti-eraser:before{content:"\e6a5"}.ti-envelope:before{content:"\e6a6"}.ti-download:before{content:"\e6a7"}.ti-direction:before{content:"\e6a8"}.ti-direction-alt:before{content:"\e6a9"}.ti-dashboard:before{content:"\e6aa"}.ti-control-stop:before{content:"\e6ab"}.ti-control-shuffle:before{content:"\e6ac"}.ti-control-play:before{content:"\e6ad"}.ti-control-pause:before{content:"\e6ae"}.ti-control-forward:before{content:"\e6af"}.ti-control-backward:before{content:"\e6b0"}.ti-cloud:before{content:"\e6b1"}.ti-cloud-up:before{content:"\e6b2"}.ti-cloud-down:before{content:"\e6b3"}.ti-clipboard:before{content:"\e6b4"}.ti-car:before{content:"\e6b5"}.ti-calendar:before{content:"\e6b6"}.ti-book:before{content:"\e6b7"}.ti-bell:before{content:"\e6b8"}.ti-basketball:before{content:"\e6b9"}.ti-bar-chart:before{content:"\e6ba"}.ti-bar-chart-alt:before{content:"\e6bb"}.ti-back-right:before{content:"\e6bc"}.ti-back-left:before{content:"\e6bd"}.ti-arrows-corner:before{content:"\e6be"}.ti-archive:before{content:"\e6bf"}.ti-anchor:before{content:"\e6c0"}.ti-align-right:before{content:"\e6c1"}.ti-align-left:before{content:"\e6c2"}.ti-align-justify:before{content:"\e6c3"}.ti-align-center:before{content:"\e6c4"}.ti-alert:before{content:"\e6c5"}.ti-alarm-clock:before{content:"\e6c6"}.ti-agenda:before{content:"\e6c7"}.ti-write:before{content:"\e6c8"}.ti-window:before{content:"\e6c9"}.ti-widgetized:before{content:"\e6ca"}.ti-widget:before{content:"\e6cb"}.ti-widget-alt:before{content:"\e6cc"}.ti-wallet:before{content:"\e6cd"}.ti-video-clapper:before{content:"\e6ce"}.ti-video-camera:before{content:"\e6cf"}.ti-vector:before{content:"\e6d0"}.ti-themify-logo:before{content:"\e6d1"}.ti-themify-favicon:before{content:"\e6d2"}.ti-themify-favicon-alt:before{content:"\e6d3"}.ti-support:before{content:"\e6d4"}.ti-stamp:before{content:"\e6d5"}.ti-split-v-alt:before{content:"\e6d6"}.ti-slice:before{content:"\e6d7"}.ti-shortcode:before{content:"\e6d8"}.ti-shift-right-alt:before{content:"\e6d9"}.ti-shift-left-alt:before{content:"\e6da"}.ti-ruler-alt-2:before{content:"\e6db"}.ti-receipt:before{content:"\e6dc"}.ti-pin2:before{content:"\e6dd"}.ti-pin-alt:before{content:"\e6de"}.ti-pencil-alt2:before{content:"\e6df"}.ti-palette:before{content:"\e6e0"}.ti-more:before{content:"\e6e1"}.ti-more-alt:before{content:"\e6e2"}.ti-microphone-alt:before{content:"\e6e3"}.ti-magnet:before{content:"\e6e4"}.ti-line-double:before{content:"\e6e5"}.ti-line-dotted:before{content:"\e6e6"}.ti-line-dashed:before{content:"\e6e7"}.ti-layout-width-full:before{content:"\e6e8"}.ti-layout-width-default:before{content:"\e6e9"}.ti-layout-width-default-alt:before{content:"\e6ea"}.ti-layout-tab:before{content:"\e6eb"}.ti-layout-tab-window:before{content:"\e6ec"}.ti-layout-tab-v:before{content:"\e6ed"}.ti-layout-tab-min:before{content:"\e6ee"}.ti-layout-slider:before{content:"\e6ef"}.ti-layout-slider-alt:before{content:"\e6f0"}.ti-layout-sidebar-right:before{content:"\e6f1"}.ti-layout-sidebar-none:before{content:"\e6f2"}.ti-layout-sidebar-left:before{content:"\e6f3"}.ti-layout-placeholder:before{content:"\e6f4"}.ti-layout-menu:before{content:"\e6f5"}.ti-layout-menu-v:before{content:"\e6f6"}.ti-layout-menu-separated:before{content:"\e6f7"}.ti-layout-menu-full:before{content:"\e6f8"}.ti-layout-media-right-alt:before{content:"\e6f9"}.ti-layout-media-right:before{content:"\e6fa"}.ti-layout-media-overlay:before{content:"\e6fb"}.ti-layout-media-overlay-alt:before{content:"\e6fc"}.ti-layout-media-overlay-alt-2:before{content:"\e6fd"}.ti-layout-media-left-alt:before{content:"\e6fe"}.ti-layout-media-left:before{content:"\e6ff"}.ti-layout-media-center-alt:before{content:"\e700"}.ti-layout-media-center:before{content:"\e701"}.ti-layout-list-thumb:before{content:"\e702"}.ti-layout-list-thumb-alt:before{content:"\e703"}.ti-layout-list-post:before{content:"\e704"}.ti-layout-list-large-image:before{content:"\e705"}.ti-layout-line-solid:before{content:"\e706"}.ti-layout-grid4:before{content:"\e707"}.ti-layout-grid3:before{content:"\e708"}.ti-layout-grid2:before{content:"\e709"}.ti-layout-grid2-thumb:before{content:"\e70a"}.ti-layout-cta-right:before{content:"\e70b"}.ti-layout-cta-left:before{content:"\e70c"}.ti-layout-cta-center:before{content:"\e70d"}.ti-layout-cta-btn-right:before{content:"\e70e"}.ti-layout-cta-btn-left:before{content:"\e70f"}.ti-layout-column4:before{content:"\e710"}.ti-layout-column3:before{content:"\e711"}.ti-layout-column2:before{content:"\e712"}.ti-layout-accordion-separated:before{content:"\e713"}.ti-layout-accordion-merged:before{content:"\e714"}.ti-layout-accordion-list:before{content:"\e715"}.ti-ink-pen:before{content:"\e716"}.ti-info-alt:before{content:"\e717"}.ti-help-alt:before{content:"\e718"}.ti-headphone-alt:before{content:"\e719"}.ti-hand-point-up:before{content:"\e71a"}.ti-hand-point-right:before{content:"\e71b"}.ti-hand-point-left:before{content:"\e71c"}.ti-hand-point-down:before{content:"\e71d"}.ti-gallery:before{content:"\e71e"}.ti-face-smile:before{content:"\e71f"}.ti-face-sad:before{content:"\e720"}.ti-credit-card:before{content:"\e721"}.ti-control-skip-forward:before{content:"\e722"}.ti-control-skip-backward:before{content:"\e723"}.ti-control-record:before{content:"\e724"}.ti-control-eject:before{content:"\e725"}.ti-comments-smiley:before{content:"\e726"}.ti-brush-alt:before{content:"\e727"}.ti-youtube:before{content:"\e728"}.ti-vimeo:before{content:"\e729"}.ti-twitter:before{content:"\e72a"}.ti-time:before{content:"\e72b"}.ti-tumblr:before{content:"\e72c"}.ti-skype:before{content:"\e72d"}.ti-share:before{content:"\e72e"}.ti-share-alt:before{content:"\e72f"}.ti-rocket:before{content:"\e730"}.ti-pinterest:before{content:"\e731"}.ti-new-window:before{content:"\e732"}.ti-microsoft:before{content:"\e733"}.ti-list-ol:before{content:"\e734"}.ti-linkedin:before{content:"\e735"}.ti-layout-sidebar-2:before{content:"\e736"}.ti-layout-grid4-alt:before{content:"\e737"}.ti-layout-grid3-alt:before{content:"\e738"}.ti-layout-grid2-alt:before{content:"\e739"}.ti-layout-column4-alt:before{content:"\e73a"}.ti-layout-column3-alt:before{content:"\e73b"}.ti-layout-column2-alt:before{content:"\e73c"}.ti-instagram:before{content:"\e73d"}.ti-google:before{content:"\e73e"}.ti-github:before{content:"\e73f"}.ti-flickr:before{content:"\e740"}.ti-facebook:before{content:"\e741"}.ti-dropbox:before{content:"\e742"}.ti-dribbble:before{content:"\e743"}.ti-apple:before{content:"\e744"}.ti-android:before{content:"\e745"}.ti-save:before{content:"\e746"}.ti-save-alt:before{content:"\e747"}.ti-yahoo:before{content:"\e748"}.ti-wordpress:before{content:"\e749"}.ti-vimeo-alt:before{content:"\e74a"}.ti-twitter-alt:before{content:"\e74b"}.ti-tumblr-alt:before{content:"\e74c"}.ti-trello:before{content:"\e74d"}.ti-stack-overflow:before{content:"\e74e"}.ti-soundcloud:before{content:"\e74f"}.ti-sharethis:before{content:"\e750"}.ti-sharethis-alt:before{content:"\e751"}.ti-reddit:before{content:"\e752"}.ti-pinterest-alt:before{content:"\e753"}.ti-microsoft-alt:before{content:"\e754"}.ti-linux:before{content:"\e755"}.ti-jsfiddle:before{content:"\e756"}.ti-joomla:before{content:"\e757"}.ti-html5:before{content:"\e758"}.ti-flickr-alt:before{content:"\e759"}.ti-email:before{content:"\e75a"}.ti-drupal:before{content:"\e75b"}.ti-dropbox-alt:before{content:"\e75c"}.ti-css3:before{content:"\e75d"}.ti-rss:before{content:"\e75e"}.ti-rss-alt:before{content:"\e75f"}
+
+
+/*!
+* @package IcoFont
+* @version 1.0.1
+* @author IcoFont ://icofont.com
+* @copyright Copyright (c) 2015 - 2018 IcoFont
+* @license - ://icofont.com/license/
+*/@font-face{font-family:IcoFont;font-weight:400;font-style:Regular;src:url(../fonts/icofont.woff2) format("woff2"),url(../fonts/icofont.woff) format("woff")}[class*=" icofont-"],[class^=icofont-]{font-family:IcoFont!important;speak:none;font-style:normal;font-weight:400;font-variant:normal;text-transform:none;white-space:nowrap;word-wrap:normal;direction:ltr;line-height:1;-webkit-font-feature-settings:"liga";-webkit-font-smoothing:antialiased}.icofont-angry-monster:before{content:"\e800"}.icofont-bathtub:before{content:"\e801"}.icofont-bird-wings:before{content:"\e802"}.icofont-bow:before{content:"\e803"}.icofont-castle:before{content:"\e804"}.icofont-circuit:before{content:"\e805"}.icofont-crown-king:before{content:"\e806"}.icofont-crown-queen:before{content:"\e807"}.icofont-dart:before{content:"\e808"}.icofont-disability-race:before{content:"\e809"}.icofont-diving-goggle:before{content:"\e80a"}.icofont-eye-open:before{content:"\e80b"}.icofont-flora-flower:before{content:"\e80c"}.icofont-flora:before{content:"\e80d"}.icofont-gift-box:before{content:"\e80e"}.icofont-halloween-pumpkin:before{content:"\e80f"}.icofont-hand-power:before{content:"\e810"}.icofont-hand-thunder:before{content:"\e811"}.icofont-king-monster:before{content:"\e812"}.icofont-love:before{content:"\e813"}.icofont-magician-hat:before{content:"\e814"}.icofont-native-american:before{content:"\e815"}.icofont-owl-look:before{content:"\e816"}.icofont-phoenix:before{content:"\e817"}.icofont-robot-face:before{content:"\e818"}.icofont-sand-clock:before{content:"\e819"}.icofont-shield-alt:before{content:"\e81a"}.icofont-ship-wheel:before{content:"\e81b"}.icofont-skull-danger:before{content:"\e81c"}.icofont-skull-face:before{content:"\e81d"}.icofont-snowmobile:before{content:"\e81e"}.icofont-space-shuttle:before{content:"\e81f"}.icofont-star-shape:before{content:"\e820"}.icofont-swirl:before{content:"\e821"}.icofont-tattoo-wing:before{content:"\e822"}.icofont-throne:before{content:"\e823"}.icofont-tree-alt:before{content:"\e824"}.icofont-triangle:before{content:"\e825"}.icofont-unity-hand:before{content:"\e826"}.icofont-weed:before{content:"\e827"}.icofont-woman-bird:before{content:"\e828"}.icofont-bat:before{content:"\e829"}.icofont-bear-face:before{content:"\e82a"}.icofont-bear-tracks:before{content:"\e82b"}.icofont-bear:before{content:"\e82c"}.icofont-bird-alt:before{content:"\e82d"}.icofont-bird-flying:before{content:"\e82e"}.icofont-bird:before{content:"\e82f"}.icofont-birds:before{content:"\e830"}.icofont-bone:before{content:"\e831"}.icofont-bull:before{content:"\e832"}.icofont-butterfly-alt:before{content:"\e833"}.icofont-butterfly:before{content:"\e834"}.icofont-camel-alt:before{content:"\e835"}.icofont-camel-head:before{content:"\e836"}.icofont-camel:before{content:"\e837"}.icofont-cat-alt-1:before{content:"\e838"}.icofont-cat-alt-2:before{content:"\e839"}.icofont-cat-alt-3:before{content:"\e83a"}.icofont-cat-dog:before{content:"\e83b"}.icofont-cat-face:before{content:"\e83c"}.icofont-cat:before{content:"\e83d"}.icofont-cow-head:before{content:"\e83e"}.icofont-cow:before{content:"\e83f"}.icofont-crab:before{content:"\e840"}.icofont-crocodile:before{content:"\e841"}.icofont-deer-head:before{content:"\e842"}.icofont-dog-alt:before{content:"\e843"}.icofont-dog-barking:before{content:"\e844"}.icofont-dog:before{content:"\e845"}.icofont-dolphin:before{content:"\e846"}.icofont-duck-tracks:before{content:"\e847"}.icofont-eagle-head:before{content:"\e848"}.icofont-eaten-fish:before{content:"\e849"}.icofont-elephant-alt:before{content:"\e84a"}.icofont-elephant-head-alt:before{content:"\e84b"}.icofont-elephant-head:before{content:"\e84c"}.icofont-elephant:before{content:"\e84d"}.icofont-elk:before{content:"\e84e"}.icofont-fish-1:before{content:"\e84f"}.icofont-fish-2:before{content:"\e850"}.icofont-fish-3:before{content:"\e851"}.icofont-fish-4:before{content:"\e852"}.icofont-fish-5:before{content:"\e853"}.icofont-fish:before{content:"\e854"}.icofont-fox-alt:before{content:"\e855"}.icofont-fox:before{content:"\e856"}.icofont-frog-tracks:before{content:"\e857"}.icofont-frog:before{content:"\e858"}.icofont-froggy:before{content:"\e859"}.icofont-giraffe-head-1:before{content:"\e85a"}.icofont-giraffe-head-2:before{content:"\e85b"}.icofont-giraffe-head:before{content:"\e85c"}.icofont-giraffe:before{content:"\e85d"}.icofont-goat-head:before{content:"\e85e"}.icofont-gorilla:before{content:"\e85f"}.icofont-hen-tracks:before{content:"\e860"}.icofont-horse-head-1:before{content:"\e861"}.icofont-horse-head-2:before{content:"\e862"}.icofont-horse-head:before{content:"\e863"}.icofont-horse-tracks:before{content:"\e864"}.icofont-jellyfish:before{content:"\e865"}.icofont-kangaroo:before{content:"\e866"}.icofont-lemur:before{content:"\e867"}.icofont-lion-head-1:before{content:"\e868"}.icofont-lion-head-2:before{content:"\e869"}.icofont-lion-head:before{content:"\e86a"}.icofont-lion:before{content:"\e86b"}.icofont-monkey-2:before{content:"\e86c"}.icofont-monkey-3:before{content:"\e86d"}.icofont-monkey-face:before{content:"\e86e"}.icofont-monkey:before{content:"\e86f"}.icofont-octopus-alt:before{content:"\e870"}.icofont-octopus:before{content:"\e871"}.icofont-owl:before{content:"\e872"}.icofont-panda-face:before{content:"\e873"}.icofont-panda:before{content:"\e874"}.icofont-panther:before{content:"\e875"}.icofont-parrot-lip:before{content:"\e876"}.icofont-parrot:before{content:"\e877"}.icofont-paw:before{content:"\e878"}.icofont-pelican:before{content:"\e879"}.icofont-penguin:before{content:"\e87a"}.icofont-pig-face:before{content:"\e87b"}.icofont-pig:before{content:"\e87c"}.icofont-pigeon-1:before{content:"\e87d"}.icofont-pigeon-2:before{content:"\e87e"}.icofont-pigeon:before{content:"\e87f"}.icofont-rabbit:before{content:"\e880"}.icofont-rat:before{content:"\e881"}.icofont-rhino-head:before{content:"\e882"}.icofont-rhino:before{content:"\e883"}.icofont-rooster:before{content:"\e884"}.icofont-seahorse:before{content:"\e885"}.icofont-seal:before{content:"\e886"}.icofont-shrimp-alt:before{content:"\e887"}.icofont-shrimp:before{content:"\e888"}.icofont-snail-1:before{content:"\e889"}.icofont-snail-2:before{content:"\e88a"}.icofont-snail-3:before{content:"\e88b"}.icofont-snail:before{content:"\e88c"}.icofont-snake:before{content:"\e88d"}.icofont-squid:before{content:"\e88e"}.icofont-squirrel:before{content:"\e88f"}.icofont-tiger-face:before{content:"\e890"}.icofont-tiger:before{content:"\e891"}.icofont-turtle:before{content:"\e892"}.icofont-whale:before{content:"\e893"}.icofont-woodpecker:before{content:"\e894"}.icofont-zebra:before{content:"\e895"}.icofont-brand-acer:before{content:"\e896"}.icofont-brand-adidas:before{content:"\e897"}.icofont-brand-adobe:before{content:"\e898"}.icofont-brand-air-new-zealand:before{content:"\e899"}.icofont-brand-airbnb:before{content:"\e89a"}.icofont-brand-aircell:before{content:"\e89b"}.icofont-brand-airtel:before{content:"\e89c"}.icofont-brand-alcatel:before{content:"\e89d"}.icofont-brand-alibaba:before{content:"\e89e"}.icofont-brand-aliexpress:before{content:"\e89f"}.icofont-brand-alipay:before{content:"\e8a0"}.icofont-brand-amazon:before{content:"\e8a1"}.icofont-brand-amd:before{content:"\e8a2"}.icofont-brand-american-airlines:before{content:"\e8a3"}.icofont-brand-android-robot:before{content:"\e8a4"}.icofont-brand-android:before{content:"\e8a5"}.icofont-brand-aol:before{content:"\e8a6"}.icofont-brand-apple:before{content:"\e8a7"}.icofont-brand-appstore:before{content:"\e8a8"}.icofont-brand-asus:before{content:"\e8a9"}.icofont-brand-ati:before{content:"\e8aa"}.icofont-brand-att:before{content:"\e8ab"}.icofont-brand-audi:before{content:"\e8ac"}.icofont-brand-axiata:before{content:"\e8ad"}.icofont-brand-bada:before{content:"\e8ae"}.icofont-brand-bbc:before{content:"\e8af"}.icofont-brand-bing:before{content:"\e8b0"}.icofont-brand-blackberry:before{content:"\e8b1"}.icofont-brand-bmw:before{content:"\e8b2"}.icofont-brand-box:before{content:"\e8b3"}.icofont-brand-burger-king:before{content:"\e8b4"}.icofont-brand-business-insider:before{content:"\e8b5"}.icofont-brand-buzzfeed:before{content:"\e8b6"}.icofont-brand-cannon:before{content:"\e8b7"}.icofont-brand-casio:before{content:"\e8b8"}.icofont-brand-china-mobile:before{content:"\e8b9"}.icofont-brand-china-telecom:before{content:"\e8ba"}.icofont-brand-china-unicom:before{content:"\e8bb"}.icofont-brand-cisco:before{content:"\e8bc"}.icofont-brand-citibank:before{content:"\e8bd"}.icofont-brand-cnet:before{content:"\e8be"}.icofont-brand-cnn:before{content:"\e8bf"}.icofont-brand-cocal-cola:before{content:"\e8c0"}.icofont-brand-compaq:before{content:"\e8c1"}.icofont-brand-debian:before{content:"\e8c2"}.icofont-brand-delicious:before{content:"\e8c3"}.icofont-brand-dell:before{content:"\e8c4"}.icofont-brand-designbump:before{content:"\e8c5"}.icofont-brand-designfloat:before{content:"\e8c6"}.icofont-brand-disney:before{content:"\e8c7"}.icofont-brand-dodge:before{content:"\e8c8"}.icofont-brand-dove:before{content:"\e8c9"}.icofont-brand-drupal:before{content:"\e8ca"}.icofont-brand-ebay:before{content:"\e8cb"}.icofont-brand-eleven:before{content:"\e8cc"}.icofont-brand-emirates:before{content:"\e8cd"}.icofont-brand-espn:before{content:"\e8ce"}.icofont-brand-etihad-airways:before{content:"\e8cf"}.icofont-brand-etisalat:before{content:"\e8d0"}.icofont-brand-etsy:before{content:"\e8d1"}.icofont-brand-fastrack:before{content:"\e8d2"}.icofont-brand-fedex:before{content:"\e8d3"}.icofont-brand-ferrari:before{content:"\e8d4"}.icofont-brand-fitbit:before{content:"\e8d5"}.icofont-brand-flikr:before{content:"\e8d6"}.icofont-brand-forbes:before{content:"\e8d7"}.icofont-brand-foursquare:before{content:"\e8d8"}.icofont-brand-foxconn:before{content:"\e8d9"}.icofont-brand-fujitsu:before{content:"\e8da"}.icofont-brand-general-electric:before{content:"\e8db"}.icofont-brand-gillette:before{content:"\e8dc"}.icofont-brand-gizmodo:before{content:"\e8dd"}.icofont-brand-gnome:before{content:"\e8de"}.icofont-brand-google:before{content:"\e8df"}.icofont-brand-gopro:before{content:"\e8e0"}.icofont-brand-gucci:before{content:"\e8e1"}.icofont-brand-hallmark:before{content:"\e8e2"}.icofont-brand-hi5:before{content:"\e8e3"}.icofont-brand-honda:before{content:"\e8e4"}.icofont-brand-hp:before{content:"\e8e5"}.icofont-brand-hsbc:before{content:"\e8e6"}.icofont-brand-htc:before{content:"\e8e7"}.icofont-brand-huawei:before{content:"\e8e8"}.icofont-brand-hulu:before{content:"\e8e9"}.icofont-brand-hyundai:before{content:"\e8ea"}.icofont-brand-ibm:before{content:"\e8eb"}.icofont-brand-icofont:before{content:"\e8ec"}.icofont-brand-icq:before{content:"\e8ed"}.icofont-brand-ikea:before{content:"\e8ee"}.icofont-brand-imdb:before{content:"\e8ef"}.icofont-brand-indiegogo:before{content:"\e8f0"}.icofont-brand-intel:before{content:"\e8f1"}.icofont-brand-ipair:before{content:"\e8f2"}.icofont-brand-jaguar:before{content:"\e8f3"}.icofont-brand-java:before{content:"\e8f4"}.icofont-brand-joomla:before{content:"\e8f5"}.icofont-brand-kickstarter:before{content:"\e8f6"}.icofont-brand-kik:before{content:"\e8f7"}.icofont-brand-lastfm:before{content:"\e8f8"}.icofont-brand-lego:before{content:"\e8f9"}.icofont-brand-lenovo:before{content:"\e8fa"}.icofont-brand-levis:before{content:"\e8fb"}.icofont-brand-lexus:before{content:"\e8fc"}.icofont-brand-lg:before{content:"\e8fd"}.icofont-brand-life-hacker:before{content:"\e8fe"}.icofont-brand-linux-mint:before{content:"\e8ff"}.icofont-brand-linux:before{content:"\e900"}.icofont-brand-lionix:before{content:"\e901"}.icofont-brand-loreal:before{content:"\e902"}.icofont-brand-louis-vuitton:before{content:"\e903"}.icofont-brand-mac-os:before{content:"\e904"}.icofont-brand-marvel-app:before{content:"\e905"}.icofont-brand-mashable:before{content:"\e906"}.icofont-brand-mazda:before{content:"\e907"}.icofont-brand-mcdonals:before{content:"\e908"}.icofont-brand-mercedes:before{content:"\e909"}.icofont-brand-micromax:before{content:"\e90a"}.icofont-brand-microsoft:before{content:"\e90b"}.icofont-brand-mobileme:before{content:"\e90c"}.icofont-brand-mobily:before{content:"\e90d"}.icofont-brand-motorola:before{content:"\e90e"}.icofont-brand-msi:before{content:"\e90f"}.icofont-brand-mts:before{content:"\e910"}.icofont-brand-myspace:before{content:"\e911"}.icofont-brand-mytv:before{content:"\e912"}.icofont-brand-nasa:before{content:"\e913"}.icofont-brand-natgeo:before{content:"\e914"}.icofont-brand-nbc:before{content:"\e915"}.icofont-brand-nescafe:before{content:"\e916"}.icofont-brand-nestle:before{content:"\e917"}.icofont-brand-netflix:before{content:"\e918"}.icofont-brand-nexus:before{content:"\e919"}.icofont-brand-nike:before{content:"\e91a"}.icofont-brand-nokia:before{content:"\e91b"}.icofont-brand-nvidia:before{content:"\e91c"}.icofont-brand-omega:before{content:"\e91d"}.icofont-brand-opensuse:before{content:"\e91e"}.icofont-brand-oracle:before{content:"\e91f"}.icofont-brand-panasonic:before{content:"\e920"}.icofont-brand-paypal:before{content:"\e921"}.icofont-brand-pepsi:before{content:"\e922"}.icofont-brand-philips:before{content:"\e923"}.icofont-brand-pizza-hut:before{content:"\e924"}.icofont-brand-playstation:before{content:"\e925"}.icofont-brand-puma:before{content:"\e926"}.icofont-brand-qatar-air:before{content:"\e927"}.icofont-brand-qvc:before{content:"\e928"}.icofont-brand-readernaut:before{content:"\e929"}.icofont-brand-redbull:before{content:"\e92a"}.icofont-brand-reebok:before{content:"\e92b"}.icofont-brand-reuters:before{content:"\e92c"}.icofont-brand-samsung:before{content:"\e92d"}.icofont-brand-sap:before{content:"\e92e"}.icofont-brand-saudia-airlines:before{content:"\e92f"}.icofont-brand-scribd:before{content:"\e930"}.icofont-brand-shell:before{content:"\e931"}.icofont-brand-siemens:before{content:"\e932"}.icofont-brand-sk-telecom:before{content:"\e933"}.icofont-brand-slideshare:before{content:"\e934"}.icofont-brand-smashing-magazine:before{content:"\e935"}.icofont-brand-snapchat:before{content:"\e936"}.icofont-brand-sony-ericsson:before{content:"\e937"}.icofont-brand-sony:before{content:"\e938"}.icofont-brand-soundcloud:before{content:"\e939"}.icofont-brand-sprint:before{content:"\e93a"}.icofont-brand-squidoo:before{content:"\e93b"}.icofont-brand-starbucks:before{content:"\e93c"}.icofont-brand-stc:before{content:"\e93d"}.icofont-brand-steam:before{content:"\e93e"}.icofont-brand-suzuki:before{content:"\e93f"}.icofont-brand-symbian:before{content:"\e940"}.icofont-brand-t-mobile:before{content:"\e941"}.icofont-brand-tango:before{content:"\e942"}.icofont-brand-target:before{content:"\e943"}.icofont-brand-tata-indicom:before{content:"\e944"}.icofont-brand-techcrunch:before{content:"\e945"}.icofont-brand-telenor:before{content:"\e946"}.icofont-brand-teliasonera:before{content:"\e947"}.icofont-brand-tesla:before{content:"\e948"}.icofont-brand-the-verge:before{content:"\e949"}.icofont-brand-thenextweb:before{content:"\e94a"}.icofont-brand-toshiba:before{content:"\e94b"}.icofont-brand-toyota:before{content:"\e94c"}.icofont-brand-tribenet:before{content:"\e94d"}.icofont-brand-ubuntu:before{content:"\e94e"}.icofont-brand-unilever:before{content:"\e94f"}.icofont-brand-vaio:before{content:"\e950"}.icofont-brand-verizon:before{content:"\e951"}.icofont-brand-viber:before{content:"\e952"}.icofont-brand-vodafone:before{content:"\e953"}.icofont-brand-volkswagen:before{content:"\e954"}.icofont-brand-walmart:before{content:"\e955"}.icofont-brand-warnerbros:before{content:"\e956"}.icofont-brand-whatsapp:before{content:"\e957"}.icofont-brand-wikipedia:before{content:"\e958"}.icofont-brand-windows:before{content:"\e959"}.icofont-brand-wire:before{content:"\e95a"}.icofont-brand-wordpress:before{content:"\e95b"}.icofont-brand-xiaomi:before{content:"\e95c"}.icofont-brand-yahoobuzz:before{content:"\e95d"}.icofont-brand-yamaha:before{content:"\e95e"}.icofont-brand-youtube:before{content:"\e95f"}.icofont-brand-zain:before{content:"\e960"}.icofont-bank-alt:before{content:"\e961"}.icofont-bank:before{content:"\e962"}.icofont-barcode:before{content:"\e963"}.icofont-bill-alt:before{content:"\e964"}.icofont-billboard:before{content:"\e965"}.icofont-briefcase-1:before{content:"\e966"}.icofont-briefcase-2:before{content:"\e967"}.icofont-businessman:before{content:"\e968"}.icofont-businesswoman:before{content:"\e969"}.icofont-chair:before{content:"\e96a"}.icofont-coins:before{content:"\e96b"}.icofont-company:before{content:"\e96c"}.icofont-contact-add:before{content:"\e96d"}.icofont-files-stack:before{content:"\e96e"}.icofont-handshake-deal:before{content:"\e96f"}.icofont-id-card:before{content:"\e970"}.icofont-meeting-add:before{content:"\e971"}.icofont-money-bag:before{content:"\e972"}.icofont-pie-chart:before{content:"\e973"}.icofont-presentation-alt:before{content:"\e974"}.icofont-presentation:before{content:"\e975"}.icofont-stamp:before{content:"\e976"}.icofont-stock-mobile:before{content:"\e977"}.icofont-chart-arrows-axis:before{content:"\e978"}.icofont-chart-bar-graph:before{content:"\e979"}.icofont-chart-flow-1:before{content:"\e97a"}.icofont-chart-flow-2:before{content:"\e97b"}.icofont-chart-flow:before{content:"\e97c"}.icofont-chart-growth:before{content:"\e97d"}.icofont-chart-histogram-alt:before{content:"\e97e"}.icofont-chart-histogram:before{content:"\e97f"}.icofont-chart-line-alt:before{content:"\e980"}.icofont-chart-line:before{content:"\e981"}.icofont-chart-pie-alt:before{content:"\e982"}.icofont-chart-pie:before{content:"\e983"}.icofont-chart-radar-graph:before{content:"\e984"}.icofont-architecture-alt:before{content:"\e985"}.icofont-architecture:before{content:"\e986"}.icofont-barricade:before{content:"\e987"}.icofont-bolt:before{content:"\e988"}.icofont-bricks:before{content:"\e989"}.icofont-building-alt:before{content:"\e98a"}.icofont-bull-dozer:before{content:"\e98b"}.icofont-calculations:before{content:"\e98c"}.icofont-cement-mix:before{content:"\e98d"}.icofont-cement-mixer:before{content:"\e98e"}.icofont-concrete-mixer:before{content:"\e98f"}.icofont-danger-zone:before{content:"\e990"}.icofont-drill:before{content:"\e991"}.icofont-eco-energy:before{content:"\e992"}.icofont-eco-environmen:before{content:"\e993"}.icofont-energy-air:before{content:"\e994"}.icofont-energy-oil:before{content:"\e995"}.icofont-energy-savings:before{content:"\e996"}.icofont-energy-solar:before{content:"\e997"}.icofont-energy-water:before{content:"\e998"}.icofont-engineer:before{content:"\e999"}.icofont-fire-extinguisher-alt:before{content:"\e99a"}.icofont-fire-extinguisher:before{content:"\e99b"}.icofont-fix-tools:before{content:"\e99c"}.icofont-fork-lift:before{content:"\e99d"}.icofont-glue-oil:before{content:"\e99e"}.icofont-hammer-alt:before{content:"\e99f"}.icofont-hammer:before{content:"\e9a0"}.icofont-help-robot:before{content:"\e9a1"}.icofont-industries-1:before{content:"\e9a2"}.icofont-industries-2:before{content:"\e9a3"}.icofont-industries-3:before{content:"\e9a4"}.icofont-industries-4:before{content:"\e9a5"}.icofont-industries-5:before{content:"\e9a6"}.icofont-industries:before{content:"\e9a7"}.icofont-labour:before{content:"\e9a8"}.icofont-mining:before{content:"\e9a9"}.icofont-paint-brush:before{content:"\e9aa"}.icofont-pollution:before{content:"\e9ab"}.icofont-power-zone:before{content:"\e9ac"}.icofont-radio-active:before{content:"\e9ad"}.icofont-recycle-alt:before{content:"\e9ae"}.icofont-recycling-man:before{content:"\e9af"}.icofont-safety-hat-light:before{content:"\e9b0"}.icofont-safety-hat:before{content:"\e9b1"}.icofont-saw:before{content:"\e9b2"}.icofont-screw-driver:before{content:"\e9b3"}.icofont-tools-1:before{content:"\e9b4"}.icofont-tools-bag:before{content:"\e9b5"}.icofont-tow-truck:before{content:"\e9b6"}.icofont-trolley:before{content:"\e9b7"}.icofont-trowel:before{content:"\e9b8"}.icofont-under-construction-alt:before{content:"\e9b9"}.icofont-under-construction:before{content:"\e9ba"}.icofont-vehicle-cement:before{content:"\e9bb"}.icofont-vehicle-crane:before{content:"\e9bc"}.icofont-vehicle-delivery-van:before{content:"\e9bd"}.icofont-vehicle-dozer:before{content:"\e9be"}.icofont-vehicle-excavator:before{content:"\e9bf"}.icofont-vehicle-trucktor:before{content:"\e9c0"}.icofont-vehicle-wrecking:before{content:"\e9c1"}.icofont-worker:before{content:"\e9c2"}.icofont-workers-group:before{content:"\e9c3"}.icofont-wrench:before{content:"\e9c4"}.icofont-afghani-false:before{content:"\e9c5"}.icofont-afghani-minus:before{content:"\e9c6"}.icofont-afghani-plus:before{content:"\e9c7"}.icofont-afghani-true:before{content:"\e9c8"}.icofont-afghani:before{content:"\e9c9"}.icofont-baht-false:before{content:"\e9ca"}.icofont-baht-minus:before{content:"\e9cb"}.icofont-baht-plus:before{content:"\e9cc"}.icofont-baht-true:before{content:"\e9cd"}.icofont-baht:before{content:"\e9ce"}.icofont-bitcoin-false:before{content:"\e9cf"}.icofont-bitcoin-minus:before{content:"\e9d0"}.icofont-bitcoin-plus:before{content:"\e9d1"}.icofont-bitcoin-true:before{content:"\e9d2"}.icofont-bitcoin:before{content:"\e9d3"}.icofont-dollar-flase:before{content:"\e9d4"}.icofont-dollar-minus:before{content:"\e9d5"}.icofont-dollar-plus:before{content:"\e9d6"}.icofont-dollar-true:before{content:"\e9d7"}.icofont-dollar:before{content:"\e9d8"}.icofont-dong-false:before{content:"\e9d9"}.icofont-dong-minus:before{content:"\e9da"}.icofont-dong-plus:before{content:"\e9db"}.icofont-dong-true:before{content:"\e9dc"}.icofont-dong:before{content:"\e9dd"}.icofont-euro-false:before{content:"\e9de"}.icofont-euro-minus:before{content:"\e9df"}.icofont-euro-plus:before{content:"\e9e0"}.icofont-euro-true:before{content:"\e9e1"}.icofont-euro:before{content:"\e9e2"}.icofont-frank-false:before{content:"\e9e3"}.icofont-frank-minus:before{content:"\e9e4"}.icofont-frank-plus:before{content:"\e9e5"}.icofont-frank-true:before{content:"\e9e6"}.icofont-frank:before{content:"\e9e7"}.icofont-hryvnia-false:before{content:"\e9e8"}.icofont-hryvnia-minus:before{content:"\e9e9"}.icofont-hryvnia-plus:before{content:"\e9ea"}.icofont-hryvnia-true:before{content:"\e9eb"}.icofont-hryvnia:before{content:"\e9ec"}.icofont-lira-false:before{content:"\e9ed"}.icofont-lira-minus:before{content:"\e9ee"}.icofont-lira-plus:before{content:"\e9ef"}.icofont-lira-true:before{content:"\e9f0"}.icofont-lira:before{content:"\e9f1"}.icofont-peseta-false:before{content:"\e9f2"}.icofont-peseta-minus:before{content:"\e9f3"}.icofont-peseta-plus:before{content:"\e9f4"}.icofont-peseta-true:before{content:"\e9f5"}.icofont-peseta:before{content:"\e9f6"}.icofont-peso-false:before{content:"\e9f7"}.icofont-peso-minus:before{content:"\e9f8"}.icofont-peso-plus:before{content:"\e9f9"}.icofont-peso-true:before{content:"\e9fa"}.icofont-peso:before{content:"\e9fb"}.icofont-pound-false:before{content:"\e9fc"}.icofont-pound-minus:before{content:"\e9fd"}.icofont-pound-plus:before{content:"\e9fe"}.icofont-pound-true:before{content:"\e9ff"}.icofont-pound:before{content:"\ea00"}.icofont-renminbi-false:before{content:"\ea01"}.icofont-renminbi-minus:before{content:"\ea02"}.icofont-renminbi-plus:before{content:"\ea03"}.icofont-renminbi-true:before{content:"\ea04"}.icofont-renminbi:before{content:"\ea05"}.icofont-riyal-false:before{content:"\ea06"}.icofont-riyal-minus:before{content:"\ea07"}.icofont-riyal-plus:before{content:"\ea08"}.icofont-riyal-true:before{content:"\ea09"}.icofont-riyal:before{content:"\ea0a"}.icofont-rouble-false:before{content:"\ea0b"}.icofont-rouble-minus:before{content:"\ea0c"}.icofont-rouble-plus:before{content:"\ea0d"}.icofont-rouble-true:before{content:"\ea0e"}.icofont-rouble:before{content:"\ea0f"}.icofont-rupee-false:before{content:"\ea10"}.icofont-rupee-minus:before{content:"\ea11"}.icofont-rupee-plus:before{content:"\ea12"}.icofont-rupee-true:before{content:"\ea13"}.icofont-rupee:before{content:"\ea14"}.icofont-taka-false:before{content:"\ea15"}.icofont-taka-minus:before{content:"\ea16"}.icofont-taka-plus:before{content:"\ea17"}.icofont-taka-true:before{content:"\ea18"}.icofont-taka:before{content:"\ea19"}.icofont-turkish-lira-false:before{content:"\ea1a"}.icofont-turkish-lira-minus:before{content:"\ea1b"}.icofont-turkish-lira-plus:before{content:"\ea1c"}.icofont-turkish-lira-true:before{content:"\ea1d"}.icofont-turkish-lira:before{content:"\ea1e"}.icofont-won-false:before{content:"\ea1f"}.icofont-won-minus:before{content:"\ea20"}.icofont-won-plus:before{content:"\ea21"}.icofont-won-true:before{content:"\ea22"}.icofont-won:before{content:"\ea23"}.icofont-yen-false:before{content:"\ea24"}.icofont-yen-minus:before{content:"\ea25"}.icofont-yen-plus:before{content:"\ea26"}.icofont-yen-true:before{content:"\ea27"}.icofont-yen:before{content:"\ea28"}.icofont-android-nexus:before{content:"\ea29"}.icofont-android-tablet:before{content:"\ea2a"}.icofont-apple-watch:before{content:"\ea2b"}.icofont-drawing-tablet:before{content:"\ea2c"}.icofont-earphone:before{content:"\ea2d"}.icofont-flash-drive:before{content:"\ea2e"}.icofont-game-console:before{content:"\ea2f"}.icofont-game-controller:before{content:"\ea30"}.icofont-game-pad:before{content:"\ea31"}.icofont-game:before{content:"\ea32"}.icofont-headphone-alt-1:before{content:"\ea33"}.icofont-headphone-alt-2:before{content:"\ea34"}.icofont-headphone-alt-3:before{content:"\ea35"}.icofont-headphone-alt:before{content:"\ea36"}.icofont-headphone:before{content:"\ea37"}.icofont-htc-one:before{content:"\ea38"}.icofont-imac:before{content:"\ea39"}.icofont-ipad:before{content:"\ea3a"}.icofont-iphone:before{content:"\ea3b"}.icofont-ipod-nano:before{content:"\ea3c"}.icofont-ipod-touch:before{content:"\ea3d"}.icofont-keyboard-alt:before{content:"\ea3e"}.icofont-keyboard-wireless:before{content:"\ea3f"}.icofont-keyboard:before{content:"\ea40"}.icofont-laptop-alt:before{content:"\ea41"}.icofont-laptop:before{content:"\ea42"}.icofont-macbook:before{content:"\ea43"}.icofont-magic-mouse:before{content:"\ea44"}.icofont-micro-chip:before{content:"\ea45"}.icofont-microphone-alt:before{content:"\ea46"}.icofont-microphone:before{content:"\ea47"}.icofont-monitor:before{content:"\ea48"}.icofont-mouse:before{content:"\ea49"}.icofont-mp3-player:before{content:"\ea4a"}.icofont-nintendo:before{content:"\ea4b"}.icofont-playstation-alt:before{content:"\ea4c"}.icofont-psvita:before{content:"\ea4d"}.icofont-radio-mic:before{content:"\ea4e"}.icofont-radio:before{content:"\ea4f"}.icofont-refrigerator:before{content:"\ea50"}.icofont-samsung-galaxy:before{content:"\ea51"}.icofont-surface-tablet:before{content:"\ea52"}.icofont-ui-head-phone:before{content:"\ea53"}.icofont-ui-keyboard:before{content:"\ea54"}.icofont-washing-machine:before{content:"\ea55"}.icofont-wifi-router:before{content:"\ea56"}.icofont-wii-u:before{content:"\ea57"}.icofont-windows-lumia:before{content:"\ea58"}.icofont-wireless-mouse:before{content:"\ea59"}.icofont-xbox-360:before{content:"\ea5a"}.icofont-arrow-down:before{content:"\ea5b"}.icofont-arrow-left:before{content:"\ea5c"}.icofont-arrow-right:before{content:"\ea5d"}.icofont-arrow-up:before{content:"\ea5e"}.icofont-block-down:before{content:"\ea5f"}.icofont-block-left:before{content:"\ea60"}.icofont-block-right:before{content:"\ea61"}.icofont-block-up:before{content:"\ea62"}.icofont-bubble-down:before{content:"\ea63"}.icofont-bubble-left:before{content:"\ea64"}.icofont-bubble-right:before{content:"\ea65"}.icofont-bubble-up:before{content:"\ea66"}.icofont-caret-down:before{content:"\ea67"}.icofont-caret-left:before{content:"\ea68"}.icofont-caret-right:before{content:"\ea69"}.icofont-caret-up:before{content:"\ea6a"}.icofont-circled-down:before{content:"\ea6b"}.icofont-circled-left:before{content:"\ea6c"}.icofont-circled-right:before{content:"\ea6d"}.icofont-circled-up:before{content:"\ea6e"}.icofont-collapse:before{content:"\ea6f"}.icofont-cursor-drag:before{content:"\ea70"}.icofont-curved-double-left:before{content:"\ea71"}.icofont-curved-double-right:before{content:"\ea72"}.icofont-curved-down:before{content:"\ea73"}.icofont-curved-left:before{content:"\ea74"}.icofont-curved-right:before{content:"\ea75"}.icofont-curved-up:before{content:"\ea76"}.icofont-dotted-down:before{content:"\ea77"}.icofont-dotted-left:before{content:"\ea78"}.icofont-dotted-right:before{content:"\ea79"}.icofont-dotted-up:before{content:"\ea7a"}.icofont-double-left:before{content:"\ea7b"}.icofont-double-right:before{content:"\ea7c"}.icofont-expand-alt:before{content:"\ea7d"}.icofont-hand-down:before{content:"\ea7e"}.icofont-hand-drag:before{content:"\ea7f"}.icofont-hand-drag1:before{content:"\ea80"}.icofont-hand-drag2:before{content:"\ea81"}.icofont-hand-drawn-alt-down:before{content:"\ea82"}.icofont-hand-drawn-alt-left:before{content:"\ea83"}.icofont-hand-drawn-alt-right:before{content:"\ea84"}.icofont-hand-drawn-alt-up:before{content:"\ea85"}.icofont-hand-drawn-down:before{content:"\ea86"}.icofont-hand-drawn-left:before{content:"\ea87"}.icofont-hand-drawn-right:before{content:"\ea88"}.icofont-hand-drawn-up:before{content:"\ea89"}.icofont-hand-grippers:before{content:"\ea8a"}.icofont-hand-left:before{content:"\ea8b"}.icofont-hand-right:before{content:"\ea8c"}.icofont-hand-up:before{content:"\ea8d"}.icofont-line-block-down:before{content:"\ea8e"}.icofont-line-block-left:before{content:"\ea8f"}.icofont-line-block-right:before{content:"\ea90"}.icofont-line-block-up:before{content:"\ea91"}.icofont-long-arrow-down:before{content:"\ea92"}.icofont-long-arrow-left:before{content:"\ea93"}.icofont-long-arrow-right:before{content:"\ea94"}.icofont-long-arrow-up:before{content:"\ea95"}.icofont-rounded-collapse:before{content:"\ea96"}.icofont-rounded-double-left:before{content:"\ea97"}.icofont-rounded-double-right:before{content:"\ea98"}.icofont-rounded-down:before{content:"\ea99"}.icofont-rounded-expand:before{content:"\ea9a"}.icofont-rounded-left-down:before{content:"\ea9b"}.icofont-rounded-left-up:before{content:"\ea9c"}.icofont-rounded-left:before{content:"\ea9d"}.icofont-rounded-right-down:before{content:"\ea9e"}.icofont-rounded-right-up:before{content:"\ea9f"}.icofont-rounded-right:before{content:"\eaa0"}.icofont-rounded-up:before{content:"\eaa1"}.icofont-scroll-bubble-down:before{content:"\eaa2"}.icofont-scroll-bubble-left:before{content:"\eaa3"}.icofont-scroll-bubble-right:before{content:"\eaa4"}.icofont-scroll-bubble-up:before{content:"\eaa5"}.icofont-scroll-double-down:before{content:"\eaa6"}.icofont-scroll-double-left:before{content:"\eaa7"}.icofont-scroll-double-right:before{content:"\eaa8"}.icofont-scroll-double-up:before{content:"\eaa9"}.icofont-scroll-down:before{content:"\eaaa"}.icofont-scroll-left:before{content:"\eaab"}.icofont-scroll-long-down:before{content:"\eaac"}.icofont-scroll-long-left:before{content:"\eaad"}.icofont-scroll-long-right:before{content:"\eaae"}.icofont-scroll-long-up:before{content:"\eaaf"}.icofont-scroll-right:before{content:"\eab0"}.icofont-scroll-up:before{content:"\eab1"}.icofont-simple-down:before{content:"\eab2"}.icofont-simple-left-down:before{content:"\eab3"}.icofont-simple-left-up:before{content:"\eab4"}.icofont-simple-left:before{content:"\eab5"}.icofont-simple-right-down:before{content:"\eab6"}.icofont-simple-right-up:before{content:"\eab7"}.icofont-simple-right:before{content:"\eab8"}.icofont-simple-up:before{content:"\eab9"}.icofont-square-down:before{content:"\eaba"}.icofont-square-left:before{content:"\eabb"}.icofont-square-right:before{content:"\eabc"}.icofont-square-up:before{content:"\eabd"}.icofont-stylish-down:before{content:"\eabe"}.icofont-stylish-left:before{content:"\eabf"}.icofont-stylish-right:before{content:"\eac0"}.icofont-stylish-up:before{content:"\eac1"}.icofont-swoosh-down:before{content:"\eac2"}.icofont-swoosh-left:before{content:"\eac3"}.icofont-swoosh-right:before{content:"\eac4"}.icofont-swoosh-up:before{content:"\eac5"}.icofont-thin-double-left:before{content:"\eac6"}.icofont-thin-double-right:before{content:"\eac7"}.icofont-thin-down:before{content:"\eac8"}.icofont-thin-left:before{content:"\eac9"}.icofont-thin-right:before{content:"\eaca"}.icofont-thin-up:before{content:"\eacb"}.icofont-abc:before{content:"\eacc"}.icofont-atom:before{content:"\eacd"}.icofont-award:before{content:"\eace"}.icofont-bell-alt:before{content:"\eacf"}.icofont-black-board:before{content:"\ead0"}.icofont-book-alt:before{content:"\ead1"}.icofont-book:before{content:"\ead2"}.icofont-brainstorming:before{content:"\ead3"}.icofont-certificate-alt-1:before{content:"\ead4"}.icofont-certificate-alt-2:before{content:"\ead5"}.icofont-certificate:before{content:"\ead6"}.icofont-education:before{content:"\ead7"}.icofont-electron:before{content:"\ead8"}.icofont-fountain-pen:before{content:"\ead9"}.icofont-globe-alt:before{content:"\eada"}.icofont-graduate-alt:before{content:"\eadb"}.icofont-graduate:before{content:"\eadc"}.icofont-group-students:before{content:"\eadd"}.icofont-hat-alt:before{content:"\eade"}.icofont-hat:before{content:"\eadf"}.icofont-instrument:before{content:"\eae0"}.icofont-lamp-light:before{content:"\eae1"}.icofont-medal:before{content:"\eae2"}.icofont-microscope-alt:before{content:"\eae3"}.icofont-microscope:before{content:"\eae4"}.icofont-paper:before{content:"\eae5"}.icofont-pen-alt-4:before{content:"\eae6"}.icofont-pen-nib:before{content:"\eae7"}.icofont-pencil-alt-5:before{content:"\eae8"}.icofont-quill-pen:before{content:"\eae9"}.icofont-read-book-alt:before{content:"\eaea"}.icofont-read-book:before{content:"\eaeb"}.icofont-school-bag:before{content:"\eaec"}.icofont-school-bus:before{content:"\eaed"}.icofont-student-alt:before{content:"\eaee"}.icofont-student:before{content:"\eaef"}.icofont-teacher:before{content:"\eaf0"}.icofont-test-bulb:before{content:"\eaf1"}.icofont-test-tube-alt:before{content:"\eaf2"}.icofont-university:before{content:"\eaf3"}.icofont-angry:before{content:"\eaf4"}.icofont-astonished:before{content:"\eaf5"}.icofont-confounded:before{content:"\eaf6"}.icofont-confused:before{content:"\eaf7"}.icofont-crying:before{content:"\eaf8"}.icofont-dizzy:before{content:"\eaf9"}.icofont-expressionless:before{content:"\eafa"}.icofont-heart-eyes:before{content:"\eafb"}.icofont-laughing:before{content:"\eafc"}.icofont-nerd-smile:before{content:"\eafd"}.icofont-open-mouth:before{content:"\eafe"}.icofont-rage:before{content:"\eaff"}.icofont-rolling-eyes:before{content:"\eb00"}.icofont-sad:before{content:"\eb01"}.icofont-simple-smile:before{content:"\eb02"}.icofont-slightly-smile:before{content:"\eb03"}.icofont-smirk:before{content:"\eb04"}.icofont-stuck-out-tongue:before{content:"\eb05"}.icofont-wink-smile:before{content:"\eb06"}.icofont-worried:before{content:"\eb07"}.icofont-file-alt:before{content:"\eb08"}.icofont-file-audio:before{content:"\eb09"}.icofont-file-avi-mp4:before{content:"\eb0a"}.icofont-file-bmp:before{content:"\eb0b"}.icofont-file-code:before{content:"\eb0c"}.icofont-file-css:before{content:"\eb0d"}.icofont-file-document:before{content:"\eb0e"}.icofont-file-eps:before{content:"\eb0f"}.icofont-file-excel:before{content:"\eb10"}.icofont-file-exe:before{content:"\eb11"}.icofont-file-file:before{content:"\eb12"}.icofont-file-flv:before{content:"\eb13"}.icofont-file-gif:before{content:"\eb14"}.icofont-file-html5:before{content:"\eb15"}.icofont-file-image:before{content:"\eb16"}.icofont-file-iso:before{content:"\eb17"}.icofont-file-java:before{content:"\eb18"}.icofont-file-javascript:before{content:"\eb19"}.icofont-file-jpg:before{content:"\eb1a"}.icofont-file-midi:before{content:"\eb1b"}.icofont-file-mov:before{content:"\eb1c"}.icofont-file-mp3:before{content:"\eb1d"}.icofont-file-pdf:before{content:"\eb1e"}.icofont-file-php:before{content:"\eb1f"}.icofont-file-png:before{content:"\eb20"}.icofont-file-powerpoint:before{content:"\eb21"}.icofont-file-presentation:before{content:"\eb22"}.icofont-file-psb:before{content:"\eb23"}.icofont-file-psd:before{content:"\eb24"}.icofont-file-python:before{content:"\eb25"}.icofont-file-ruby:before{content:"\eb26"}.icofont-file-spreadsheet:before{content:"\eb27"}.icofont-file-sql:before{content:"\eb28"}.icofont-file-svg:before{content:"\eb29"}.icofont-file-text:before{content:"\eb2a"}.icofont-file-tiff:before{content:"\eb2b"}.icofont-file-video:before{content:"\eb2c"}.icofont-file-wave:before{content:"\eb2d"}.icofont-file-wmv:before{content:"\eb2e"}.icofont-file-word:before{content:"\eb2f"}.icofont-file-zip:before{content:"\eb30"}.icofont-cycling-alt:before{content:"\eb31"}.icofont-cycling:before{content:"\eb32"}.icofont-dumbbell:before{content:"\eb33"}.icofont-dumbbells:before{content:"\eb34"}.icofont-gym-alt-1:before{content:"\eb35"}.icofont-gym-alt-2:before{content:"\eb36"}.icofont-gym-alt-3:before{content:"\eb37"}.icofont-gym:before{content:"\eb38"}.icofont-muscle-weight:before{content:"\eb39"}.icofont-muscle:before{content:"\eb3a"}.icofont-apple:before{content:"\eb3b"}.icofont-arabian-coffee:before{content:"\eb3c"}.icofont-artichoke:before{content:"\eb3d"}.icofont-asparagus:before{content:"\eb3e"}.icofont-avocado:before{content:"\eb3f"}.icofont-baby-food:before{content:"\eb40"}.icofont-banana:before{content:"\eb41"}.icofont-bbq:before{content:"\eb42"}.icofont-beans:before{content:"\eb43"}.icofont-beer:before{content:"\eb44"}.icofont-bell-pepper-capsicum:before{content:"\eb45"}.icofont-birthday-cake:before{content:"\eb46"}.icofont-bread:before{content:"\eb47"}.icofont-broccoli:before{content:"\eb48"}.icofont-burger:before{content:"\eb49"}.icofont-cabbage:before{content:"\eb4a"}.icofont-carrot:before{content:"\eb4b"}.icofont-cauli-flower:before{content:"\eb4c"}.icofont-cheese:before{content:"\eb4d"}.icofont-chef:before{content:"\eb4e"}.icofont-cherry:before{content:"\eb4f"}.icofont-chicken-fry:before{content:"\eb50"}.icofont-chicken:before{content:"\eb51"}.icofont-cocktail:before{content:"\eb52"}.icofont-coconut-water:before{content:"\eb53"}.icofont-coconut:before{content:"\eb54"}.icofont-coffee-alt:before{content:"\eb55"}.icofont-coffee-cup:before{content:"\eb56"}.icofont-coffee-mug:before{content:"\eb57"}.icofont-coffee-pot:before{content:"\eb58"}.icofont-cola:before{content:"\eb59"}.icofont-corn:before{content:"\eb5a"}.icofont-croissant:before{content:"\eb5b"}.icofont-crop-plant:before{content:"\eb5c"}.icofont-cucumber:before{content:"\eb5d"}.icofont-culinary:before{content:"\eb5e"}.icofont-cup-cake:before{content:"\eb5f"}.icofont-dining-table:before{content:"\eb60"}.icofont-donut:before{content:"\eb61"}.icofont-egg-plant:before{content:"\eb62"}.icofont-egg-poached:before{content:"\eb63"}.icofont-farmer-alt:before{content:"\eb64"}.icofont-farmer:before{content:"\eb65"}.icofont-fast-food:before{content:"\eb66"}.icofont-food-basket:before{content:"\eb67"}.icofont-food-cart:before{content:"\eb68"}.icofont-fork-and-knife:before{content:"\eb69"}.icofont-french-fries:before{content:"\eb6a"}.icofont-fruits:before{content:"\eb6b"}.icofont-grapes:before{content:"\eb6c"}.icofont-honey:before{content:"\eb6d"}.icofont-hot-dog:before{content:"\eb6e"}.icofont-ice-cream-alt:before{content:"\eb6f"}.icofont-ice-cream:before{content:"\eb70"}.icofont-juice:before{content:"\eb71"}.icofont-ketchup:before{content:"\eb72"}.icofont-kiwi:before{content:"\eb73"}.icofont-layered-cake:before{content:"\eb74"}.icofont-lemon-alt:before{content:"\eb75"}.icofont-lemon:before{content:"\eb76"}.icofont-lobster:before{content:"\eb77"}.icofont-mango:before{content:"\eb78"}.icofont-milk:before{content:"\eb79"}.icofont-mushroom:before{content:"\eb7a"}.icofont-noodles:before{content:"\eb7b"}.icofont-onion:before{content:"\eb7c"}.icofont-orange:before{content:"\eb7d"}.icofont-pear:before{content:"\eb7e"}.icofont-peas:before{content:"\eb7f"}.icofont-pepper:before{content:"\eb80"}.icofont-pie-alt:before{content:"\eb81"}.icofont-pie:before{content:"\eb82"}.icofont-pineapple:before{content:"\eb83"}.icofont-pizza-slice:before{content:"\eb84"}.icofont-pizza:before{content:"\eb85"}.icofont-plant:before{content:"\eb86"}.icofont-popcorn:before{content:"\eb87"}.icofont-potato:before{content:"\eb88"}.icofont-pumpkin:before{content:"\eb89"}.icofont-raddish:before{content:"\eb8a"}.icofont-restaurant-menu:before{content:"\eb8b"}.icofont-restaurant:before{content:"\eb8c"}.icofont-salt-and-pepper:before{content:"\eb8d"}.icofont-sandwich:before{content:"\eb8e"}.icofont-sausage:before{content:"\eb8f"}.icofont-soft-drinks:before{content:"\eb90"}.icofont-soup-bowl:before{content:"\eb91"}.icofont-spoon-and-fork:before{content:"\eb92"}.icofont-steak:before{content:"\eb93"}.icofont-strawberry:before{content:"\eb94"}.icofont-sub-sandwich:before{content:"\eb95"}.icofont-sushi:before{content:"\eb96"}.icofont-taco:before{content:"\eb97"}.icofont-tea-pot:before{content:"\eb98"}.icofont-tea:before{content:"\eb99"}.icofont-tomato:before{content:"\eb9a"}.icofont-watermelon:before{content:"\eb9b"}.icofont-wheat:before{content:"\eb9c"}.icofont-baby-backpack:before{content:"\eb9d"}.icofont-baby-cloth:before{content:"\eb9e"}.icofont-baby-milk-bottle:before{content:"\eb9f"}.icofont-baby-trolley:before{content:"\eba0"}.icofont-baby:before{content:"\eba1"}.icofont-candy:before{content:"\eba2"}.icofont-holding-hands:before{content:"\eba3"}.icofont-infant-nipple:before{content:"\eba4"}.icofont-kids-scooter:before{content:"\eba5"}.icofont-safety-pin:before{content:"\eba6"}.icofont-teddy-bear:before{content:"\eba7"}.icofont-toy-ball:before{content:"\eba8"}.icofont-toy-cat:before{content:"\eba9"}.icofont-toy-duck:before{content:"\ebaa"}.icofont-toy-elephant:before{content:"\ebab"}.icofont-toy-hand:before{content:"\ebac"}.icofont-toy-horse:before{content:"\ebad"}.icofont-toy-lattu:before{content:"\ebae"}.icofont-toy-train:before{content:"\ebaf"}.icofont-burglar:before{content:"\ebb0"}.icofont-cannon-firing:before{content:"\ebb1"}.icofont-cc-camera:before{content:"\ebb2"}.icofont-cop-badge:before{content:"\ebb3"}.icofont-cop:before{content:"\ebb4"}.icofont-court-hammer:before{content:"\ebb5"}.icofont-court:before{content:"\ebb6"}.icofont-finger-print:before{content:"\ebb7"}.icofont-gavel:before{content:"\ebb8"}.icofont-handcuff-alt:before{content:"\ebb9"}.icofont-handcuff:before{content:"\ebba"}.icofont-investigation:before{content:"\ebbb"}.icofont-investigator:before{content:"\ebbc"}.icofont-jail:before{content:"\ebbd"}.icofont-judge:before{content:"\ebbe"}.icofont-law-alt-1:before{content:"\ebbf"}.icofont-law-alt-2:before{content:"\ebc0"}.icofont-law-alt-3:before{content:"\ebc1"}.icofont-law-book:before{content:"\ebc2"}.icofont-law-document:before{content:"\ebc3"}.icofont-law-order:before{content:"\ebc4"}.icofont-law-protect:before{content:"\ebc5"}.icofont-law-scales:before{content:"\ebc6"}.icofont-law:before{content:"\ebc7"}.icofont-lawyer-alt-1:before{content:"\ebc8"}.icofont-lawyer-alt-2:before{content:"\ebc9"}.icofont-lawyer:before{content:"\ebca"}.icofont-legal:before{content:"\ebcb"}.icofont-pistol:before{content:"\ebcc"}.icofont-police-badge:before{content:"\ebcd"}.icofont-police-cap:before{content:"\ebce"}.icofont-police-car-alt-1:before{content:"\ebcf"}.icofont-police-car-alt-2:before{content:"\ebd0"}.icofont-police-car:before{content:"\ebd1"}.icofont-police-hat:before{content:"\ebd2"}.icofont-police-van:before{content:"\ebd3"}.icofont-police:before{content:"\ebd4"}.icofont-thief-alt:before{content:"\ebd5"}.icofont-thief:before{content:"\ebd6"}.icofont-abacus-alt:before{content:"\ebd7"}.icofont-abacus:before{content:"\ebd8"}.icofont-angle-180:before{content:"\ebd9"}.icofont-angle-45:before{content:"\ebda"}.icofont-angle-90:before{content:"\ebdb"}.icofont-angle:before{content:"\ebdc"}.icofont-calculator-alt-1:before{content:"\ebdd"}.icofont-calculator-alt-2:before{content:"\ebde"}.icofont-calculator:before{content:"\ebdf"}.icofont-circle-ruler-alt:before{content:"\ebe0"}.icofont-circle-ruler:before{content:"\ebe1"}.icofont-compass-alt-1:before{content:"\ebe2"}.icofont-compass-alt-2:before{content:"\ebe3"}.icofont-compass-alt-3:before{content:"\ebe4"}.icofont-compass-alt-4:before{content:"\ebe5"}.icofont-golden-ratio:before{content:"\ebe6"}.icofont-marker-alt-1:before{content:"\ebe7"}.icofont-marker-alt-2:before{content:"\ebe8"}.icofont-marker-alt-3:before{content:"\ebe9"}.icofont-marker:before{content:"\ebea"}.icofont-math:before{content:"\ebeb"}.icofont-mathematical-alt-1:before{content:"\ebec"}.icofont-mathematical-alt-2:before{content:"\ebed"}.icofont-mathematical:before{content:"\ebee"}.icofont-pen-alt-1:before{content:"\ebef"}.icofont-pen-alt-2:before{content:"\ebf0"}.icofont-pen-alt-3:before{content:"\ebf1"}.icofont-pen-holder-alt-1:before{content:"\ebf2"}.icofont-pen-holder:before{content:"\ebf3"}.icofont-pen:before{content:"\ebf4"}.icofont-pencil-alt-1:before{content:"\ebf5"}.icofont-pencil-alt-2:before{content:"\ebf6"}.icofont-pencil-alt-3:before{content:"\ebf7"}.icofont-pencil-alt-4:before{content:"\ebf8"}.icofont-pencil:before{content:"\ebf9"}.icofont-ruler-alt-1:before{content:"\ebfa"}.icofont-ruler-alt-2:before{content:"\ebfb"}.icofont-ruler-compass-alt:before{content:"\ebfc"}.icofont-ruler-compass:before{content:"\ebfd"}.icofont-ruler-pencil-alt-1:before{content:"\ebfe"}.icofont-ruler-pencil-alt-2:before{content:"\ebff"}.icofont-ruler-pencil:before{content:"\ec00"}.icofont-ruler:before{content:"\ec01"}.icofont-rulers-alt:before{content:"\ec02"}.icofont-rulers:before{content:"\ec03"}.icofont-square-root:before{content:"\ec04"}.icofont-ui-calculator:before{content:"\ec05"}.icofont-aids:before{content:"\ec06"}.icofont-ambulance-crescent:before{content:"\ec07"}.icofont-ambulance-cross:before{content:"\ec08"}.icofont-ambulance:before{content:"\ec09"}.icofont-autism:before{content:"\ec0a"}.icofont-bandage:before{content:"\ec0b"}.icofont-blind:before{content:"\ec0c"}.icofont-blood-drop:before{content:"\ec0d"}.icofont-blood-test:before{content:"\ec0e"}.icofont-blood:before{content:"\ec0f"}.icofont-brain-alt:before{content:"\ec10"}.icofont-brain:before{content:"\ec11"}.icofont-capsule:before{content:"\ec12"}.icofont-crutch:before{content:"\ec13"}.icofont-disabled:before{content:"\ec14"}.icofont-dna-alt-1:before{content:"\ec15"}.icofont-dna-alt-2:before{content:"\ec16"}.icofont-dna:before{content:"\ec17"}.icofont-doctor-alt:before{content:"\ec18"}.icofont-doctor:before{content:"\ec19"}.icofont-drug-pack:before{content:"\ec1a"}.icofont-drug:before{content:"\ec1b"}.icofont-first-aid-alt:before{content:"\ec1c"}.icofont-first-aid:before{content:"\ec1d"}.icofont-heart-beat-alt:before{content:"\ec1e"}.icofont-heart-beat:before{content:"\ec1f"}.icofont-heartbeat:before{content:"\ec20"}.icofont-herbal:before{content:"\ec21"}.icofont-hospital:before{content:"\ec22"}.icofont-icu:before{content:"\ec23"}.icofont-injection-syringe:before{content:"\ec24"}.icofont-laboratory:before{content:"\ec25"}.icofont-medical-sign-alt:before{content:"\ec26"}.icofont-medical-sign:before{content:"\ec27"}.icofont-nurse-alt:before{content:"\ec28"}.icofont-nurse:before{content:"\ec29"}.icofont-nursing-home:before{content:"\ec2a"}.icofont-operation-theater:before{content:"\ec2b"}.icofont-paralysis-disability:before{content:"\ec2c"}.icofont-patient-bed:before{content:"\ec2d"}.icofont-patient-file:before{content:"\ec2e"}.icofont-pills:before{content:"\ec2f"}.icofont-prescription:before{content:"\ec30"}.icofont-pulse:before{content:"\ec31"}.icofont-stethoscope-alt:before{content:"\ec32"}.icofont-stethoscope:before{content:"\ec33"}.icofont-stretcher:before{content:"\ec34"}.icofont-surgeon-alt:before{content:"\ec35"}.icofont-surgeon:before{content:"\ec36"}.icofont-tablets:before{content:"\ec37"}.icofont-test-bottle:before{content:"\ec38"}.icofont-test-tube:before{content:"\ec39"}.icofont-thermometer-alt:before{content:"\ec3a"}.icofont-thermometer:before{content:"\ec3b"}.icofont-tooth:before{content:"\ec3c"}.icofont-xray:before{content:"\ec3d"}.icofont-ui-add:before{content:"\ec3e"}.icofont-ui-alarm:before{content:"\ec3f"}.icofont-ui-battery:before{content:"\ec40"}.icofont-ui-block:before{content:"\ec41"}.icofont-ui-bluetooth:before{content:"\ec42"}.icofont-ui-brightness:before{content:"\ec43"}.icofont-ui-browser:before{content:"\ec44"}.icofont-ui-calendar:before{content:"\ec45"}.icofont-ui-call:before{content:"\ec46"}.icofont-ui-camera:before{content:"\ec47"}.icofont-ui-cart:before{content:"\ec48"}.icofont-ui-cell-phone:before{content:"\ec49"}.icofont-ui-chat:before{content:"\ec4a"}.icofont-ui-check:before{content:"\ec4b"}.icofont-ui-clip-board:before{content:"\ec4c"}.icofont-ui-clip:before{content:"\ec4d"}.icofont-ui-clock:before{content:"\ec4e"}.icofont-ui-close:before{content:"\ec4f"}.icofont-ui-contact-list:before{content:"\ec50"}.icofont-ui-copy:before{content:"\ec51"}.icofont-ui-cut:before{content:"\ec52"}.icofont-ui-delete:before{content:"\ec53"}.icofont-ui-dial-phone:before{content:"\ec54"}.icofont-ui-edit:before{content:"\ec55"}.icofont-ui-email:before{content:"\ec56"}.icofont-ui-file:before{content:"\ec57"}.icofont-ui-fire-wall:before{content:"\ec58"}.icofont-ui-flash-light:before{content:"\ec59"}.icofont-ui-flight:before{content:"\ec5a"}.icofont-ui-folder:before{content:"\ec5b"}.icofont-ui-game:before{content:"\ec5c"}.icofont-ui-handicapped:before{content:"\ec5d"}.icofont-ui-home:before{content:"\ec5e"}.icofont-ui-image:before{content:"\ec5f"}.icofont-ui-laoding:before{content:"\ec60"}.icofont-ui-lock:before{content:"\ec61"}.icofont-ui-love-add:before{content:"\ec62"}.icofont-ui-love-broken:before{content:"\ec63"}.icofont-ui-love-remove:before{content:"\ec64"}.icofont-ui-love:before{content:"\ec65"}.icofont-ui-map:before{content:"\ec66"}.icofont-ui-message:before{content:"\ec67"}.icofont-ui-messaging:before{content:"\ec68"}.icofont-ui-movie:before{content:"\ec69"}.icofont-ui-music-player:before{content:"\ec6a"}.icofont-ui-music:before{content:"\ec6b"}.icofont-ui-mute:before{content:"\ec6c"}.icofont-ui-network:before{content:"\ec6d"}.icofont-ui-next:before{content:"\ec6e"}.icofont-ui-note:before{content:"\ec6f"}.icofont-ui-office:before{content:"\ec70"}.icofont-ui-password:before{content:"\ec71"}.icofont-ui-pause:before{content:"\ec72"}.icofont-ui-play-stop:before{content:"\ec73"}.icofont-ui-play:before{content:"\ec74"}.icofont-ui-pointer:before{content:"\ec75"}.icofont-ui-power:before{content:"\ec76"}.icofont-ui-press:before{content:"\ec77"}.icofont-ui-previous:before{content:"\ec78"}.icofont-ui-rate-add:before{content:"\ec79"}.icofont-ui-rate-blank:before{content:"\ec7a"}.icofont-ui-rate-remove:before{content:"\ec7b"}.icofont-ui-rating:before{content:"\ec7c"}.icofont-ui-record:before{content:"\ec7d"}.icofont-ui-remove:before{content:"\ec7e"}.icofont-ui-reply:before{content:"\ec7f"}.icofont-ui-rotation:before{content:"\ec80"}.icofont-ui-rss:before{content:"\ec81"}.icofont-ui-search:before{content:"\ec82"}.icofont-ui-settings:before{content:"\ec83"}.icofont-ui-social-link:before{content:"\ec84"}.icofont-ui-tag:before{content:"\ec85"}.icofont-ui-text-chat:before{content:"\ec86"}.icofont-ui-text-loading:before{content:"\ec87"}.icofont-ui-theme:before{content:"\ec88"}.icofont-ui-timer:before{content:"\ec89"}.icofont-ui-touch-phone:before{content:"\ec8a"}.icofont-ui-travel:before{content:"\ec8b"}.icofont-ui-unlock:before{content:"\ec8c"}.icofont-ui-user-group:before{content:"\ec8d"}.icofont-ui-user:before{content:"\ec8e"}.icofont-ui-v-card:before{content:"\ec8f"}.icofont-ui-video-chat:before{content:"\ec90"}.icofont-ui-video-message:before{content:"\ec91"}.icofont-ui-video-play:before{content:"\ec92"}.icofont-ui-video:before{content:"\ec93"}.icofont-ui-volume:before{content:"\ec94"}.icofont-ui-weather:before{content:"\ec95"}.icofont-ui-wifi:before{content:"\ec96"}.icofont-ui-zoom-in:before{content:"\ec97"}.icofont-ui-zoom-out:before{content:"\ec98"}.icofont-cassette-player:before{content:"\ec99"}.icofont-cassette:before{content:"\ec9a"}.icofont-forward:before{content:"\ec9b"}.icofont-guiter:before{content:"\ec9c"}.icofont-movie:before{content:"\ec9d"}.icofont-multimedia:before{content:"\ec9e"}.icofont-music-alt:before{content:"\ec9f"}.icofont-music-disk:before{content:"\eca0"}.icofont-music-note:before{content:"\eca1"}.icofont-music-notes:before{content:"\eca2"}.icofont-music:before{content:"\eca3"}.icofont-mute-volume:before{content:"\eca4"}.icofont-pause:before{content:"\eca5"}.icofont-play-alt-1:before{content:"\eca6"}.icofont-play-alt-2:before{content:"\eca7"}.icofont-play-alt-3:before{content:"\eca8"}.icofont-play-pause:before{content:"\eca9"}.icofont-play:before{content:"\ecaa"}.icofont-record:before{content:"\ecab"}.icofont-retro-music-disk:before{content:"\ecac"}.icofont-rewind:before{content:"\ecad"}.icofont-song-notes:before{content:"\ecae"}.icofont-sound-wave-alt:before{content:"\ecaf"}.icofont-sound-wave:before{content:"\ecb0"}.icofont-stop:before{content:"\ecb1"}.icofont-video-alt:before{content:"\ecb2"}.icofont-video-cam:before{content:"\ecb3"}.icofont-video-clapper:before{content:"\ecb4"}.icofont-video:before{content:"\ecb5"}.icofont-volume-bar:before{content:"\ecb6"}.icofont-volume-down:before{content:"\ecb7"}.icofont-volume-mute:before{content:"\ecb8"}.icofont-volume-off:before{content:"\ecb9"}.icofont-volume-up:before{content:"\ecba"}.icofont-youtube-play:before{content:"\ecbb"}.icofont-2checkout-alt:before{content:"\ecbc"}.icofont-2checkout:before{content:"\ecbd"}.icofont-amazon-alt:before{content:"\ecbe"}.icofont-amazon:before{content:"\ecbf"}.icofont-american-express-alt:before{content:"\ecc0"}.icofont-american-express:before{content:"\ecc1"}.icofont-apple-pay-alt:before{content:"\ecc2"}.icofont-apple-pay:before{content:"\ecc3"}.icofont-bank-transfer-alt:before{content:"\ecc4"}.icofont-bank-transfer:before{content:"\ecc5"}.icofont-braintree-alt:before{content:"\ecc6"}.icofont-braintree:before{content:"\ecc7"}.icofont-cash-on-delivery-alt:before{content:"\ecc8"}.icofont-cash-on-delivery:before{content:"\ecc9"}.icofont-diners-club-alt-1:before{content:"\ecca"}.icofont-diners-club-alt-2:before{content:"\eccb"}.icofont-diners-club-alt-3:before{content:"\eccc"}.icofont-diners-club:before{content:"\eccd"}.icofont-discover-alt:before{content:"\ecce"}.icofont-discover:before{content:"\eccf"}.icofont-eway-alt:before{content:"\ecd0"}.icofont-eway:before{content:"\ecd1"}.icofont-google-wallet-alt-1:before{content:"\ecd2"}.icofont-google-wallet-alt-2:before{content:"\ecd3"}.icofont-google-wallet-alt-3:before{content:"\ecd4"}.icofont-google-wallet:before{content:"\ecd5"}.icofont-jcb-alt:before{content:"\ecd6"}.icofont-jcb:before{content:"\ecd7"}.icofont-maestro-alt:before{content:"\ecd8"}.icofont-maestro:before{content:"\ecd9"}.icofont-mastercard-alt:before{content:"\ecda"}.icofont-mastercard:before{content:"\ecdb"}.icofont-payoneer-alt:before{content:"\ecdc"}.icofont-payoneer:before{content:"\ecdd"}.icofont-paypal-alt:before{content:"\ecde"}.icofont-paypal:before{content:"\ecdf"}.icofont-sage-alt:before{content:"\ece0"}.icofont-sage:before{content:"\ece1"}.icofont-skrill-alt:before{content:"\ece2"}.icofont-skrill:before{content:"\ece3"}.icofont-stripe-alt:before{content:"\ece4"}.icofont-stripe:before{content:"\ece5"}.icofont-visa-alt:before{content:"\ece6"}.icofont-visa-electron:before{content:"\ece7"}.icofont-visa:before{content:"\ece8"}.icofont-western-union-alt:before{content:"\ece9"}.icofont-western-union:before{content:"\ecea"}.icofont-boy:before{content:"\eceb"}.icofont-business-man-alt-1:before{content:"\ecec"}.icofont-business-man-alt-2:before{content:"\eced"}.icofont-business-man-alt-3:before{content:"\ecee"}.icofont-business-man:before{content:"\ecef"}.icofont-female:before{content:"\ecf0"}.icofont-funky-man:before{content:"\ecf1"}.icofont-girl-alt:before{content:"\ecf2"}.icofont-girl:before{content:"\ecf3"}.icofont-group:before{content:"\ecf4"}.icofont-hotel-boy-alt:before{content:"\ecf5"}.icofont-hotel-boy:before{content:"\ecf6"}.icofont-kid:before{content:"\ecf7"}.icofont-man-in-glasses:before{content:"\ecf8"}.icofont-people:before{content:"\ecf9"}.icofont-support:before{content:"\ecfa"}.icofont-user-alt-1:before{content:"\ecfb"}.icofont-user-alt-2:before{content:"\ecfc"}.icofont-user-alt-3:before{content:"\ecfd"}.icofont-user-alt-4:before{content:"\ecfe"}.icofont-user-alt-5:before{content:"\ecff"}.icofont-user-alt-6:before{content:"\ed00"}.icofont-user-alt-7:before{content:"\ed01"}.icofont-user-female:before{content:"\ed02"}.icofont-user-male:before{content:"\ed03"}.icofont-user-suited:before{content:"\ed04"}.icofont-user:before{content:"\ed05"}.icofont-users-alt-1:before{content:"\ed06"}.icofont-users-alt-2:before{content:"\ed07"}.icofont-users-alt-3:before{content:"\ed08"}.icofont-users-alt-4:before{content:"\ed09"}.icofont-users-alt-5:before{content:"\ed0a"}.icofont-users-alt-6:before{content:"\ed0b"}.icofont-users-social:before{content:"\ed0c"}.icofont-users:before{content:"\ed0d"}.icofont-waiter-alt:before{content:"\ed0e"}.icofont-waiter:before{content:"\ed0f"}.icofont-woman-in-glasses:before{content:"\ed10"}.icofont-search-1:before{content:"\ed11"}.icofont-search-2:before{content:"\ed12"}.icofont-search-document:before{content:"\ed13"}.icofont-search-folder:before{content:"\ed14"}.icofont-search-job:before{content:"\ed15"}.icofont-search-map:before{content:"\ed16"}.icofont-search-property:before{content:"\ed17"}.icofont-search-restaurant:before{content:"\ed18"}.icofont-search-stock:before{content:"\ed19"}.icofont-search-user:before{content:"\ed1a"}.icofont-search:before{content:"\ed1b"}.icofont-500px:before{content:"\ed1c"}.icofont-aim:before{content:"\ed1d"}.icofont-badoo:before{content:"\ed1e"}.icofont-baidu-tieba:before{content:"\ed1f"}.icofont-bbm-messenger:before{content:"\ed20"}.icofont-bebo:before{content:"\ed21"}.icofont-behance:before{content:"\ed22"}.icofont-blogger:before{content:"\ed23"}.icofont-bootstrap:before{content:"\ed24"}.icofont-brightkite:before{content:"\ed25"}.icofont-cloudapp:before{content:"\ed26"}.icofont-concrete5:before{content:"\ed27"}.icofont-delicious:before{content:"\ed28"}.icofont-designbump:before{content:"\ed29"}.icofont-designfloat:before{content:"\ed2a"}.icofont-deviantart:before{content:"\ed2b"}.icofont-digg:before{content:"\ed2c"}.icofont-dotcms:before{content:"\ed2d"}.icofont-dribbble:before{content:"\ed2e"}.icofont-dribble:before{content:"\ed2f"}.icofont-dropbox:before{content:"\ed30"}.icofont-ebuddy:before{content:"\ed31"}.icofont-ello:before{content:"\ed32"}.icofont-ember:before{content:"\ed33"}.icofont-envato:before{content:"\ed34"}.icofont-evernote:before{content:"\ed35"}.icofont-facebook-messenger:before{content:"\ed36"}.icofont-facebook:before{content:"\ed37"}.icofont-feedburner:before{content:"\ed38"}.icofont-flikr:before{content:"\ed39"}.icofont-folkd:before{content:"\ed3a"}.icofont-foursquare:before{content:"\ed3b"}.icofont-friendfeed:before{content:"\ed3c"}.icofont-ghost:before{content:"\ed3d"}.icofont-github:before{content:"\ed3e"}.icofont-gnome:before{content:"\ed3f"}.icofont-google-buzz:before{content:"\ed40"}.icofont-google-hangouts:before{content:"\ed41"}.icofont-google-map:before{content:"\ed42"}.icofont-google-plus:before{content:"\ed43"}.icofont-google-talk:before{content:"\ed44"}.icofont-hype-machine:before{content:"\ed45"}.icofont-instagram:before{content:"\ed46"}.icofont-kakaotalk:before{content:"\ed47"}.icofont-kickstarter:before{content:"\ed48"}.icofont-kik:before{content:"\ed49"}.icofont-kiwibox:before{content:"\ed4a"}.icofont-line-messenger:before{content:"\ed4b"}.icofont-line:before{content:"\ed4c"}.icofont-linkedin:before{content:"\ed4d"}.icofont-linux-mint:before{content:"\ed4e"}.icofont-live-messenger:before{content:"\ed4f"}.icofont-livejournal:before{content:"\ed50"}.icofont-magento:before{content:"\ed51"}.icofont-meetme:before{content:"\ed52"}.icofont-meetup:before{content:"\ed53"}.icofont-mixx:before{content:"\ed54"}.icofont-newsvine:before{content:"\ed55"}.icofont-nimbuss:before{content:"\ed56"}.icofont-odnoklassniki:before{content:"\ed57"}.icofont-opencart:before{content:"\ed58"}.icofont-oscommerce:before{content:"\ed59"}.icofont-pandora:before{content:"\ed5a"}.icofont-photobucket:before{content:"\ed5b"}.icofont-picasa:before{content:"\ed5c"}.icofont-pinterest:before{content:"\ed5d"}.icofont-prestashop:before{content:"\ed5e"}.icofont-qik:before{content:"\ed5f"}.icofont-qq:before{content:"\ed60"}.icofont-readernaut:before{content:"\ed61"}.icofont-reddit:before{content:"\ed62"}.icofont-renren:before{content:"\ed63"}.icofont-rss:before{content:"\ed64"}.icofont-shopify:before{content:"\ed65"}.icofont-silverstripe:before{content:"\ed66"}.icofont-skype:before{content:"\ed67"}.icofont-slack:before{content:"\ed68"}.icofont-slashdot:before{content:"\ed69"}.icofont-slidshare:before{content:"\ed6a"}.icofont-smugmug:before{content:"\ed6b"}.icofont-snapchat:before{content:"\ed6c"}.icofont-soundcloud:before{content:"\ed6d"}.icofont-spotify:before{content:"\ed6e"}.icofont-stack-exchange:before{content:"\ed6f"}.icofont-stack-overflow:before{content:"\ed70"}.icofont-steam:before{content:"\ed71"}.icofont-stumbleupon:before{content:"\ed72"}.icofont-tagged:before{content:"\ed73"}.icofont-technorati:before{content:"\ed74"}.icofont-telegram:before{content:"\ed75"}.icofont-tinder:before{content:"\ed76"}.icofont-trello:before{content:"\ed77"}.icofont-tumblr:before{content:"\ed78"}.icofont-twitch:before{content:"\ed79"}.icofont-twitter:before{content:"\ed7a"}.icofont-typo3:before{content:"\ed7b"}.icofont-ubercart:before{content:"\ed7c"}.icofont-viber:before{content:"\ed7d"}.icofont-viddler:before{content:"\ed7e"}.icofont-vimeo:before{content:"\ed7f"}.icofont-vine:before{content:"\ed80"}.icofont-virb:before{content:"\ed81"}.icofont-virtuemart:before{content:"\ed82"}.icofont-vk:before{content:"\ed83"}.icofont-wechat:before{content:"\ed84"}.icofont-weibo:before{content:"\ed85"}.icofont-whatsapp:before{content:"\ed86"}.icofont-xing:before{content:"\ed87"}.icofont-yahoo:before{content:"\ed88"}.icofont-yelp:before{content:"\ed89"}.icofont-youku:before{content:"\ed8a"}.icofont-youtube:before{content:"\ed8b"}.icofont-zencart:before{content:"\ed8c"}.icofont-badminton-birdie:before{content:"\ed8d"}.icofont-baseball:before{content:"\ed8e"}.icofont-baseballer:before{content:"\ed8f"}.icofont-basketball-hoop:before{content:"\ed90"}.icofont-basketball:before{content:"\ed91"}.icofont-billiard-ball:before{content:"\ed92"}.icofont-boot-alt-1:before{content:"\ed93"}.icofont-boot-alt-2:before{content:"\ed94"}.icofont-boot:before{content:"\ed95"}.icofont-bowling-alt:before{content:"\ed96"}.icofont-bowling:before{content:"\ed97"}.icofont-canoe:before{content:"\ed98"}.icofont-cheer-leader:before{content:"\ed99"}.icofont-climbing:before{content:"\ed9a"}.icofont-corner:before{content:"\ed9b"}.icofont-field-alt:before{content:"\ed9c"}.icofont-field:before{content:"\ed9d"}.icofont-football-alt:before{content:"\ed9e"}.icofont-football-american:before{content:"\ed9f"}.icofont-football:before{content:"\eda0"}.icofont-foul:before{content:"\eda1"}.icofont-goal-keeper:before{content:"\eda2"}.icofont-goal:before{content:"\eda3"}.icofont-golf-alt:before{content:"\eda4"}.icofont-golf-bag:before{content:"\eda5"}.icofont-golf-cart:before{content:"\eda6"}.icofont-golf-field:before{content:"\eda7"}.icofont-golf:before{content:"\eda8"}.icofont-golfer:before{content:"\eda9"}.icofont-helmet:before{content:"\edaa"}.icofont-hockey-alt:before{content:"\edab"}.icofont-hockey:before{content:"\edac"}.icofont-ice-skate:before{content:"\edad"}.icofont-jersey-alt:before{content:"\edae"}.icofont-jersey:before{content:"\edaf"}.icofont-jumping:before{content:"\edb0"}.icofont-kick:before{content:"\edb1"}.icofont-leg:before{content:"\edb2"}.icofont-match-review:before{content:"\edb3"}.icofont-medal-sport:before{content:"\edb4"}.icofont-offside:before{content:"\edb5"}.icofont-olympic-logo:before{content:"\edb6"}.icofont-olympic:before{content:"\edb7"}.icofont-padding:before{content:"\edb8"}.icofont-penalty-card:before{content:"\edb9"}.icofont-racer:before{content:"\edba"}.icofont-racing-car:before{content:"\edbb"}.icofont-racing-flag-alt:before{content:"\edbc"}.icofont-racing-flag:before{content:"\edbd"}.icofont-racings-wheel:before{content:"\edbe"}.icofont-referee:before{content:"\edbf"}.icofont-refree-jersey:before{content:"\edc0"}.icofont-result-sport:before{content:"\edc1"}.icofont-rugby-ball:before{content:"\edc2"}.icofont-rugby-player:before{content:"\edc3"}.icofont-rugby:before{content:"\edc4"}.icofont-runner-alt-1:before{content:"\edc5"}.icofont-runner-alt-2:before{content:"\edc6"}.icofont-runner:before{content:"\edc7"}.icofont-score-board:before{content:"\edc8"}.icofont-skiing-man:before{content:"\edc9"}.icofont-skydiving-goggles:before{content:"\edca"}.icofont-snow-mobile:before{content:"\edcb"}.icofont-steering:before{content:"\edcc"}.icofont-stopwatch:before{content:"\edcd"}.icofont-substitute:before{content:"\edce"}.icofont-swimmer:before{content:"\edcf"}.icofont-table-tennis:before{content:"\edd0"}.icofont-team-alt:before{content:"\edd1"}.icofont-team:before{content:"\edd2"}.icofont-tennis-player:before{content:"\edd3"}.icofont-tennis:before{content:"\edd4"}.icofont-tracking:before{content:"\edd5"}.icofont-trophy-alt:before{content:"\edd6"}.icofont-trophy:before{content:"\edd7"}.icofont-volleyball-alt:before{content:"\edd8"}.icofont-volleyball-fire:before{content:"\edd9"}.icofont-volleyball:before{content:"\edda"}.icofont-water-bottle:before{content:"\eddb"}.icofont-whistle-alt:before{content:"\eddc"}.icofont-whistle:before{content:"\eddd"}.icofont-win-trophy:before{content:"\edde"}.icofont-align-center:before{content:"\eddf"}.icofont-align-left:before{content:"\ede0"}.icofont-align-right:before{content:"\ede1"}.icofont-all-caps:before{content:"\ede2"}.icofont-bold:before{content:"\ede3"}.icofont-brush:before{content:"\ede4"}.icofont-clip-board:before{content:"\ede5"}.icofont-code-alt:before{content:"\ede6"}.icofont-color-bucket:before{content:"\ede7"}.icofont-color-picker:before{content:"\ede8"}.icofont-copy-invert:before{content:"\ede9"}.icofont-copy:before{content:"\edea"}.icofont-cut:before{content:"\edeb"}.icofont-delete-alt:before{content:"\edec"}.icofont-edit-alt:before{content:"\eded"}.icofont-eraser-alt:before{content:"\edee"}.icofont-font:before{content:"\edef"}.icofont-heading:before{content:"\edf0"}.icofont-indent:before{content:"\edf1"}.icofont-italic-alt:before{content:"\edf2"}.icofont-italic:before{content:"\edf3"}.icofont-justify-all:before{content:"\edf4"}.icofont-justify-center:before{content:"\edf5"}.icofont-justify-left:before{content:"\edf6"}.icofont-justify-right:before{content:"\edf7"}.icofont-link-broken:before{content:"\edf8"}.icofont-outdent:before{content:"\edf9"}.icofont-paper-clip:before{content:"\edfa"}.icofont-paragraph:before{content:"\edfb"}.icofont-pin:before{content:"\edfc"}.icofont-printer:before{content:"\edfd"}.icofont-redo:before{content:"\edfe"}.icofont-rotation:before{content:"\edff"}.icofont-save:before{content:"\ee00"}.icofont-small-cap:before{content:"\ee01"}.icofont-strike-through:before{content:"\ee02"}.icofont-sub-listing:before{content:"\ee03"}.icofont-subscript:before{content:"\ee04"}.icofont-superscript:before{content:"\ee05"}.icofont-table:before{content:"\ee06"}.icofont-text-height:before{content:"\ee07"}.icofont-text-width:before{content:"\ee08"}.icofont-trash:before{content:"\ee09"}.icofont-underline:before{content:"\ee0a"}.icofont-undo:before{content:"\ee0b"}.icofont-air-balloon:before{content:"\ee0c"}.icofont-airplane-alt:before{content:"\ee0d"}.icofont-airplane:before{content:"\ee0e"}.icofont-articulated-truck:before{content:"\ee0f"}.icofont-auto-mobile:before{content:"\ee10"}.icofont-auto-rickshaw:before{content:"\ee11"}.icofont-bicycle-alt-1:before{content:"\ee12"}.icofont-bicycle-alt-2:before{content:"\ee13"}.icofont-bicycle:before{content:"\ee14"}.icofont-bus-alt-1:before{content:"\ee15"}.icofont-bus-alt-2:before{content:"\ee16"}.icofont-bus-alt-3:before{content:"\ee17"}.icofont-bus:before{content:"\ee18"}.icofont-cab:before{content:"\ee19"}.icofont-cable-car:before{content:"\ee1a"}.icofont-car-alt-1:before{content:"\ee1b"}.icofont-car-alt-2:before{content:"\ee1c"}.icofont-car-alt-3:before{content:"\ee1d"}.icofont-car-alt-4:before{content:"\ee1e"}.icofont-car:before{content:"\ee1f"}.icofont-delivery-time:before{content:"\ee20"}.icofont-fast-delivery:before{content:"\ee21"}.icofont-fire-truck-alt:before{content:"\ee22"}.icofont-fire-truck:before{content:"\ee23"}.icofont-free-delivery:before{content:"\ee24"}.icofont-helicopter:before{content:"\ee25"}.icofont-motor-bike-alt:before{content:"\ee26"}.icofont-motor-bike:before{content:"\ee27"}.icofont-motor-biker:before{content:"\ee28"}.icofont-oil-truck:before{content:"\ee29"}.icofont-rickshaw:before{content:"\ee2a"}.icofont-rocket-alt-1:before{content:"\ee2b"}.icofont-rocket-alt-2:before{content:"\ee2c"}.icofont-rocket:before{content:"\ee2d"}.icofont-sail-boat-alt-1:before{content:"\ee2e"}.icofont-sail-boat-alt-2:before{content:"\ee2f"}.icofont-sail-boat:before{content:"\ee30"}.icofont-scooter:before{content:"\ee31"}.icofont-sea-plane:before{content:"\ee32"}.icofont-ship-alt:before{content:"\ee33"}.icofont-ship:before{content:"\ee34"}.icofont-speed-boat:before{content:"\ee35"}.icofont-taxi:before{content:"\ee36"}.icofont-tractor:before{content:"\ee37"}.icofont-train-line:before{content:"\ee38"}.icofont-train-steam:before{content:"\ee39"}.icofont-tram:before{content:"\ee3a"}.icofont-truck-alt:before{content:"\ee3b"}.icofont-truck-loaded:before{content:"\ee3c"}.icofont-truck:before{content:"\ee3d"}.icofont-van-alt:before{content:"\ee3e"}.icofont-van:before{content:"\ee3f"}.icofont-yacht:before{content:"\ee40"}.icofont-5-star-hotel:before{content:"\ee41"}.icofont-air-ticket:before{content:"\ee42"}.icofont-beach-bed:before{content:"\ee43"}.icofont-beach:before{content:"\ee44"}.icofont-camping-vest:before{content:"\ee45"}.icofont-direction-sign:before{content:"\ee46"}.icofont-hill-side:before{content:"\ee47"}.icofont-hill:before{content:"\ee48"}.icofont-hotel:before{content:"\ee49"}.icofont-island-alt:before{content:"\ee4a"}.icofont-island:before{content:"\ee4b"}.icofont-sandals-female:before{content:"\ee4c"}.icofont-sandals-male:before{content:"\ee4d"}.icofont-travelling:before{content:"\ee4e"}.icofont-breakdown:before{content:"\ee4f"}.icofont-celsius:before{content:"\ee50"}.icofont-clouds:before{content:"\ee51"}.icofont-cloudy:before{content:"\ee52"}.icofont-dust:before{content:"\ee53"}.icofont-eclipse:before{content:"\ee54"}.icofont-fahrenheit:before{content:"\ee55"}.icofont-forest-fire:before{content:"\ee56"}.icofont-full-night:before{content:"\ee57"}.icofont-full-sunny:before{content:"\ee58"}.icofont-hail-night:before{content:"\ee59"}.icofont-hail-rainy-night:before{content:"\ee5a"}.icofont-hail-rainy-sunny:before{content:"\ee5b"}.icofont-hail-rainy:before{content:"\ee5c"}.icofont-hail-sunny:before{content:"\ee5d"}.icofont-hail-thunder-night:before{content:"\ee5e"}.icofont-hail-thunder-sunny:before{content:"\ee5f"}.icofont-hail-thunder:before{content:"\ee60"}.icofont-hail:before{content:"\ee61"}.icofont-hill-night:before{content:"\ee62"}.icofont-hill-sunny:before{content:"\ee63"}.icofont-hurricane:before{content:"\ee64"}.icofont-meteor:before{content:"\ee65"}.icofont-night:before{content:"\ee66"}.icofont-rainy-night:before{content:"\ee67"}.icofont-rainy-sunny:before{content:"\ee68"}.icofont-rainy-thunder:before{content:"\ee69"}.icofont-rainy:before{content:"\ee6a"}.icofont-snow-alt:before{content:"\ee6b"}.icofont-snow-flake:before{content:"\ee6c"}.icofont-snow-temp:before{content:"\ee6d"}.icofont-snow:before{content:"\ee6e"}.icofont-snowy-hail:before{content:"\ee6f"}.icofont-snowy-night-hail:before{content:"\ee70"}.icofont-snowy-night-rainy:before{content:"\ee71"}.icofont-snowy-night:before{content:"\ee72"}.icofont-snowy-rainy:before{content:"\ee73"}.icofont-snowy-sunny-hail:before{content:"\ee74"}.icofont-snowy-sunny-rainy:before{content:"\ee75"}.icofont-snowy-sunny:before{content:"\ee76"}.icofont-snowy-thunder-night:before{content:"\ee77"}.icofont-snowy-thunder-sunny:before{content:"\ee78"}.icofont-snowy-thunder:before{content:"\ee79"}.icofont-snowy-windy-night:before{content:"\ee7a"}.icofont-snowy-windy-sunny:before{content:"\ee7b"}.icofont-snowy-windy:before{content:"\ee7c"}.icofont-snowy:before{content:"\ee7d"}.icofont-sun-alt:before{content:"\ee7e"}.icofont-sun-rise:before{content:"\ee7f"}.icofont-sun-set:before{content:"\ee80"}.icofont-sun:before{content:"\ee81"}.icofont-sunny-day-temp:before{content:"\ee82"}.icofont-sunny:before{content:"\ee83"}.icofont-thunder-light:before{content:"\ee84"}.icofont-tornado:before{content:"\ee85"}.icofont-umbrella-alt:before{content:"\ee86"}.icofont-umbrella:before{content:"\ee87"}.icofont-volcano:before{content:"\ee88"}.icofont-wave:before{content:"\ee89"}.icofont-wind-scale-0:before{content:"\ee8a"}.icofont-wind-scale-1:before{content:"\ee8b"}.icofont-wind-scale-10:before{content:"\ee8c"}.icofont-wind-scale-11:before{content:"\ee8d"}.icofont-wind-scale-12:before{content:"\ee8e"}.icofont-wind-scale-2:before{content:"\ee8f"}.icofont-wind-scale-3:before{content:"\ee90"}.icofont-wind-scale-4:before{content:"\ee91"}.icofont-wind-scale-5:before{content:"\ee92"}.icofont-wind-scale-6:before{content:"\ee93"}.icofont-wind-scale-7:before{content:"\ee94"}.icofont-wind-scale-8:before{content:"\ee95"}.icofont-wind-scale-9:before{content:"\ee96"}.icofont-wind-waves:before{content:"\ee97"}.icofont-wind:before{content:"\ee98"}.icofont-windy-hail:before{content:"\ee99"}.icofont-windy-night:before{content:"\ee9a"}.icofont-windy-raining:before{content:"\ee9b"}.icofont-windy-sunny:before{content:"\ee9c"}.icofont-windy-thunder-raining:before{content:"\ee9d"}.icofont-windy-thunder:before{content:"\ee9e"}.icofont-windy:before{content:"\ee9f"}.icofont-addons:before{content:"\eea0"}.icofont-address-book:before{content:"\eea1"}.icofont-adjust:before{content:"\eea2"}.icofont-alarm:before{content:"\eea3"}.icofont-anchor:before{content:"\eea4"}.icofont-archive:before{content:"\eea5"}.icofont-at:before{content:"\eea6"}.icofont-attachment:before{content:"\eea7"}.icofont-audio:before{content:"\eea8"}.icofont-automation:before{content:"\eea9"}.icofont-badge:before{content:"\eeaa"}.icofont-bag-alt:before{content:"\eeab"}.icofont-bag:before{content:"\eeac"}.icofont-ban:before{content:"\eead"}.icofont-bar-code:before{content:"\eeae"}.icofont-bars:before{content:"\eeaf"}.icofont-basket:before{content:"\eeb0"}.icofont-battery-empty:before{content:"\eeb1"}.icofont-battery-full:before{content:"\eeb2"}.icofont-battery-half:before{content:"\eeb3"}.icofont-battery-low:before{content:"\eeb4"}.icofont-beaker:before{content:"\eeb5"}.icofont-beard:before{content:"\eeb6"}.icofont-bed:before{content:"\eeb7"}.icofont-bell:before{content:"\eeb8"}.icofont-beverage:before{content:"\eeb9"}.icofont-bill:before{content:"\eeba"}.icofont-bin:before{content:"\eebb"}.icofont-binary:before{content:"\eebc"}.icofont-binoculars:before{content:"\eebd"}.icofont-bluetooth:before{content:"\eebe"}.icofont-bomb:before{content:"\eebf"}.icofont-book-mark:before{content:"\eec0"}.icofont-box:before{content:"\eec1"}.icofont-briefcase:before{content:"\eec2"}.icofont-broken:before{content:"\eec3"}.icofont-bucket:before{content:"\eec4"}.icofont-bucket1:before{content:"\eec5"}.icofont-bucket2:before{content:"\eec6"}.icofont-bug:before{content:"\eec7"}.icofont-building:before{content:"\eec8"}.icofont-bulb-alt:before{content:"\eec9"}.icofont-bullet:before{content:"\eeca"}.icofont-bullhorn:before{content:"\eecb"}.icofont-bullseye:before{content:"\eecc"}.icofont-calendar:before{content:"\eecd"}.icofont-camera-alt:before{content:"\eece"}.icofont-camera:before{content:"\eecf"}.icofont-card:before{content:"\eed0"}.icofont-cart-alt:before{content:"\eed1"}.icofont-cart:before{content:"\eed2"}.icofont-cc:before{content:"\eed3"}.icofont-charging:before{content:"\eed4"}.icofont-chat:before{content:"\eed5"}.icofont-check-alt:before{content:"\eed6"}.icofont-check-circled:before{content:"\eed7"}.icofont-check:before{content:"\eed8"}.icofont-checked:before{content:"\eed9"}.icofont-children-care:before{content:"\eeda"}.icofont-clip:before{content:"\eedb"}.icofont-clock-time:before{content:"\eedc"}.icofont-close-circled:before{content:"\eedd"}.icofont-close-line-circled:before{content:"\eede"}.icofont-close-line-squared-alt:before{content:"\eedf"}.icofont-close-line-squared:before{content:"\eee0"}.icofont-close-line:before{content:"\eee1"}.icofont-close-squared-alt:before{content:"\eee2"}.icofont-close-squared:before{content:"\eee3"}.icofont-close:before{content:"\eee4"}.icofont-cloud-download:before{content:"\eee5"}.icofont-cloud-refresh:before{content:"\eee6"}.icofont-cloud-upload:before{content:"\eee7"}.icofont-cloud:before{content:"\eee8"}.icofont-code-not-allowed:before{content:"\eee9"}.icofont-code:before{content:"\eeea"}.icofont-comment:before{content:"\eeeb"}.icofont-compass-alt:before{content:"\eeec"}.icofont-compass:before{content:"\eeed"}.icofont-computer:before{content:"\eeee"}.icofont-connection:before{content:"\eeef"}.icofont-console:before{content:"\eef0"}.icofont-contacts:before{content:"\eef1"}.icofont-contrast:before{content:"\eef2"}.icofont-copyright:before{content:"\eef3"}.icofont-credit-card:before{content:"\eef4"}.icofont-crop:before{content:"\eef5"}.icofont-crown:before{content:"\eef6"}.icofont-cube:before{content:"\eef7"}.icofont-cubes:before{content:"\eef8"}.icofont-dashboard-web:before{content:"\eef9"}.icofont-dashboard:before{content:"\eefa"}.icofont-data:before{content:"\eefb"}.icofont-database-add:before{content:"\eefc"}.icofont-database-locked:before{content:"\eefd"}.icofont-database-remove:before{content:"\eefe"}.icofont-database:before{content:"\eeff"}.icofont-delete:before{content:"\ef00"}.icofont-diamond:before{content:"\ef01"}.icofont-dice-multiple:before{content:"\ef02"}.icofont-dice:before{content:"\ef03"}.icofont-disc:before{content:"\ef04"}.icofont-diskette:before{content:"\ef05"}.icofont-document-folder:before{content:"\ef06"}.icofont-download-alt:before{content:"\ef07"}.icofont-download:before{content:"\ef08"}.icofont-downloaded:before{content:"\ef09"}.icofont-drag:before{content:"\ef0a"}.icofont-drag1:before{content:"\ef0b"}.icofont-drag2:before{content:"\ef0c"}.icofont-drag3:before{content:"\ef0d"}.icofont-earth:before{content:"\ef0e"}.icofont-ebook:before{content:"\ef0f"}.icofont-edit:before{content:"\ef10"}.icofont-eject:before{content:"\ef11"}.icofont-email:before{content:"\ef12"}.icofont-envelope-open:before{content:"\ef13"}.icofont-envelope:before{content:"\ef14"}.icofont-eraser:before{content:"\ef15"}.icofont-error:before{content:"\ef16"}.icofont-excavator:before{content:"\ef17"}.icofont-exchange:before{content:"\ef18"}.icofont-exclamation-circle:before{content:"\ef19"}.icofont-exclamation-square:before{content:"\ef1a"}.icofont-exclamation-tringle:before{content:"\ef1b"}.icofont-exclamation:before{content:"\ef1c"}.icofont-exit:before{content:"\ef1d"}.icofont-expand:before{content:"\ef1e"}.icofont-external-link:before{content:"\ef1f"}.icofont-external:before{content:"\ef20"}.icofont-eye-alt:before{content:"\ef21"}.icofont-eye-blocked:before{content:"\ef22"}.icofont-eye-dropper:before{content:"\ef23"}.icofont-eye:before{content:"\ef24"}.icofont-favourite:before{content:"\ef25"}.icofont-fax:before{content:"\ef26"}.icofont-file-fill:before{content:"\ef27"}.icofont-film:before{content:"\ef28"}.icofont-filter:before{content:"\ef29"}.icofont-fire-alt:before{content:"\ef2a"}.icofont-fire-burn:before{content:"\ef2b"}.icofont-fire:before{content:"\ef2c"}.icofont-flag-alt-1:before{content:"\ef2d"}.icofont-flag-alt-2:before{content:"\ef2e"}.icofont-flag:before{content:"\ef2f"}.icofont-flame-torch:before{content:"\ef30"}.icofont-flash-light:before{content:"\ef31"}.icofont-flash:before{content:"\ef32"}.icofont-flask:before{content:"\ef33"}.icofont-focus:before{content:"\ef34"}.icofont-folder-open:before{content:"\ef35"}.icofont-folder:before{content:"\ef36"}.icofont-foot-print:before{content:"\ef37"}.icofont-garbage:before{content:"\ef38"}.icofont-gear-alt:before{content:"\ef39"}.icofont-gear:before{content:"\ef3a"}.icofont-gears:before{content:"\ef3b"}.icofont-gift:before{content:"\ef3c"}.icofont-glass:before{content:"\ef3d"}.icofont-globe:before{content:"\ef3e"}.icofont-graffiti:before{content:"\ef3f"}.icofont-grocery:before{content:"\ef40"}.icofont-hand:before{content:"\ef41"}.icofont-hanger:before{content:"\ef42"}.icofont-hard-disk:before{content:"\ef43"}.icofont-heart-alt:before{content:"\ef44"}.icofont-heart:before{content:"\ef45"}.icofont-history:before{content:"\ef46"}.icofont-home:before{content:"\ef47"}.icofont-horn:before{content:"\ef48"}.icofont-hour-glass:before{content:"\ef49"}.icofont-id:before{content:"\ef4a"}.icofont-image:before{content:"\ef4b"}.icofont-inbox:before{content:"\ef4c"}.icofont-infinite:before{content:"\ef4d"}.icofont-info-circle:before{content:"\ef4e"}.icofont-info-square:before{content:"\ef4f"}.icofont-info:before{content:"\ef50"}.icofont-institution:before{content:"\ef51"}.icofont-interface:before{content:"\ef52"}.icofont-invisible:before{content:"\ef53"}.icofont-jacket:before{content:"\ef54"}.icofont-jar:before{content:"\ef55"}.icofont-jewlery:before{content:"\ef56"}.icofont-karate:before{content:"\ef57"}.icofont-key-hole:before{content:"\ef58"}.icofont-key:before{content:"\ef59"}.icofont-label:before{content:"\ef5a"}.icofont-lamp:before{content:"\ef5b"}.icofont-layers:before{content:"\ef5c"}.icofont-layout:before{content:"\ef5d"}.icofont-leaf:before{content:"\ef5e"}.icofont-leaflet:before{content:"\ef5f"}.icofont-learn:before{content:"\ef60"}.icofont-lego:before{content:"\ef61"}.icofont-lens:before{content:"\ef62"}.icofont-letter:before{content:"\ef63"}.icofont-letterbox:before{content:"\ef64"}.icofont-library:before{content:"\ef65"}.icofont-license:before{content:"\ef66"}.icofont-life-bouy:before{content:"\ef67"}.icofont-life-buoy:before{content:"\ef68"}.icofont-life-jacket:before{content:"\ef69"}.icofont-life-ring:before{content:"\ef6a"}.icofont-light-bulb:before{content:"\ef6b"}.icofont-lighter:before{content:"\ef6c"}.icofont-lightning-ray:before{content:"\ef6d"}.icofont-like:before{content:"\ef6e"}.icofont-line-height:before{content:"\ef6f"}.icofont-link-alt:before{content:"\ef70"}.icofont-link:before{content:"\ef71"}.icofont-list:before{content:"\ef72"}.icofont-listening:before{content:"\ef73"}.icofont-listine-dots:before{content:"\ef74"}.icofont-listing-box:before{content:"\ef75"}.icofont-listing-number:before{content:"\ef76"}.icofont-live-support:before{content:"\ef77"}.icofont-location-arrow:before{content:"\ef78"}.icofont-location-pin:before{content:"\ef79"}.icofont-lock:before{content:"\ef7a"}.icofont-login:before{content:"\ef7b"}.icofont-logout:before{content:"\ef7c"}.icofont-lollipop:before{content:"\ef7d"}.icofont-long-drive:before{content:"\ef7e"}.icofont-look:before{content:"\ef7f"}.icofont-loop:before{content:"\ef80"}.icofont-luggage:before{content:"\ef81"}.icofont-lunch:before{content:"\ef82"}.icofont-lungs:before{content:"\ef83"}.icofont-magic-alt:before{content:"\ef84"}.icofont-magic:before{content:"\ef85"}.icofont-magnet:before{content:"\ef86"}.icofont-mail-box:before{content:"\ef87"}.icofont-mail:before{content:"\ef88"}.icofont-male:before{content:"\ef89"}.icofont-map-pins:before{content:"\ef8a"}.icofont-map:before{content:"\ef8b"}.icofont-maximize:before{content:"\ef8c"}.icofont-measure:before{content:"\ef8d"}.icofont-medicine:before{content:"\ef8e"}.icofont-mega-phone:before{content:"\ef8f"}.icofont-megaphone-alt:before{content:"\ef90"}.icofont-megaphone:before{content:"\ef91"}.icofont-memorial:before{content:"\ef92"}.icofont-memory-card:before{content:"\ef93"}.icofont-mic-mute:before{content:"\ef94"}.icofont-mic:before{content:"\ef95"}.icofont-military:before{content:"\ef96"}.icofont-mill:before{content:"\ef97"}.icofont-minus-circle:before{content:"\ef98"}.icofont-minus-square:before{content:"\ef99"}.icofont-minus:before{content:"\ef9a"}.icofont-mobile-phone:before{content:"\ef9b"}.icofont-molecule:before{content:"\ef9c"}.icofont-money:before{content:"\ef9d"}.icofont-moon:before{content:"\ef9e"}.icofont-mop:before{content:"\ef9f"}.icofont-muffin:before{content:"\efa0"}.icofont-mustache:before{content:"\efa1"}.icofont-navigation-menu:before{content:"\efa2"}.icofont-navigation:before{content:"\efa3"}.icofont-network-tower:before{content:"\efa4"}.icofont-network:before{content:"\efa5"}.icofont-news:before{content:"\efa6"}.icofont-newspaper:before{content:"\efa7"}.icofont-no-smoking:before{content:"\efa8"}.icofont-not-allowed:before{content:"\efa9"}.icofont-notebook:before{content:"\efaa"}.icofont-notepad:before{content:"\efab"}.icofont-notification:before{content:"\efac"}.icofont-numbered:before{content:"\efad"}.icofont-opposite:before{content:"\efae"}.icofont-optic:before{content:"\efaf"}.icofont-options:before{content:"\efb0"}.icofont-package:before{content:"\efb1"}.icofont-page:before{content:"\efb2"}.icofont-paint:before{content:"\efb3"}.icofont-paper-plane:before{content:"\efb4"}.icofont-paperclip:before{content:"\efb5"}.icofont-papers:before{content:"\efb6"}.icofont-pay:before{content:"\efb7"}.icofont-penguin-linux:before{content:"\efb8"}.icofont-pestle:before{content:"\efb9"}.icofont-phone-circle:before{content:"\efba"}.icofont-phone:before{content:"\efbb"}.icofont-picture:before{content:"\efbc"}.icofont-pine:before{content:"\efbd"}.icofont-pixels:before{content:"\efbe"}.icofont-plugin:before{content:"\efbf"}.icofont-plus-circle:before{content:"\efc0"}.icofont-plus-square:before{content:"\efc1"}.icofont-plus:before{content:"\efc2"}.icofont-polygonal:before{content:"\efc3"}.icofont-power:before{content:"\efc4"}.icofont-price:before{content:"\efc5"}.icofont-print:before{content:"\efc6"}.icofont-puzzle:before{content:"\efc7"}.icofont-qr-code:before{content:"\efc8"}.icofont-queen:before{content:"\efc9"}.icofont-question-circle:before{content:"\efca"}.icofont-question-square:before{content:"\efcb"}.icofont-question:before{content:"\efcc"}.icofont-quote-left:before{content:"\efcd"}.icofont-quote-right:before{content:"\efce"}.icofont-random:before{content:"\efcf"}.icofont-recycle:before{content:"\efd0"}.icofont-refresh:before{content:"\efd1"}.icofont-repair:before{content:"\efd2"}.icofont-reply-all:before{content:"\efd3"}.icofont-reply:before{content:"\efd4"}.icofont-resize:before{content:"\efd5"}.icofont-responsive:before{content:"\efd6"}.icofont-retweet:before{content:"\efd7"}.icofont-road:before{content:"\efd8"}.icofont-robot:before{content:"\efd9"}.icofont-royal:before{content:"\efda"}.icofont-rss-feed:before{content:"\efdb"}.icofont-safety:before{content:"\efdc"}.icofont-sale-discount:before{content:"\efdd"}.icofont-satellite:before{content:"\efde"}.icofont-send-mail:before{content:"\efdf"}.icofont-server:before{content:"\efe0"}.icofont-settings-alt:before{content:"\efe1"}.icofont-settings:before{content:"\efe2"}.icofont-share-alt:before{content:"\efe3"}.icofont-share-boxed:before{content:"\efe4"}.icofont-share:before{content:"\efe5"}.icofont-shield:before{content:"\efe6"}.icofont-shopping-cart:before{content:"\efe7"}.icofont-sign-in:before{content:"\efe8"}.icofont-sign-out:before{content:"\efe9"}.icofont-signal:before{content:"\efea"}.icofont-site-map:before{content:"\efeb"}.icofont-smart-phone:before{content:"\efec"}.icofont-soccer:before{content:"\efed"}.icofont-sort-alt:before{content:"\efee"}.icofont-sort:before{content:"\efef"}.icofont-space:before{content:"\eff0"}.icofont-spanner:before{content:"\eff1"}.icofont-speech-comments:before{content:"\eff2"}.icofont-speed-meter:before{content:"\eff3"}.icofont-spinner-alt-1:before{content:"\eff4"}.icofont-spinner-alt-2:before{content:"\eff5"}.icofont-spinner-alt-3:before{content:"\eff6"}.icofont-spinner-alt-4:before{content:"\eff7"}.icofont-spinner-alt-5:before{content:"\eff8"}.icofont-spinner-alt-6:before{content:"\eff9"}.icofont-spinner:before{content:"\effa"}.icofont-spreadsheet:before{content:"\effb"}.icofont-square:before{content:"\effc"}.icofont-ssl-security:before{content:"\effd"}.icofont-star-alt-1:before{content:"\effe"}.icofont-star-alt-2:before{content:"\efff"}.icofont-star:before{content:"\f000"}.icofont-street-view:before{content:"\f001"}.icofont-support-faq:before{content:"\f002"}.icofont-tack-pin:before{content:"\f003"}.icofont-tag:before{content:"\f004"}.icofont-tags:before{content:"\f005"}.icofont-tasks-alt:before{content:"\f006"}.icofont-tasks:before{content:"\f007"}.icofont-telephone:before{content:"\f008"}.icofont-telescope:before{content:"\f009"}.icofont-terminal:before{content:"\f00a"}.icofont-thumbs-down:before{content:"\f00b"}.icofont-thumbs-up:before{content:"\f00c"}.icofont-tick-boxed:before{content:"\f00d"}.icofont-tick-mark:before{content:"\f00e"}.icofont-ticket:before{content:"\f00f"}.icofont-tie:before{content:"\f010"}.icofont-toggle-off:before{content:"\f011"}.icofont-toggle-on:before{content:"\f012"}.icofont-tools-alt-2:before{content:"\f013"}.icofont-tools:before{content:"\f014"}.icofont-touch:before{content:"\f015"}.icofont-traffic-light:before{content:"\f016"}.icofont-transparent:before{content:"\f017"}.icofont-tree:before{content:"\f018"}.icofont-unique-idea:before{content:"\f019"}.icofont-unlock:before{content:"\f01a"}.icofont-unlocked:before{content:"\f01b"}.icofont-upload-alt:before{content:"\f01c"}.icofont-upload:before{content:"\f01d"}.icofont-usb-drive:before{content:"\f01e"}.icofont-usb:before{content:"\f01f"}.icofont-vector-path:before{content:"\f020"}.icofont-verification-check:before{content:"\f021"}.icofont-wall-clock:before{content:"\f022"}.icofont-wall:before{content:"\f023"}.icofont-wallet:before{content:"\f024"}.icofont-warning-alt:before{content:"\f025"}.icofont-warning:before{content:"\f026"}.icofont-water-drop:before{content:"\f027"}.icofont-web:before{content:"\f028"}.icofont-wheelchair:before{content:"\f029"}.icofont-wifi-alt:before{content:"\f02a"}.icofont-wifi:before{content:"\f02b"}.icofont-world:before{content:"\f02c"}.icofont-zigzag:before{content:"\f02d"}.icofont-zipped:before{content:"\f02e"}.icofont-xs{font-size:.5em}.icofont-sm{font-size:.75em}.icofont-md{font-size:1.25em}.icofont-lg{font-size:1.5em}.icofont-1x{font-size:1em}.icofont-2x{font-size:2em}.icofont-3x{font-size:3em}.icofont-4x{font-size:4em}.icofont-5x{font-size:5em}.icofont-6x{font-size:6em}.icofont-7x{font-size:7em}.icofont-8x{font-size:8em}.icofont-9x{font-size:9em}.icofont-10x{font-size:10em}.icofont-fw{text-align:center;width:1.25em}.icofont-ul{list-style-type:none;padding-left:0;margin-left:0}.icofont-ul>li{position:relative;line-height:2em}.icofont-ul>li .icofont{display:inline-block;vertical-align:middle}.icofont-border{border:solid .08em #f1f1f1;border-radius:.1em;padding:.2em .25em .15em}.icofont-pull-left{float:left}.icofont-pull-right{float:right}.icofont.icofont-pull-left{margin-right:.3em}.icofont.icofont-pull-right{margin-left:.3em}.icofont-spin{-webkit-animation:icofont-spin 2s infinite linear;animation:icofont-spin 2s infinite linear;display:inline-block}.icofont-pulse{-webkit-animation:icofont-spin 1s infinite steps(8);animation:icofont-spin 1s infinite steps(8);display:inline-block}@-webkit-keyframes icofont-spin{0%{-webkit-transform:rotate(0);transform:rotate(0)}100%{-webkit-transform:rotate(360deg);transform:rotate(360deg)}}@keyframes icofont-spin{0%{-webkit-transform:rotate(0);transform:rotate(0)}100%{-webkit-transform:rotate(360deg);transform:rotate(360deg)}}.icofont-rotate-90{-webkit-transform:rotate(90deg);transform:rotate(90deg)}.icofont-rotate-180{-webkit-transform:rotate(180deg);transform:rotate(180deg)}.icofont-rotate-270{-webkit-transform:rotate(270deg);transform:rotate(270deg)}.icofont-flip-horizontal{-webkit-transform:scale(-1,1);transform:scale(-1,1)}.icofont-flip-vertical{-webkit-transform:scale(1,-1);transform:scale(1,-1)}.icofont-flip-horizontal.icofont-flip-vertical{-webkit-transform:scale(-1,-1);transform:scale(-1,-1)}:root .icofont-flip-horizontal,:root .icofont-flip-vertical,:root .icofont-rotate-180,:root .icofont-rotate-270,:root .icofont-rotate-90{-webkit-filter:none;filter:none;display:inline-block}.icofont-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}
+
+
+
+
+/*!
+ * Font Awesome Free 5.11.2 by @fontawesome - ://fontawesome.com
+ * License - ://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-adobe:before{content:"\f778"}.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-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-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-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-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-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-dashcube:before{content:"\f210"}.fa-database:before{content:"\f1c0"}.fa-deaf:before{content:"\f2a4"}.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-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-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-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-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-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-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-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-usd:before{content:"\f4c0"}.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-spock:before{content:"\f259"}.fa-hands:before{content:"\f4c2"}.fa-hands-helping:before{content:"\f4c4"}.fa-handshake:before{content:"\f2b5"}.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-haykal:before{content:"\f666"}.fa-hdd:before{content:"\f0a0"}.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-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-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-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-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-instagram:before{content:"\f16d"}.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-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-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-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-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-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-carry:before{content:"\f4ce"}.fa-pepper-hot:before{content:"\f816"}.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-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-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-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-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-ship:before{content:"\f21a"}.fa-shipping-fast:before{content:"\f48b"}.fa-shirtsinbulk:before{content:"\f214"}.fa-shoe-prints:before{content:"\f54b"}.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-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-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-store:before{content:"\f54e"}.fa-store-alt:before{content:"\f54f"}.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-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-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-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-underline:before{content:"\f0cd"}.fa-undo:before{content:"\f0e2"}.fa-undo-alt:before{content:"\f2ea"}.fa-uniregistry:before{content:"\f404"}.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-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-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-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-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-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-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:normal;font-display:auto;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:auto;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-weight:400}@font-face{font-family:"Font Awesome 5 Free";font-style:normal;font-weight:900;font-display:auto;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}
+
+
+
+
+
+
+
+
+/*!
+ * Font Awesome 4.5.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-webfont3295.eot?v=4.5.0');src:url('../fonts/fontawesome-webfontd41d.eot?#iefix&v=4.5.0') format('embedded-opentype'),url('../fonts/fontawesome-webfont3295.woff2?v=4.5.0') format('woff2'),url('../fonts/fontawesome-webfont3295.woff?v=4.5.0') format('woff'),url('../fonts/fontawesome-webfont3295.ttf?v=4.5.0') format('truetype'),url('../fonts/fontawesome-webfont3295.svg?v=4.5.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{filter:progid:DXImageTransform.Microsoft.BasicImage(rotation=1);-webkit-transform:rotate(90deg);-ms-transform:rotate(90deg);transform:rotate(90deg)}.fa-rotate-180{filter:progid:DXImageTransform.Microsoft.BasicImage(rotation=2);-webkit-transform:rotate(180deg);-ms-transform:rotate(180deg);transform:rotate(180deg)}.fa-rotate-270{filter:progid:DXImageTransform.Microsoft.BasicImage(rotation=3);-webkit-transform:rotate(270deg);-ms-transform:rotate(270deg);transform:rotate(270deg)}.fa-flip-horizontal{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{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-trlowgo: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: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-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-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"}
+
+ /*
+ Flaticon icon font: Flaticon
+ */
+@font-face{font-family:Flaticon;src:url(../fonts/Flaticon.woff2) format("woff2"),url(../fonts/Flaticon.woff) format("woff");font-weight:400;font-style:normal}[class*=" flaticon-"]:after,[class*=" flaticon-"]:before,[class^=flaticon-]:after,[class^=flaticon-]:before{font-family:Flaticon;font-style:normal}.flaticon-map:before{content:"\f100"}.flaticon-mail:before{content:"\f101"}.flaticon-call-answer:before{content:"\f102"}.flaticon-chat:before{content:"\f103"}.flaticon-left-arrow:before{content:"\f104"}.flaticon-right-arrow:before{content:"\f105"}.flaticon-back:before{content:"\f106"}.flaticon-next:before{content:"\f107"}.flaticon-play-button:before{content:"\f108"}.flaticon-play-button-1:before{content:"\f109"}.flaticon-upload:before{content:"\f10a"}.flaticon-back-1:before{content:"\f10b"}.flaticon-responsive:before{content:"\f10c"}.flaticon-add:before{content:"\f10d"}.flaticon-play-button-2:before{content:"\f10e"}.flaticon-android:before{content:"\f10f"}.flaticon-fire:before{content:"\f110"}.flaticon-layers:before{content:"\f111"}.flaticon-computer:before{content:"\f112"}.flaticon-chip:before{content:"\f113"}.flaticon-cogwheels:before{content:"\f114"}.flaticon-support:before{content:"\f115"}.flaticon-web:before{content:"\f116"}.flaticon-headset:before{content:"\f117"}.flaticon-facebook:before{content:"\f118"}.flaticon-drop-of-liquid:before{content:"\f119"}.flaticon-drop:before{content:"\f11a"}.flaticon-placeholder:before{content:"\f11b"}.flaticon-shield:before{content:"\f11c"}.flaticon-fountain-pen:before{content:"\f11d"}.flaticon-fountain-pen-1:before{content:"\f11e"}.flaticon-settings:before{content:"\f11f"}.flaticon-phone-call:before{content:"\f120"}.flaticon-call:before{content:"\f121"}.flaticon-settings-1:before{content:"\f122"}.flaticon-placeholder-1:before{content:"\f123"}.flaticon-pen:before{content:"\f124"}.flaticon-analytics:before{content:"\f125"}.flaticon-monitor:before{content:"\f126"}.flaticon-email:before{content:"\f127"}.flaticon-speech-bubble:before{content:"\f128"}.flaticon-suitcase:before{content:"\f129"}.flaticon-communications:before{content:"\f12a"}.flaticon-cash:before{content:"\f12b"}.flaticon-twitter:before{content:"\f12c"}.flaticon-twitter-2:before{content:"\f12d"}.flaticon-instagram-logo:before{content:"\f12e"}.flaticon-instagram-1:before{content:"\f12f"}.flaticon-whatsapp-1:before{content:"\f130"}.flaticon-linkedin-2:before{content:"\f131"}.flaticon-twitter-1:before{content:"\f132"}.flaticon-facebook-3:before{content:"\f133"}.flaticon-whatsapp-2:before{content:"\f134"}.flaticon-xiaomi:before{content:"\f135"}.flaticon-odnoklassniki:before{content:"\f136"}.flaticon-pinterest:before{content:"\f137"}.flaticon-pinterest-1:before{content:"\f138"}.flaticon-wifi:before{content:"\f139"}.flaticon-light-bulb:before{content:"\f13a"}.flaticon-project-management:before{content:"\f13b"}.flaticon-monitor-1:before{content:"\f13c"}.flaticon-camera:before{content:"\f13d"}.flaticon-user:before{content:"\f13e"}.flaticon-advertising:before{content:"\f13f"}.flaticon-select:before{content:"\f140"}.flaticon-snowflake:before{content:"\f141"}.flaticon-snowflake-1:before{content:"\f142"}.flaticon-travel-agency:before{content:"\f143"}.flaticon-bauble:before{content:"\f144"}.flaticon-temporary-agency:before{content:"\f145"}.flaticon-star:before{content:"\f146"}.flaticon-snow-globe:before{content:"\f147"}.flaticon-christmas-tree:before{content:"\f148"}.flaticon-gift:before{content:"\f149"}.flaticon-mortgage:before{content:"\f14a"}.flaticon-monitoring:before{content:"\f14b"}.flaticon-network-1:before{content:"\f14c"}.flaticon-neural:before{content:"\f14d"}.flaticon-networking:before{content:"\f14e"}.flaticon-cloud-computing:before{content:"\f14f"}.flaticon-cloud-computing-1:before{content:"\f150"}.flaticon-microchip:before{content:"\f151"}.flaticon-social-care:before{content:"\f152"}.flaticon-help:before{content:"\f153"}.flaticon-begging:before{content:"\f154"}.flaticon-customer-service:before{content:"\f155"}.flaticon-support-2:before{content:"\f156"}.flaticon-support-3:before{content:"\f157"}.flaticon-customer-service-1:before{content:"\f158"}.flaticon-customer-support:before{content:"\f159"}.flaticon-headphones:before{content:"\f15a"}.flaticon-social-care-1:before{content:"\f15b"}.flaticon-care:before{content:"\f15c"}.flaticon-user-1:before{content:"\f15d"}.flaticon-phone:before{content:"\f15e"}.flaticon-search:before{content:"\f15f"}.flaticon-facebook-4:before{content:"\f160"}.flaticon-pin:before{content:"\f161"}.flaticon-user-2:before{content:"\f162"}.flaticon-internet:before{content:"\f163"}.flaticon-user-3:before{content:"\f164"}.flaticon-chat-1:before{content:"\f165"}.flaticon-team:before{content:"\f166"}.flaticon-connection:before{content:"\f167"}.flaticon-bar-chart:before{content:"\f168"}.flaticon-money:before{content:"\f169"}.flaticon-file:before{content:"\f16a"}.flaticon-linkedin-3:before{content:"\f16b"}.flaticon-pinterest-2:before{content:"\f16c"}.flaticon-google-browser:before{content:"\f16d"}.flaticon-gmail-1:before{content:"\f16e"}.flaticon-gmail-3:before{content:"\f16f"}.flaticon-vimeo:before{content:"\f170"}.flaticon-vimeo-2:before{content:"\f171"}.flaticon-skype:before{content:"\f172"}.flaticon-skype-1:before{content:"\f173"}.flaticon-skype-2:before{content:"\f174"}.flaticon-skype-3:before{content:"\f175"}.flaticon-google-plus-logo:before{content:"\f176"}.flaticon-like:before{content:"\f177"}.flaticon-clock:before{content:"\f178"}.flaticon-loupe:before{content:"\f179"}.flaticon-money-1:before{content:"\f17a"}.flaticon-hand-shake:before{content:"\f17b"}.flaticon-team-1:before{content:"\f17c"}.flaticon-money-2:before{content:"\f17d"}.flaticon-man:before{content:"\f17e"}.flaticon-value:before{content:"\f17f"}.flaticon-share:before{content:"\f180"}.flaticon-time:before{content:"\f181"}.flaticon-school:before{content:"\f182"}.flaticon-chart:before{content:"\f183"}.flaticon-data:before{content:"\f184"}.flaticon-photo:before{content:"\f185"}.flaticon-internet-1:before{content:"\f186"}.flaticon-money-3:before{content:"\f187"}.flaticon-payment:before{content:"\f188"}.flaticon-pin-1:before{content:"\f189"}.flaticon-time-1:before{content:"\f18a"}.flaticon-idea:before{content:"\f18b"}.flaticon-download:before{content:"\f18c"}.flaticon-growth:before{content:"\f18d"}.flaticon-multimedia:before{content:"\f18e"}.flaticon-network-2:before{content:"\f18f"}.flaticon-next-1:before{content:"\f190"}.flaticon-origami:before{content:"\f191"}.flaticon-share-1:before{content:"\f192"}.flaticon-clock-1:before{content:"\f193"}.flaticon-refresh:before{content:"\f194"}.flaticon-avatar:before{content:"\f195"}.flaticon-support-4:before{content:"\f196"}.flaticon-cursor:before{content:"\f197"}.flaticon-brain:before{content:"\f198"}.flaticon-laptop:before{content:"\f199"}.flaticon-arrow:before{content:"\f19a"}.flaticon-mortarboard:before{content:"\f19b"}.flaticon-avatar-1:before{content:"\f19c"}.flaticon-chat-2:before{content:"\f19d"}.flaticon-question:before{content:"\f19e"}.flaticon-test:before{content:"\f19f"}.flaticon-doctor:before{content:"\f1a0"}.flaticon-support-5:before{content:"\f1a1"}.flaticon-map-1:before{content:"\f1a2"}.flaticon-eye:before{content:"\f1a3"}.flaticon-money-4:before{content:"\f1a4"}.flaticon-world:before{content:"\f1a5"}.flaticon-school-1:before{content:"\f1a6"}.flaticon-chat-3:before{content:"\f1a7"}.flaticon-idea-1:before{content:"\f1a8"}.flaticon-support-6:before{content:"\f1a9"}.flaticon-diamond:before{content:"\f1aa"}.flaticon-time-2:before{content:"\f1ab"}.flaticon-bag:before{content:"\f1ac"}.flaticon-contract:before{content:"\f1ad"}.flaticon-report:before{content:"\f1ae"}.flaticon-folder:before{content:"\f1af"}.flaticon-truck:before{content:"\f1b0"}.flaticon-document:before{content:"\f1b1"}.flaticon-plane:before{content:"\f1b2"}.flaticon-time-3:before{content:"\f1b3"}.flaticon-trash:before{content:"\f1b4"}.flaticon-pin-2:before{content:"\f1b5"}.flaticon-think:before{content:"\f1b6"}.flaticon-idea-2:before{content:"\f1b7"}.flaticon-download-1:before{content:"\f1b8"}.flaticon-bell:before{content:"\f1b9"}.flaticon-lock:before{content:"\f1ba"}.flaticon-upload-1:before{content:"\f1bb"}.flaticon-cinema:before{content:"\f1bc"}.flaticon-goal:before{content:"\f1bd"}.flaticon-work:before{content:"\f1be"}.flaticon-design:before{content:"\f1bf"}.flaticon-search-1:before{content:"\f1c0"}.flaticon-food:before{content:"\f1c1"}.flaticon-alert:before{content:"\f1c2"}.flaticon-brain-1:before{content:"\f1c3"}.flaticon-book:before{content:"\f1c4"}.flaticon-time-4:before{content:"\f1c5"}.flaticon-shield-1:before{content:"\f1c6"}.flaticon-time-5:before{content:"\f1c7"}.flaticon-man-1:before{content:"\f1c8"}.flaticon-brain-2:before{content:"\f1c9"}.flaticon-water:before{content:"\f1ca"}.flaticon-content:before{content:"\f1cb"}.flaticon-data-1:before{content:"\f1cc"}.flaticon-like-1:before{content:"\f1cd"}.flaticon-time-6:before{content:"\f1ce"}.flaticon-sign:before{content:"\f1cf"}.flaticon-book-1:before{content:"\f1d0"}.flaticon-adjust:before{content:"\f1d1"}.flaticon-menu:before{content:"\f1d2"}.flaticon-calendar:before{content:"\f1d3"}.flaticon-eye-1:before{content:"\f1d4"}.flaticon-clock-2:before{content:"\f1d5"}.flaticon-share-2:before{content:"\f1d6"}.flaticon-fingerprint:before{content:"\f1d7"}.flaticon-signal:before{content:"\f1d8"}.flaticon-lock-1:before{content:"\f1d9"}.flaticon-water-1:before{content:"\f1da"}.flaticon-code:before{content:"\f1db"}.flaticon-repeat:before{content:"\f1dc"}.flaticon-map-2:before{content:"\f1dd"}.flaticon-message:before{content:"\f1de"}.flaticon-network-3:before{content:"\f1df"}.flaticon-more:before{content:"\f1e0"}.flaticon-random:before{content:"\f1e1"}.flaticon-sign-1:before{content:"\f1e2"}.flaticon-mail-1:before{content:"\f1e3"}.flaticon-adjust-1:before{content:"\f1e4"}
+
+
+
+
+/**
+ * Swiper 6.4.11
+ * Most modern mobile touch slider and framework with hardware accelerated transitions
+ * https://swiperjs.com
+ *
+ * Copyright 2014-2021 Vladimir Kharlampidi
+ *
+ * Released under the MIT License
+ *
+ * Released on: February 6, 2021
+ */
+
+@font-face{font-family:swiper-icons;src:url('data:application/font-woff;charset=utf-8;base64, d09GRgABAAAAAAZgABAAAAAADAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABGRlRNAAAGRAAAABoAAAAci6qHkUdERUYAAAWgAAAAIwAAACQAYABXR1BPUwAABhQAAAAuAAAANuAY7+xHU1VCAAAFxAAAAFAAAABm2fPczU9TLzIAAAHcAAAASgAAAGBP9V5RY21hcAAAAkQAAACIAAABYt6F0cBjdnQgAAACzAAAAAQAAAAEABEBRGdhc3AAAAWYAAAACAAAAAj//wADZ2x5ZgAAAywAAADMAAAD2MHtryVoZWFkAAABbAAAADAAAAA2E2+eoWhoZWEAAAGcAAAAHwAAACQC9gDzaG10eAAAAigAAAAZAAAArgJkABFsb2NhAAAC0AAAAFoAAABaFQAUGG1heHAAAAG8AAAAHwAAACAAcABAbmFtZQAAA/gAAAE5AAACXvFdBwlwb3N0AAAFNAAAAGIAAACE5s74hXjaY2BkYGAAYpf5Hu/j+W2+MnAzMYDAzaX6QjD6/4//Bxj5GA8AuRwMYGkAPywL13jaY2BkYGA88P8Agx4j+/8fQDYfA1AEBWgDAIB2BOoAeNpjYGRgYNBh4GdgYgABEMnIABJzYNADCQAACWgAsQB42mNgYfzCOIGBlYGB0YcxjYGBwR1Kf2WQZGhhYGBiYGVmgAFGBiQQkOaawtDAoMBQxXjg/wEGPcYDDA4wNUA2CCgwsAAAO4EL6gAAeNpj2M0gyAACqxgGNWBkZ2D4/wMA+xkDdgAAAHjaY2BgYGaAYBkGRgYQiAHyGMF8FgYHIM3DwMHABGQrMOgyWDLEM1T9/w8UBfEMgLzE////P/5//f/V/xv+r4eaAAeMbAxwIUYmIMHEgKYAYjUcsDAwsLKxc3BycfPw8jEQA/gZBASFhEVExcQlJKWkZWTl5BUUlZRVVNXUNTQZBgMAAMR+E+gAEQFEAAAAKgAqACoANAA+AEgAUgBcAGYAcAB6AIQAjgCYAKIArAC2AMAAygDUAN4A6ADyAPwBBgEQARoBJAEuATgBQgFMAVYBYAFqAXQBfgGIAZIBnAGmAbIBzgHsAAB42u2NMQ6CUAyGW568x9AneYYgm4MJbhKFaExIOAVX8ApewSt4Bic4AfeAid3VOBixDxfPYEza5O+Xfi04YADggiUIULCuEJK8VhO4bSvpdnktHI5QCYtdi2sl8ZnXaHlqUrNKzdKcT8cjlq+rwZSvIVczNiezsfnP/uznmfPFBNODM2K7MTQ45YEAZqGP81AmGGcF3iPqOop0r1SPTaTbVkfUe4HXj97wYE+yNwWYxwWu4v1ugWHgo3S1XdZEVqWM7ET0cfnLGxWfkgR42o2PvWrDMBSFj/IHLaF0zKjRgdiVMwScNRAoWUoH78Y2icB/yIY09An6AH2Bdu/UB+yxopYshQiEvnvu0dURgDt8QeC8PDw7Fpji3fEA4z/PEJ6YOB5hKh4dj3EvXhxPqH/SKUY3rJ7srZ4FZnh1PMAtPhwP6fl2PMJMPDgeQ4rY8YT6Gzao0eAEA409DuggmTnFnOcSCiEiLMgxCiTI6Cq5DZUd3Qmp10vO0LaLTd2cjN4fOumlc7lUYbSQcZFkutRG7g6JKZKy0RmdLY680CDnEJ+UMkpFFe1RN7nxdVpXrC4aTtnaurOnYercZg2YVmLN/d/gczfEimrE/fs/bOuq29Zmn8tloORaXgZgGa78yO9/cnXm2BpaGvq25Dv9S4E9+5SIc9PqupJKhYFSSl47+Qcr1mYNAAAAeNptw0cKwkAAAMDZJA8Q7OUJvkLsPfZ6zFVERPy8qHh2YER+3i/BP83vIBLLySsoKimrqKqpa2hp6+jq6RsYGhmbmJqZSy0sraxtbO3sHRydnEMU4uR6yx7JJXveP7WrDycAAAAAAAH//wACeNpjYGRgYOABYhkgZgJCZgZNBkYGLQZtIJsFLMYAAAw3ALgAeNolizEKgDAQBCchRbC2sFER0YD6qVQiBCv/H9ezGI6Z5XBAw8CBK/m5iQQVauVbXLnOrMZv2oLdKFa8Pjuru2hJzGabmOSLzNMzvutpB3N42mNgZGBg4GKQYzBhYMxJLMlj4GBgAYow/P/PAJJhLM6sSoWKfWCAAwDAjgbRAAB42mNgYGBkAIIbCZo5IPrmUn0hGA0AO8EFTQAA') format('woff');font-weight:400;font-style:normal}:root{--swiper-theme-color:#007aff}.swiper-container{margin-left:auto;margin-right:auto;position:relative;overflow:hidden;list-style:none;padding:0;z-index:1}.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-multirow-column>.swiper-wrapper{flex-wrap:wrap;flex-direction:column}.swiper-container-free-mode>.swiper-wrapper{transition-timing-function:ease-out;margin:0 auto}.swiper-container-pointer-events{touch-action:pan-y}.swiper-container-pointer-events.swiper-container-vertical{touch-action:pan-x}.swiper-slide{flex-shrink:0;width:100%;height:100%;position:relative;transition-property:transform}.swiper-slide-invisible-blank{visibility:hidden}.swiper-container-autoheight,.swiper-container-autoheight .swiper-slide{height:auto}.swiper-container-autoheight .swiper-wrapper{align-items:flex-start;transition-property:transform,height}.swiper-container-3d{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{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:linear-gradient(to left,rgba(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,.5),rgba(0,0,0,0))}.swiper-container-3d .swiper-slide-shadow-top{background-image:linear-gradient(to top,rgba(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,.5),rgba(0,0,0,0))}.swiper-container-css-mode>.swiper-wrapper{overflow:auto;scrollbar-width:none;-ms-overflow-style:none}.swiper-container-css-mode>.swiper-wrapper::-webkit-scrollbar{display:none}.swiper-container-css-mode>.swiper-wrapper>.swiper-slide{scroll-snap-align:start start}.swiper-container-horizontal.swiper-container-css-mode>.swiper-wrapper{scroll-snap-type:x mandatory}.swiper-container-vertical.swiper-container-css-mode>.swiper-wrapper{scroll-snap-type:y mandatory}:root{--swiper-navigation-size:44px}.swiper-button-next,.swiper-button-prev{position:absolute;top:50%;width:calc(var(--swiper-navigation-size)/ 44 * 27);height:var(--swiper-navigation-size);margin-top:calc(-1 * var(--swiper-navigation-size)/ 2);z-index:10;cursor:pointer;display:flex;align-items:center;justify-content:center;color:var(--swiper-navigation-color,var(--swiper-theme-color))}.swiper-button-next.swiper-button-disabled,.swiper-button-prev.swiper-button-disabled{opacity:.35;cursor:auto;pointer-events:none}.swiper-button-next:after,.swiper-button-prev:after{font-family:swiper-icons;font-size:var(--swiper-navigation-size);text-transform:none!important;letter-spacing:0;text-transform:none;font-variant:initial;line-height:1}.swiper-button-prev,.swiper-container-rtl .swiper-button-next{left:10px;right:auto}.swiper-button-prev:after,.swiper-container-rtl .swiper-button-next:after{content:'prev'}.swiper-button-next,.swiper-container-rtl .swiper-button-prev{right:10px;left:auto}.swiper-button-next:after,.swiper-container-rtl .swiper-button-prev:after{content:'next'}.swiper-button-next.swiper-button-white,.swiper-button-prev.swiper-button-white{--swiper-navigation-color:#ffffff}.swiper-button-next.swiper-button-black,.swiper-button-prev.swiper-button-black{--swiper-navigation-color:#000000}.swiper-button-lock{display:none}.swiper-pagination{position:absolute;text-align:center;transition:.3s opacity;transform:translate3d(0,0,0);z-index:10}.swiper-pagination.swiper-pagination-hidden{opacity:0}.swiper-container-horizontal>.swiper-pagination-bullets,.swiper-pagination-custom,.swiper-pagination-fraction{bottom:10px;left:0;width:100%}.swiper-pagination-bullets-dynamic{overflow:hidden;font-size:0}.swiper-pagination-bullets-dynamic .swiper-pagination-bullet{transform:scale(.33);position:relative}.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active{transform:scale(1)}.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-main{transform:scale(1)}.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-prev{transform:scale(.66)}.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-prev-prev{transform:scale(.33)}.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-next{transform:scale(.66)}.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-next-next{transform:scale(.33)}.swiper-pagination-bullet{width:8px;height:8px;display:inline-block;border-radius:50%;background:#000;opacity:.2}button.swiper-pagination-bullet{border:none;margin:0;padding:0;box-shadow:none;-webkit-appearance:none;-moz-appearance:none;appearance:none}.swiper-pagination-clickable .swiper-pagination-bullet{cursor:pointer}.swiper-pagination-bullet-active{opacity:1;background:var(--swiper-pagination-color,var(--swiper-theme-color))}.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:6px 0;display:block}.swiper-container-vertical>.swiper-pagination-bullets.swiper-pagination-bullets-dynamic{top:50%;transform:translateY(-50%);width:8px}.swiper-container-vertical>.swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet{display:inline-block;transition:.2s transform,.2s top}.swiper-container-horizontal>.swiper-pagination-bullets .swiper-pagination-bullet{margin:0 4px}.swiper-container-horizontal>.swiper-pagination-bullets.swiper-pagination-bullets-dynamic{left:50%;transform:translateX(-50%);white-space:nowrap}.swiper-container-horizontal>.swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet{transition:.2s transform,.2s left}.swiper-container-horizontal.swiper-container-rtl>.swiper-pagination-bullets-dynamic .swiper-pagination-bullet{transition:.2s transform,.2s right}.swiper-pagination-progressbar{background:rgba(0,0,0,.25);position:absolute}.swiper-pagination-progressbar .swiper-pagination-progressbar-fill{background:var(--swiper-pagination-color,var(--swiper-theme-color));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,.swiper-container-vertical>.swiper-pagination-progressbar.swiper-pagination-progressbar-opposite{width:100%;height:4px;left:0;top:0}.swiper-container-horizontal>.swiper-pagination-progressbar.swiper-pagination-progressbar-opposite,.swiper-container-vertical>.swiper-pagination-progressbar{width:4px;height:100%;left:0;top:0}.swiper-pagination-white{--swiper-pagination-color:#ffffff}.swiper-pagination-black{--swiper-pagination-color:#000000}.swiper-pagination-lock{display:none}.swiper-scrollbar{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);border-radius:10px;left:0;top:0}.swiper-scrollbar-cursor-drag{cursor:move}.swiper-scrollbar-lock{display:none}.swiper-zoom-container{width:100%;height:100%;display:flex;justify-content: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%;object-fit:contain}.swiper-slide-zoomed{cursor:move}.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 infinite linear;box-sizing:border-box;border:4px solid var(--swiper-preloader-color,var(--swiper-theme-color));border-radius:50%;border-top-color:transparent}.swiper-lazy-preloader-white{--swiper-preloader-color:#fff}.swiper-lazy-preloader-black{--swiper-preloader-color:#000}@keyframes swiper-preloader-spin{100%{transform:rotate(360deg)}}.swiper-container .swiper-notification{position:absolute;left:0;top:0;pointer-events:none;opacity:0;z-index:-1000}.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,.swiper-container-fade .swiper-slide-active .swiper-slide-active{pointer-events:auto}.swiper-container-cube{overflow:visible}.swiper-container-cube .swiper-slide{pointer-events:none;-webkit-backface-visibility:hidden;backface-visibility:hidden;z-index:1;visibility:hidden;transform-origin:0 0;width:100%;height:100%}.swiper-container-cube .swiper-slide .swiper-slide{pointer-events:none}.swiper-container-cube.swiper-container-rtl .swiper-slide{transform-origin:100% 0}.swiper-container-cube .swiper-slide-active,.swiper-container-cube .swiper-slide-active .swiper-slide-active{pointer-events:auto}.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-slide-shadow-bottom,.swiper-container-cube .swiper-slide-shadow-left,.swiper-container-cube .swiper-slide-shadow-right,.swiper-container-cube .swiper-slide-shadow-top{z-index:0;-webkit-backface-visibility:hidden;backface-visibility:hidden}.swiper-container-cube .swiper-cube-shadow{position:absolute;left:0;bottom:0px;width:100%;height:100%;opacity:.6;z-index:0}.swiper-container-cube .swiper-cube-shadow:before{content:'';background:#000;position:absolute;left:0;top:0;bottom:0;right:0;-webkit-filter:blur(50px);filter:blur(50px)}.swiper-container-flip{overflow:visible}.swiper-container-flip .swiper-slide{pointer-events:none;-webkit-backface-visibility:hidden;backface-visibility:hidden;z-index:1}.swiper-container-flip .swiper-slide .swiper-slide{pointer-events:none}.swiper-container-flip .swiper-slide-active,.swiper-container-flip .swiper-slide-active .swiper-slide-active{pointer-events:auto}.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}
+
+
+
+/*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */html{line-height:1.15;-webkit-text-size-adjust:100%}body{margin:0}main{display:block}hr{box-sizing:content-box;height:0;overflow:visible}pre{font-family:monospace,monospace;font-size:1em}a{background-color:transparent}abbr[title]{border-bottom:none;text-decoration:underline;text-decoration:underline dotted}b,strong{font-weight:bolder}code,kbd,samp{font-family:monospace,monospace;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}img{border-style:none}button,input,optgroup,select,textarea{font-family:inherit;font-size:100%;line-height:1.15;margin:0}button,input{overflow:visible}button,select{text-transform:none}[type=button],[type=reset],[type=submit],button{-webkit-appearance:button}[type=button]::-moz-focus-inner,[type=reset]::-moz-focus-inner,[type=submit]::-moz-focus-inner,button::-moz-focus-inner{border-style:none;padding:0}[type=button]:-moz-focusring,[type=reset]:-moz-focusring,[type=submit]:-moz-focusring,button:-moz-focusring{outline:1px dotted ButtonText}fieldset{padding:.35em .75em .625em}legend{box-sizing:border-box;color:inherit;display:table;max-width:100%;padding:0;white-space:normal}progress{vertical-align:baseline}textarea{overflow:auto}[type=checkbox],[type=radio]{box-sizing:border-box;padding:0}[type=number]::-webkit-inner-spin-button,[type=number]::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}[type=search]::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}body,html{overflow-x:hidden}img{max-width:100%;height:auto}.box.wrapper{max-width:1200px;margin:auto;background:#fff;box-shadow:0 0 5px #ddd}.fix{overflow:hidden}.clear_both{clear:both}details{display:block}summary{display:list-item}template{display:none}[hidden]{display:none}.btn-primary:focus,input:focus,select:focus,textarea:focus{box-shadow:none!important}input,textarea{outline:0}.btn:focus,a:focus{text-decoration:none;outline:0}.uppercase{text-transform:uppercase}.capitalize{text-transform:capitalize}ul{margin:0;padding:0}li{list-style:none}button:focus,input:focus{border-color:transparent;outline-color:transparent}textarea:focus{border-color:transparent;outline-color:transparent}hr{margin:60px 0;padding:0;border-bottom:1px solid #eceff8;border-top:0}label{cursor:pointer;font-size:14px;font-weight:400}a,address,cite,dfn,em,i,li,ol,ul,var{font-style:normal;font-weight:400}
+
diff --git a/public/static/home/assets/css/responsive.css b/public/static/home/assets/css/responsive.css
new file mode 100644
index 0000000..f726fa5
--- /dev/null
+++ b/public/static/home/assets/css/responsive.css
@@ -0,0 +1,2269 @@
+/* ------------------------------------------------- Large Screen. 1200 ---------------------------------------------------*/
+ @media (min-width: 1440px) and (max-width: 1600px) {
+ .em_sc_100 {
+ margin-top: 15px;
+ }
+ .em_slider_s2_image_inner img{
+ width:100%;
+ }
+}
+/* ------------------------------------------------- Large Screen. 1200 ---------------------------------------------------*/
+ @media (min-width: 1200px) and (max-width: 1439px) {
+ .text-left .em_slider_s2_content {
+ margin-right: 10%;
+ }
+ .text-right .em_slider_s2_content {
+ margin-left: 10%;
+ }
+ .em-slider-sub-title {
+ line-height: 64px;
+ }
+ .em_sc_100 {
+ margin-top: 15px;
+ }
+ .em_slider_s2_image_inner img{
+ width:100%;
+ }
+ .text-right .witr_slider_thumb {
+ left: 0px;
+ }
+ .text-left .witr_slider_thumb {
+ right: -150px;
+ }
+ .em_slider_s2_image img {
+ width: 70%;
+ }
+ .itpart_menu > ul > li > a {
+ margin: 38px 9px 38px;
+ font-size: 19px;
+ }
+ .text-left .witrscontainer h1, .text-left .witrscontainer h2, .text-left .witrscontainer h3, .text-left .witr_slicks_title h4, .text-left .witrscontainer p {
+ width: 51%;
+ }
+ .text-right .witrscontainer h1, .text-right .witrscontainer h2, .text-right .witrscontainer h3, .text-right .witr_slicks_title h4, .text-right .witrscontainer p {
+ width: 51%;
+ }
+}
+/* ------------------------------------------------- Old Desktop :1365-1660 ---------------------------------------------------*/
+ @media (min-width: 1365px) and (max-width: 1660px) {
+ .itpart_nav_area, .itpart-header-top {
+ padding-right: 50px !important;
+ padding-left: 50px !important;
+ }
+ .witr_ds_content_inner {
+ width: 88%;
+ }
+ #scrollUp {
+ right: 90px;
+ bottom: 77px;
+ }
+ .footer-bottom:before {
+ width: 86%;
+ }
+ /* swiper slider */
+ .witr_swiper_area .text-right .witr_slider_thumb {
+ left: -95px !important;
+ }
+ .witr_swiper_area .text-left .witr_slider_thumb {
+ right: -95px !important;
+ }
+ .witr_swiper_height {
+ width: 100% !important;
+ }
+ .w_slider_3 .witr_swiper_height {
+ width: 100% !important;
+ transform: translateX(-50%) !important;
+ left: 15%;
+ }
+
+ .witr_sw_text_area {
+ width: 87%;
+ }
+
+
+
+
+
+}
+/* ------------------------------------------------- Large Screen. 1024 ---------------------------------------------------*/
+ @media (min-width: 1024px) and (max-width: 1600px) {
+ .em-nivo-slider-wrapper:hover .nivo-directionNav a {
+ left: 5px;
+ }
+ .em-nivo-slider-wrapper:hover .nivo-directionNav .nivo-nextNav {
+ right: 5px;
+ }
+ /* banner area css */
+ .witr_banner_content.text-right {
+ margin-right: 20px;
+ }
+ .witr_banner_content p {
+ width: 60%;
+ }
+ .em_slider_social {
+ top: 45%;
+ }
+}
+/* ------------------------------------------------- Laptop Screen 1366 ---------------------------------------------------*/
+ @media (min-width: 1170px) and (max-width: 1366px) {
+ .em_creative_header:after {
+ -webkit-transform: rotate(-114deg);
+ transform: rotate(-114deg);
+ }
+ .creative_header_address {
+ padding-left: 0;
+ }
+ /* banner area css */
+ .witr_banner_content p {
+ width: 70%;
+ }
+}
+
+/* ------------------------------------------------- Old Desktop :992 ---------------------------------------------------*/
+ @media (min-width: 992px) and (max-width: 1364px) {
+ .witr_b9{
+ margin-top: 100px;
+ }
+}
+/* ------------------------------------------------- Old Desktop :992 ---------------------------------------------------*/
+ @media (min-width: 992px) and (max-width: 1199px) {
+ .itpart_nav_area, .itpart-header-top {
+ padding-right: 50px !important;
+ padding-left: 50px !important;
+ }
+ .em_creative_header::before {
+ width: 19%;
+ }
+ .em_creative_header::after {
+ display: none;
+ }
+ /* swiper slider */
+
+ .witr_sw_text_area {
+ width: 88%;
+ }
+ .about_page_area_about .all_color_service {
+ padding: 23px 13px 40px;
+ margin: 15px 6px 10px;
+ }
+ .home2_swiper_area .witr_swiper_height {
+ background-position: center left;
+ background-size: cover;
+ }
+ .witr_swiper_height {
+ width: 100% !important;
+ }
+ .witr_swiper_content h2, .witr_swiper_content h3 {
+ font-size: 55px;
+ }
+ .w_slider_4 .witr_swiper_height {
+ margin-left:0px !important;
+ }
+ .d1.witr_swiper_height {
+ width: 100% !important;
+ }
+ .w_slider_3 .d1.witr_swiper_height {
+ width: 100% !important;
+ transform: translateX(0) !important;
+ }
+ .d2.witr_swiper_height {
+ width: 50% !important;
+ }
+ .witr_swiper_area .text-right .witr_slider_thumb {
+ left: -230px !important;
+ }
+ .witr_swiper_area .text-left .witr_slider_thumb {
+ right: -150px !important;
+ }
+ /* nivo slider */
+ .em-slider-title {
+ font-size: 26px;
+ margin-bottom: 10px;
+ }
+ .em-slider-sub-title {
+ font-size: 42px;
+ margin-bottom: 2px;
+ }
+ .em-slider-descript {
+ margin-bottom: 20px;
+ width: 66%;
+ }
+ .text-left .em_slider_s2_content {
+ margin-right: 10%;
+ }
+ .text-right .em_slider_s2_content {
+ margin-left: 10%;
+ }
+ .em-slider-sub-title {
+ line-height: 49px;
+ }
+ .em_sc_100 {
+ margin-top: 15px;
+ }
+ .em_slider_s2_image_inner img{
+ width:100%;
+ }
+ .recent-post-text h4 a {
+ font-size: 17px;
+ }
+ /*========= banner area css ========*/
+ .witr_banner_content h2 {
+ font-size: 50px;
+ }
+ .witr_banner_content p {
+ width: 85%;
+ }
+ .witr_banner_content.text-right {
+ margin-right: 20px;
+ }
+ /*======== banner_area 2 ==========*/
+ .banner_area {
+ position: relative;
+ height: 600px;
+ }
+ /*======== Slick ==========*/
+ .witr_ds_content_inner {
+ width: 87%;
+ }
+ .witr_ds_content_inner h2 {
+ font-size: 65px;
+ }
+ /*========== height css ===========*/
+ .menu-height-space {
+ height: 0;
+ }
+ .em_creative_header:after {
+ -webkit-transform: rotate(-100deg);
+ transform: rotate(-100deg);
+ }
+ .itpart_menu > ul > li > a {
+ margin: 38px 5px 38px;
+ font-size: 13px;
+ }
+ .itpart_menu > ul > li > a {
+ margin: 38px 15px 38px;
+ font-size: 13px;
+ }
+ .witr_h_h8 .itpart_menu > ul > li > a, .witr_h_h15 .itpart_menu > ul > li > a, .witr_h_h16 .itpart_menu > ul > li > a {
+ margin: 38px 11px 38px;
+ }
+ a.dtbtn {
+ font-size: 14px;
+ margin-left: 10px;
+ padding: 10px 20px;
+ }
+ .witr_h_h10 .itpart_menu > ul > li > a, .witr_h_h11 .itpart_menu > ul > li > a, .witr_h_h9 .itpart_menu > ul > li > a, .witr_h_h17 .itpart_menu > ul > li > a{
+ margin: 38px 6px 38px;
+ font-size: 17px;
+ }
+ /* new css */
+ .sub-item p {
+ padding: 0 6px;
+ }
+ .witr_section_title_inner.text-center p, .witr_section_title_inner.text-left p, .witr_section_title_inner.text-right p {
+ width: 67%;
+ }
+ .title_in_area{
+ width: 100%;
+ }
+ /* text_widget css */
+ .witr_text_widget_inner h1, .witr_text_widget_inner h2{
+ font-size: 30px !important;
+ }
+ /* Screenshots css */
+ .dnSlide-main.done {
+ margin-left: 61px;
+ }
+ .Screenshots-fearm img {
+ width: 190% !important;
+ left: -96px;
+ top: -28px;
+ max-width: 190% !important;
+ }
+ .Screenshots .dnSlide-main .dnSlide-right-btn {
+ right: -83px;
+ }
+ .Screenshots .dnSlide-main .dnSlide-left-btn {
+ left: -43px;
+ }
+ .accordion-content {
+ padding: 23px 25px;
+ }
+ /* images_area */
+ .images_area.wittr_car_top_left .slick-dots {
+ left: 30px;
+ }
+ .singleSS {
+ padding: 61px 24px 60px;
+ }
+ .witr_nth_child:nth-child(2n) {
+ margin-top: 0;
+ margin-bottom: 30px;
+ }
+ /* blog css */
+ .wblog-content h5 > a {
+ font-size: 19px;
+ }
+ .blog-content span {
+ font-size: 13px;
+ }
+ .blog-content > a {
+ line-height: 40px;
+ padding: 0 20px;
+ }
+ .widget .widget_media_image img{
+ width:100%;
+ }
+ .blog-left-side .blog-title > ul > li > a {
+ margin-right: 8px;
+ }
+ .recent-post-text > h4 {
+ margin-top: 15px;
+ line-height: 1;
+ }
+ .footer-middle .recent-post-text > h4 {
+ margin-top: -7px;
+ line-height: 1;
+ }
+ .em-blog-content-area {
+ padding: 22px 15px 7px;
+ }
+ .witr_titles h3 {
+ font-size: 20px;
+ }
+ .witr_blog_con6 h2 {
+ font-size: 17px;
+ }
+ .witr_blog_con6 h5 a {
+ font-size: 17px;
+ }
+ /* team css */
+ .team-style-2 .em-content-title h2 {
+ font-size: 17px;
+ margin-top: -1px;
+ }
+ .team-style-2 .em-content-socials a {
+ font-size: 14px;
+ }
+ /* feature css */
+ .witr_feature2 h3 {
+ font-size: 20px;
+ }
+ /* service css */
+ .witr_content_service h3 {
+ color: #fff;
+ font-size: 20px;
+ }
+ .witr_service3_box {
+ text-align: center;
+ }
+ .witr_service3_icon {
+ float: none;
+ margin-right: 0;
+ margin-bottom: 15px;
+ }
+ /* testomonial style 8 css */
+ .witr_testomonial_area {
+ width: 85%;
+ }
+ .witr_testi_main {
+ width: 75%;
+ }
+ /* curosel-style css */
+ .curosel-style .owl-nav div {
+ left: -15px;
+ }
+ .curosel-style .owl-nav .owl-next{
+ right: -15px;
+ }
+ /* countdown css */
+ span.cdowns {
+ margin: 0 28px;
+ }
+ /* timeline css */
+ .mrr90 {
+ margin-right: 54px;
+ }
+ .mrl110 {
+ margin-left: 50px;
+ }
+ /* static tab css*/
+ .event_pcontent p, .itpart_event_icon span {
+ font-size: 13px;
+ }
+ .footer-middle .mc4wp-form-fields button {
+ width: 39px;
+ }
+ .footer-bottom::before {
+ width: 94%;
+ }
+ .text-right .witr_slider_thumb {
+ left: 0px;
+ }
+ .text-left .witr_slider_thumb {
+ right: -150px;
+ }
+ .em_slider_s2_image img {
+ width: 70%;
+ }
+ .witr_back_process,.witr_process_box {
+ display: none;
+ }
+ /* add new css*/
+ /* causes */
+ .witr_couses_btnb a {
+ padding: 13px 18px;
+ font-size: 15px;
+ }
+ .witr_circal_r {
+ margin-left: 18px;
+ }
+ .witr_circal_r h6 {
+ font-size: 15px;
+ }
+ /* event */
+ .witr_event_btn a {
+ font-size: 16px;
+ }
+ #scrollUp {
+ bottom: 77px;
+ right: 30px;
+ }
+.itpart_advantages_area .all_color_service {
+ padding: 30px 20px 16px 0px;
+}
+.contact2 .apartment_area {
+ padding: 35px 20px 0px;
+ margin: 0px 0px 0px 0px;
+}
+.witr_lf_area {
+ margin-top: 0px;
+}
+.itpart_skill_area .witr_section_title_inner h3 {
+ font-size: 32px;
+}
+.recent-portfolio {
+ width: 28.33%;
+}
+
+.about_area .service-item h3 {
+ font-size: 17px;
+}
+.post_team_idteam .slick-prev {
+ left:800px;
+}
+.witr_service2_style4 {
+ padding: 40px 14px 40px;
+}
+.banner-content h2, .banner-content h3 {
+ font-size: 58px;
+}
+.home5 .witr_section_right {
+ padding: 0px 8px 0px 0px;
+}
+.list_item2 {
+ margin-left:0;
+}
+
+.list_item ul li {
+ font-size: 12px;
+ margin-bottom: 10px;
+}
+.list_item3 {
+ margin-left: -16px;
+}
+
+.home5 .witr_button_area {
+ margin-top: 40px;
+}
+
+
+
+
+
+
+
+
+
+}
+
+
+/* ------------------------------------------------- Tablet Screen : 768 ---------------------------------------------------*/
+ @media (min-width: 768px) and (max-width: 991px) {
+
+ .witr_swiper_height {
+ height: 600px;
+ }
+ .home2_swiper_area .witr_swiper_height {
+ background-position: center left;
+ background-size: cover;
+ }
+ .witr_swiper_height {
+ width: 100% !important;
+ }
+ .w_slider_4 .witr_swiper_height {
+ margin-left:0px !important;
+ }
+ .t1.witr_swiper_height {
+ width: 100% !important;
+ }
+ .w_slider_3 .t1.witr_swiper_height {
+ transform: translateX(0) !important;
+ }
+ .t2.witr_swiper_height {
+ width: 50% !important;
+ left: -20px;
+ }
+.witr_section_title_inner h1, .witr_section_title_inner h2, .witr_section_title_inner h3 {
+ font-size: 30px;
+}
+.itpart_service_area .em-service-title h3 {
+ font-size: 20px;
+}
+.em_service_content {
+ margin-bottom: 25px;
+}
+ .accordion_area.accordion_area_02 {
+ padding-top: 30px;
+ }
+.about_page_area_about .all_color_service {
+ margin: 2px 4px 10px;
+}
+.slide_items {
+ text-align: center;
+}
+ .itpart_service_area {
+ margin-top: 100px;
+ }
+ .why_choose_area .witr_s_flex {
+ display: inherit;
+ }
+ .em-service2 .em-service-inner {
+ padding-right: 15px;
+ }
+ .counter_up_area.home2_counter {
+ margin-top: 100px;
+ margin-bottom: 0px;
+ }
+ .itpart_team_area.home2_team {
+ padding: 130px 0px 130px;
+ }
+ .home2_togole_area .itpart_content h2, .home2_togole_area .itpart_content h3 {
+ font-size: 17px;
+ }
+ .witr_feature_13 .sub-item::after, .witr_feature_13 .sub-item:before {
+ top: 54%;
+ }
+ .witr_ac_style, .witr_ac_style::before {
+ font-size: 17px;
+ }
+ .w_slider_3 .t2.witr_swiper_height {
+ transform: translateX(-50%) !important;
+ left: 91%;
+ }
+ .witr_swiper_area .text-left .slider_vd_icon {
+ right: 48% !important;
+ top: 17% !important;
+ }
+ .witr_swiper_area .text-right .slider_vd_icon {
+ left: 48% !important;
+ top: 17% !important;
+ }
+ .witr_swiper_area .text-center .slider_vd_icon {
+ top: 17%;
+ }
+ .witr_sw_text_area.text-right, .witr_sw_text_area.text-left {
+ text-align: center !important;
+ }
+ .text-right .witr_swiper_content h1, .text-right .witr_swiper_content h2, .text-right .witr_swiper_content h3, .text-right .witr_swiper_content p, .text-left .witr_swiper_content h1, .text-left .witr_swiper_content h2, .text-left .witr_swiper_content h3, .text-left .witr_swiper_content p, .text-center .witr_swiper_content h1, .text-center .witr_swiper_content h2, .text-center .witr_swiper_content h3, .text-center .witr_swiper_content p {
+ width: 100% !important;
+ margin-left: auto;
+ margin-right: auto;
+ text-align:center !important;
+ }
+ .witr_swiper_content h2, .witr_swiper_content h3 {
+ font-size: 40px;
+ }
+ .text-right .witr_btn_sinner, .text-left .witr_btn_sinner {
+ text-align: center !important;
+ }
+ /* slick slider */
+ .em-slider-title {
+ font-size: 16px;
+ margin-bottom: 10px;
+ }
+ .em-slider-sub-title {
+ font-size: 30px;
+ margin-bottom: 0;
+ }
+ .em-slider-descript {
+ display: none;
+ }
+ .em-button-button-area a {
+ margin-top: 20px;
+ }
+ .em-slider-sub-title {
+ line-height: 46px;
+ }
+ /* banner area css */
+ .witr_banner_area {
+ height: 700px;
+ }
+ .witr_banner_content h1 {
+ font-size: 58px;
+ }
+ .witr_banner_content h2 {
+ font-size: 42px;
+ }
+ .witr_banner_content p {
+ font-size: 16px;
+ width: 77%;
+ }
+ .witr_butn {
+ line-height: 49px;
+ }
+ .witr_banner_content.text-right {
+ margin-right: 20px;
+ }
+ /*=========== banner area 2 css ===============*/
+ .banner_area {
+ height: 880px;
+ }
+ .banner-content h1, .banner-content h2, .banner-content h3 {
+ font-size: 45px;
+ }
+ .witr_deshboard {
+ margin-top: 30px;
+ }
+ /*=========== Slick area css ===============*/
+ .witr_ds_content {
+ height: 670px;
+ }
+ .witr_ds_content_inner {
+ width: 100%;
+ }
+ .witr_ds_content_inner h2 {
+ font-size: 70px;
+ }
+ .text-right .witr_ds_content_inner h1, .text-right .witr_ds_content_inner h2, .text-right .witr_ds_content_inner h3, .text-right .witr_ds_content_inner p, .text-left .witr_ds_content_inner h1, .text-left .witr_ds_content_inner h2, .text-left .witr_ds_content_inner h3, .text-left .witr_ds_content_inner p, .text-center .witr_ds_content_inner h1, .text-center .witr_ds_content_inner h2, .text-center .witr_ds_content_inner h3, .text-center .witr_ds_content_inner p {
+ width: 100% !important;
+ margin-left: auto;
+ margin-right: auto;
+ text-align:center !important;
+ }
+ .text-right .witr_ds_content_inner h1, .text-right .witr_ds_content_inner h2, .text-right .witr_ds_content_inner h3, .text-left .witr_ds_content_inner h1, .text-left .witr_ds_content_inner h2, .text-left .witr_ds_content_inner h3, .text-center .witr_ds_content_inner h1, .text-center .witr_ds_content_inner h2, .text-center .witr_ds_content_inner h3{
+ }
+ .witr_btn {
+ }
+ .slider_btn {
+ text-align: center;
+ }
+ .witr_slider_thumb.em_slider_s2_image {
+ display: none;
+ }
+ /* Em-Creative Header */
+ .creative_header_curve {
+ display: none;
+ }
+ .creative_header_logo {
+ padding-right: 0;
+ text-align: center;
+ }
+ .em_creative_header {
+ background: transparent none repeat scroll 0 0;
+ z-index: 999;
+ }
+ .single_header_address {
+ padding: 27px 0 20px;
+ }
+ .creative_header_button {
+ background: #f9f9f9 none repeat scroll 0 0;
+ padding: 30px 0;
+ position: relative;
+ text-align: center;
+ }
+ .creative_header_button:before, .em_creative_header:before, .em_creative_header:after {
+ display: none;
+ }
+ .single_header_address.ctrp {
+ padding-bottom: 50px;
+ }
+ .em_creative_header {
+ padding-bottom: 0;
+ }
+ .em-nivo-slider-wrapper .nivo-directionNav {
+ display: none;
+ }
+ /* section_title */
+ /* .witr_section_title_inner h1, .witr_section_title_inner h2, .witr_section_title_inner h3 {
+ font-size: 32px;
+ }
+ */
+ .witr_section_title_inner.text-center p, .witr_section_title_inner.text-left p, .witr_section_title_inner.text-right p {
+ width: 83%;
+ }
+ .title_in_area{
+ width: 100%;
+ }
+ /* about css */
+ .witr_text_widget_inner h1, .witr_text_widget_inner h2 {
+ font-size: 23px;
+ }
+ .witr_about_content {
+ text-align: center;
+ }
+ .witr_about_image {
+ /* margin-bottom: 100px;
+ */
+ }
+ /* accourdion css */
+ .itpart-accourdion-title h2 i {
+ display: none;
+ }
+ .accordion-content {
+ padding: 23px 0px;
+ }
+ /* service css */
+ .witr_custom2_icon {
+ float: none;
+ margin-right: 0;
+ margin-bottom: 15px;
+ }
+ .witr_service3_box {
+ text-align: center;
+ }
+ .witr_service3_icon {
+ float: none;
+ margin-right: 0;
+ margin-bottom: 15px;
+ }
+ /* testomonial css */
+ .testomonial.testomonial-5 .test-part img.testimg {
+ top: 86%;
+ }
+ .witr_content_test7 {
+ padding: 0;
+ }
+ /* testomonial style 8 css */
+ .witr_testomonial_area {
+ width: 90%;
+ }
+ .witr_testi_main {
+ width: 90%;
+ }
+ /* blog css */
+ .blog-img img {
+ width: 100%;
+ }
+ .sub-border-2 .sub-item span {
+ top: 31px;
+ left: 75%;
+ }
+ .sub-item p {
+ padding: 0;
+ }
+ .digital-item ul li a {
+ padding: 7px 57px;
+ }
+ .mobil-item {
+ margin-top: 30px;
+ }
+ .download-demo {
+ text-align: center;
+ }
+ /* Screenshots css */
+ .dnSlide-main.done {
+ margin-left: -54px;
+ }
+ .Screenshots-fearm img {
+ width: 240% !important;
+ left: -149px;
+ top: -24px;
+ max-width: 240% !important;
+ }
+ .Screenshots .dnSlide-main .dnSlide-right-btn {
+ right: 0px;
+ }
+ .Screenshots .dnSlide-main .dnSlide-left-btn {
+ left: 47px;
+ }
+ .itpart-accourdion-title h2 {
+ padding-left: 20px;
+ }
+ .w_apps_button a {
+ padding: 3px 20px 11px 20px !important;
+ }
+ span.iitpart {
+ font-size: 20px;
+ margin-right: 10px;
+ }
+ span.spaninner {
+ font-size: 20px;
+ }
+ /* about css */
+ .digital-img img, .witr_app_area .digital-content h3 {
+ margin-top:0px !important;
+ }
+ /* counter css */
+ .witr_counter_single {
+ text-align: center;
+ }
+ .witr_counter_icon i {
+ margin-bottom: 15px;
+ margin-right: 0;
+ float: none;
+ }
+ .witr_custom_icon {
+ margin-bottom: 10px;
+ }
+ .witr_custom_icon i{
+ margin-right: 0;
+ float: none;
+ }
+ .footer-item form label {
+ margin-left: 30px;
+ }
+ .deshboard img {
+ width: 100%;
+ }
+ .video-part .video-overlay {
+ padding: 200px 0;
+ }
+ .video-item h3 {
+ font-size: 30px;
+ }
+ /* blog css */
+ .blog-content span {
+ font-size: 14px;
+ }
+ .blog-left-side .widget h2 {
+ font-size: 19px;
+ }
+ .blog-page-title h2 {
+ font-size: 18px;
+ }
+ .widget .widget_media_image img{
+ width:100%;
+ }
+ .blog-left-side .blog-title > ul > li > a {
+ height: 30px;
+ width: 30px;
+ line-height: 29px;
+ font-size: 15px;
+ margin-right: 2px;
+ }
+ .recent-post-text > h4 {
+ line-height: 23px;
+ }
+ .recent-post-text h4 a, .recent-post-text .rcomment {
+ font-size: 16px;
+ }
+.breadcumb-area {
+ padding: 93px 0 !important;
+}
+ .em-blog-content-area {
+ padding: 15px 15px 10px;
+ }
+ /* call-to-action css */
+ .all_cal_color {
+ text-align: center;
+ }
+ .witr_9 .itpart_video_inner{
+ margin-bottom: 73px;
+ }
+ .witr_9 .itpart_video_inner{
+ top: 40px;
+ }
+ .witr_col_image {
+ margin-top: 50px;
+ }
+ .witr_11 {
+ margin-top: 100px;
+ }
+ .witr_5 .itpart_content p{
+ width: 100%;
+ }
+ .witr_b9{
+ margin-top: 95px;
+ }
+ /* single portfolio2 */
+ .portfolio-details-box {
+ margin-left: 0;
+ }
+ .pimgs img {
+ width: 100%;
+ }
+ /* contact css */
+ .witr_field2 .witr_form_field2, .witr_field2 .witr_form_field2 {
+ float: none;
+ width: 100%;
+ }
+ .witr_form_controls2 .witr_field2 .witr_form_field2:nth-child(odd), .witr_form_controls2 .witr_field2 .witr_form_field2:nth-child(odd) {
+ margin-right: 0;
+ }
+ /* countdown css */
+ span.cdowns {
+ margin-bottom: 20px;
+ }
+ span.cdowns:before {
+ display: none;
+ }
+ span.cdowns:after {
+ display: none;
+ }
+ .witr_btn {
+ margin-top: 11px !important;
+ }
+ /* curosel-style css */
+ .curosel-style .owl-nav div {
+ left: -15px;
+ }
+ .curosel-style .owl-nav .owl-next{
+ right: -15px;
+ }
+ /* timeline css */
+ .mrl65,.mrr15{
+ display:none;
+ }
+ .mrr50 {
+ margin-right: -235px;
+ }
+ .mrl110 {
+ margin-left: -63px;
+ }
+ .mrr90 {
+ margin-right: -40px;
+ }
+ /* static tab css*/
+ .itpart_event_thumb {
+ float: none;
+ margin-bottom: 15px;
+ }
+ .itpart_single_event {
+ margin: 0;
+ }
+ .itpart_event_icon span {
+ margin-right: 5px;
+ }
+ .testomonial-slide .slick-prev, .blog_wrap .slick-prev {
+ left: 15px;
+ }
+ .testomonial-slide .slick-next, .blog_wrap .slick-next {
+ right: 15px;
+ }
+ .recent-post-text {
+ margin-top: 10px;
+ }
+ /*====== new css ======= */
+ /* ab_videoArea */
+ .singleAbSlide {
+ right: 0;
+ left: 0;
+ bottom: -218px;
+ }
+ .em_single_testimonial {
+ padding: 37px 20px 26px;
+ }
+ .em_testi_logo {
+ right: 15px;
+ top: 35px;
+ }
+ .witr_nth_child:nth-child(2n) {
+ margin-top: 0;
+ margin-bottom:30px;
+ }
+ .witr_single_call .text-right {
+ text-align: center !important;
+ }
+ .witr_center{
+ text-align: center;
+ }
+ .em_slider_social {
+ top: 41%;
+ z-index: 999999;
+ display:none;
+ }
+ .itpart_content {
+ margin-bottom: 30px;
+ }
+ .em-service2.sleft .em-service-icon {
+ float: none;
+ margin-bottom: 10px;
+ }
+ /* new css add */
+ .witr_event_style_5 .witr_event_d {
+ padding-top: 30px;
+ }
+ .witr_event_style_5 .witr_event_btn {
+ margin-top: 8px;
+ }
+ .witr_appoimentle{
+ position: initial !important;
+ }
+ #scrollUp {
+ bottom: 75px;
+ right: 30px;
+ }
+ .footer-bottom:before {
+ width: 90%;
+ }
+.itpart_features_area {
+ margin-top: 100px;
+}
+.about_thumb {
+ padding: 0;
+}
+.about_thumb img {
+ width: 100%;
+}
+.witr_section_right {
+ padding: 40px 20px 0px 0px;
+}
+.itpart_advantages_area .all_color_service {
+ padding: 30px 11px 16px 0px;
+}
+.itpart_advantages_area .em-service-title h3 {
+
+ font-size: 19px;
+}
+.contact2 .apartment_area {
+ margin: 0px 50px 0px 50px;
+}
+.witr_lf_area {
+ margin-top: 0px;
+ margin-bottom: 40px;
+}
+.skill_thumb img {
+ width: 100%;
+}
+.footer-menu ul li a {
+ padding: 0 6px;
+ font-size: 14px;
+}
+
+.vision_thumb_area img {
+ width: 100%;
+ margin-top: 40px;
+}
+
+.post_team_idteam .slick-prev {
+ left:564px;
+}
+.itpart_service2_area .witr_custom2_icon {
+ float: left;
+ margin-right: 25px;
+}
+.single_page .witr_section_title_inner h3 {
+ font-size: 27px;
+}
+
+.testomonial .test-part.witr_testi_s_11 {
+ padding: 30px 17px 20px;
+}
+.contact_em_top {
+ margin-top: 0px;
+ margin-bottom: 30px;
+}
+.skill_title_bg {
+ padding: 93px 30px 30px 30px;
+}
+.skill_title_bg.title2 {
+ padding: 50px 30px 100px 30px;
+}
+
+
+
+
+
+
+
+
+}
+/* ------------------------------------------------- Small Mobile : 320 ---------------------------------------------------*/
+ @media (max-width: 767px) {
+ .witr_swiper_height {
+ height:560px;
+ width: 100%;
+ background-position: center left;
+ }
+ .witr_swiper_area.home2_swiper_area .witr_swiper_height {
+ background-position: center left;
+ background-size: cover;
+ }
+.about_page_area_about .all_color_service {
+ display: block;
+}
+.about_page_area_about .witr_button_area {
+ text-align: center;
+}
+.slide_items {
+ text-align: center;
+}
+.em_service_content {
+ margin-bottom: 20px;
+}
+.itpart_service_area2.itpart_service_area {
+ padding: 105px 0px 100px;
+}
+.itpart_service_area .service_icon_box {
+ padding: 20px 19px 20px;
+}
+.about_page_counter {
+ padding: 85px 10px 53px 10px;
+}
+ .itpart_service_area {
+ margin-top: 100px;
+ }
+ .single_service_area .witr_text_widget_inner h2 {
+ font-size: 25px;
+ }
+ .itpart_service_area .em_service_text_box {
+ padding: 43px 10px 25px 60px;
+ }
+ .service_icon_box {
+ padding: 20px 20px 20px 20px;
+ }
+ .witr_sw_text_area {
+ width: 100%;
+ }
+ .witr_ds_content_inner {
+ width:90%;
+ }
+ .w_slider_3 .witr_swiper_height {
+ transform: translateX(0) !important;
+ }
+ .w_slider_4 .witr_swiper_height {
+ margin-left:0px !important;
+ }
+ .m1.witr_swiper_height {
+ width: 100% !important;
+ }
+ .witr_swiper_area .text-left .slider_vd_icon {
+ right: 37% !important;
+ top: 12% !important;
+ }
+ .witr_swiper_area .text-right .slider_vd_icon {
+ left: 40% !important;
+ top: 12% !important;
+ }
+ .witr_swiper_area .text-center .slider_vd_icon {
+ top: 12%;
+ }
+ .witr_sw_text_area.text-right, .witr_sw_text_area.text-left {
+ text-align: center !important;
+ }
+ .swiper-button-prev,.swiper-button-next {
+ display: none;
+ }
+ .witr_swiper_area .witr_btn {
+ margin-right: 0;
+ margin-bottom: 10px;
+ }
+ .text-right .witr_swiper_content h1, .text-left .witr_swiper_content h1, .text-center .witr_swiper_content h1{
+ font-size:20px;
+ }
+ .text-right .witr_swiper_content h2, .text-right .witr_swiper_content h3, .text-left .witr_swiper_content h2, .text-left .witr_swiper_content h3, .text-center .witr_swiper_content h2, .text-center .witr_swiper_content h3{
+ font-size:25px;
+ }
+ .text-right .witr_swiper_content h1, .text-right .witr_swiper_content h2, .text-right .witr_swiper_content h3, .text-right .witr_swiper_content p, .text-left .witr_swiper_content h1, .text-left .witr_swiper_content h2, .text-left .witr_swiper_content h3, .text-left .witr_swiper_content p, .text-center .witr_swiper_content h1, .text-center .witr_swiper_content h2, .text-center .witr_swiper_content h3, .text-center .witr_swiper_content p {
+ width: 100% !important;
+ margin-left: auto;
+ margin-right: auto;
+ text-align:center !important;
+ }
+ .witr_swiper_content p {
+ font-size: 17px;
+ }
+ .text-right .witr_btn_sinner, .text-left .witr_btn_sinner {
+ text-align: center !important;
+ }
+ /* slick slider */
+ .em-slider-title {
+ font-size: 16px;
+ margin-bottom: 10px;
+ }
+ .em-slider-sub-title {
+ font-size: 28px;
+ margin-bottom: 0;
+ }
+ .em-slider-descript {
+ display: none;
+ }
+ .em-slider-button {
+ display: none;
+ }
+ .em-nivo-slider-wrapper .nivo-controlNav {
+ display: none;
+ }
+ .text-left .em_slider_s2_content {
+ margin-right: auto;
+ }
+ .text-right .em_slider_s2_content {
+ margin-left: auto;
+ }
+ .em-slider-sub-title {
+ line-height: 32px;
+ }
+ .em_slider_inner.text-left, .em_slider_inner.text-right{
+ text-align:center !important;
+ }
+ .em_slider_s2_image {
+ display: none;
+ }
+ /*========= banner area css ===========*/
+ .witr_banner_area {
+ height: 640px;
+ }
+ .witr_banner_content h1 {
+ font-size: 25px;
+ }
+ .witr_banner_content h2 {
+ font-size: 20px;
+ }
+ .witr_banner_content p {
+ font-size: 16px;
+ width: 87%;
+ }
+ .witr_banner_content.text-left, .witr_banner_content.text-right{
+ text-align:center !important;
+ }
+ .witr_banner_content.text-left p, .witr_banner_content.text-right p {
+ width: 100%;
+ }
+ .witr_banner_content.text-left {
+ margin-left: 0;
+ }
+ .witr_banner_content.text-right {
+ margin-right: 0;
+ }
+ .witr_video_butns {
+ display: block;
+ margin-top: 15px;
+ }
+ /*=========== banner area 2 css ===============*/
+ .banner_area {
+ text-align: center;
+ }
+ .banner-content h1, .banner-content h2, .banner-content h3 {
+ font-size: 22px;
+ }
+ .witr_float .butn, .witr_float .butn {
+ float: none;
+ display: block;
+ margin-bottom: 10px;
+ margin-right: 0;
+ }
+ .witr_btns2 {
+ display: block;
+ margin-top: 20px;
+ }
+ .banner-content form {
+ width: 100%;
+ }
+ .banner-content input {
+ width: 100%;
+ }
+ .banner-content button {
+ position: inherit;
+ margin-top: 20px;
+ }
+ .witr_deshboard {
+ margin-top: 30px;
+ }
+ /* service area2 */
+ .itpart_service_area2.itpart_service_area.home2_service_area {
+ padding: 125px 0px 0px;
+ }
+ .home2_togole_area .itpart_button a {
+ padding: 18px 35px;
+ font-size: 17px;
+ margin-right: 0px;
+ }
+ .home2_togole_area .single_image {
+ margin: 10px 20px 0px 0px;
+ text-align: left;
+ margin-bottom: 20px;
+ }
+ .cal_to_toggole {
+ display: inherit;
+ }
+ /* why choose area css */
+ .why_choose_area .witr_btn {
+ margin-bottom: 30px;
+ }
+ .home2_togole_area .itpart_button.no_margin {
+ margin-top: 0;
+ width: 38%;
+ }
+ .home2_togole_area .itpart_button.no_margin {
+ margin-top: 0;
+ width: 60%;
+ }
+ /*=========== Slick area 2 css ===============*/
+ .witr_ds_content {
+ height: 600px;
+ background-size: cover;
+ background-position: center center;
+ overflow: hidden;
+ }
+ .text-right .witr_ds_content_inner h1, .text-right .witr_ds_content_inner h2, .text-right .witr_ds_content_inner h3, .text-right .witr_ds_content_inner p, .text-left .witr_ds_content_inner h1, .text-left .witr_ds_content_inner h2, .text-left .witr_ds_content_inner h3, .text-left .witr_ds_content_inner p, .text-center .witr_ds_content_inner h1, .text-center .witr_ds_content_inner h2, .text-center .witr_ds_content_inner h3, .text-center .witr_ds_content_inner p {
+ width: 100% !important;
+ margin-left: auto;
+ margin-right: auto;
+ text-align:center !important;
+ }
+ .text-right .witr_ds_content_inner h1, .text-right .witr_ds_content_inner h2, .text-right .witr_ds_content_inner h3, .text-left .witr_ds_content_inner h1, .text-left .witr_ds_content_inner h2, .text-left .witr_ds_content_inner h3, .text-center .witr_ds_content_inner h1, .text-center .witr_ds_content_inner h2, .text-center .witr_ds_content_inner h3{
+ font-size:23px;
+ }
+ .witr_btn {
+ padding: 10px 26px;
+ margin-right: 0;
+ }
+ .slider_btn {
+ text-align: center;
+ }
+ .section-title.t_center {
+ width: 100%;
+ }
+ .section-title.t_left {
+ width: 100%;
+ }
+ .section-title.t_right {
+ width: 100%;
+ }
+ /* top bar */
+ /* .top-address {
+ text-align: center;
+ }
+ .social-icons.text-right {
+ text-align: center;
+ }
+ */
+ .top-address p a, .top-right-menu ul.social-icons li a, .top-address p span {
+ font-size: 13px;
+ }
+ .top-right-menu ul.social-icons {
+ }
+ /* footer bar */
+ .footer-top-inner p {
+ width: 100%;
+ }
+ .footer-menu ul {
+ margin: 10px 0 0;
+ text-align: center !important;
+ }
+ .footer-menu ul li a {
+ font-size: 14px;
+ }
+ .copy-right-text p {
+ text-align: center;
+ }
+ .breadcumb-blog-area {
+ padding: 50px 0;
+ }
+ /* blog css */
+ .em-blog-content-area {
+ padding: 20px 10px 5px;
+ }
+ .itpart-blog-meta-left a, .itpart-blog-meta-left span {
+ font-size: 14px;
+ margin-right: 3px;
+ }
+ .itpart-blog-meta-right a, .itpart-blog-meta-right span {
+ font-size: 11px;
+ margin-left: 3px;
+ }
+ /* single blog */
+ .post_reply ul, .blog-content ul, .single-blog-content ul {
+ padding-left: 20px;
+ }
+ .post_reply ol, .blog-content ol, .single-blog-content ol {
+ padding-left: 20px;
+ }
+ .comments-area .children {
+ margin-left: 10px;
+ }
+ .comment_field .input-field {
+ width: 100%;
+ }
+ .pdsr {
+ padding-top: 50px;
+ }
+ .pdsl {
+ padding-bottom: 90px;
+ }
+ #wp-calendar {
+ display: block;
+ }
+ /* footer css */
+ .copy-right-text p {
+ font-size: 11px;
+ }
+ .footer-social-icon a i {
+ font-size: 16px;
+ height: 35px;
+ line-height: 35px;
+ width: 35px;
+ }
+ /* Em-Creative Header */
+ .creative_header_curve {
+ display: none;
+ }
+ .creative_header_logo {
+ padding-right: 0;
+ text-align: center;
+ }
+ .em_creative_header {
+ background: transparent none repeat scroll 0 0;
+ z-index: 999;
+ }
+ .single_header_address {
+ padding: 10px 71px 10px 0;
+ text-align: center;
+ }
+ .creative_header_button {
+ background: #f9f9f9 none repeat scroll 0 0;
+ padding: 30px 0;
+ position: relative;
+ text-align: center;
+ }
+ .creative_header_icon {
+ float: none;
+ margin-bottom: 10px;
+ margin-right: 0;
+ overflow: hidden;
+ }
+ .creative_header_address .col-sm-4.col-xs-12{
+ padding-left:0;
+ }
+ .creative_header_logo {
+ display: none;
+ }
+ .creative_header_button:before, .em_creative_header:before, .em_creative_header:after {
+ display: none;
+ }
+ .single_header_address.ctrp {
+ padding-bottom: 40px;
+ }
+ /* new css */
+ /* footer css */
+ .copy-right-text p {
+ font-size: 15px;
+ }
+ .itpart-blog-thumb img {
+ width: 100%;
+ }
+ /* section title css */
+ .witr_section_title_inner h1, .witr_section_title_inner h2, .witr_section_title_inner h3{
+ font-size: 21px;
+ line-height: 30px;
+ }
+ .witr_section_title_inner h2 {
+ margin-bottom: 4px;
+ }
+ .title_in:before, .title_in:after {
+ background: none;
+ }
+ .title_tx h2 {
+ font-size: 16px;
+ line-height: 20px;
+ }
+ .title_in {
+ float: none;
+ padding-right: 0;
+ }
+ .title_in_area, .witr_section_title_inner.text-center p, .witr_section_title_inner.text-left p, .witr_section_title_inner.text-right p {
+ width: 100%;
+ }
+ .witr_section_title_inner p {
+ padding-top: 10px;
+ }
+ .witr_section_title{
+ text-align: center;
+ }
+ .witr_section_title .text-right {
+ text-align: center !important;
+ }
+ .title_btn {
+ margin: 30px 0 20px;
+ }
+ /* about css */
+ .witr_text_widget_inner h1, .witr_text_widget_inner h2 {
+ font-size: 20px;
+ line-height: 36px;
+ }
+ .witr_text_widget_inner p, .about-content span{
+ font-size: 16px;
+ }
+ /* feature area */
+ .em_feature-icon {
+ font-size: 18px;
+ margin-right: 15px;
+ }
+ .em_feature-icon i {
+ float: none;
+ }
+ .em-feature-title h2 {
+ margin-top: 0;
+ margin-bottom: 0;
+ }
+ .witr_feature_content_3d h3 {
+ font-size: 21px;
+ }
+ .sub-item h3 {
+ font-size: 21px;
+ }
+ .w_apps_button_area {
+ text-align: center;
+ }
+ .witr_app_area .digital-content h3 {
+ margin: 0 !important;
+ font-size: 25px;
+ }
+ /* Screenshots css */
+ .dnSlide-main.done {
+ -webkit-transform: scale(0.4);
+ transform: scale(0.4);
+ margin-left: -280px;
+ top: -120px;
+ }
+ .Screenshots-fearm img {
+ width: 260% !important;
+ max-width: 260% !important;
+ left: -65px;
+ }
+ .dnSlide-main img{
+ width: 100%;
+ }
+ .dnSlide-btn {
+ display: none;
+ }
+ .Screenshots-area .Screenshots-frame-img {
+ left: -64%;
+ top: -13px;
+ width: 232%;
+ }
+ .digital-item ul li a {
+ padding: 7px 27px;
+ }
+ .mobil-item {
+ margin-top: 30px;
+ }
+ /* countdown css */
+ span.cdowns {
+ margin-bottom: 30px;
+ }
+ span.cdowns:before {
+ display: none;
+ }
+ span.cdowns:after {
+ display: none;
+ }
+ .witr_btn {
+ margin-top: 11px !important;
+ }
+ /* testomonial css */
+ .testomonial.testomonial-5 .test-part img.testimg {
+ top: 88%;
+ }
+ .testomonial .test-part img {
+ margin: 0 !important;
+ }
+ .em_test_thumb {
+ margin-right:15px;
+ }
+ .em_testi_title h2 {
+ font-size: 17px;
+ }
+ .testiCreCon {
+ padding: 8px 20px 30px 20px;
+ }
+ .witr_content_test7 {
+ padding: 0;
+ }
+ /* testomonial style 8 css */
+ .witr_testomonial_area {
+ width: 100%;
+ }
+ .witr_test_part {
+ float: none;
+ margin-left: 0;
+ margin-right: 0;
+ }
+ .witr_test_part img {
+ margin: auto;
+ }
+ .witr_testi_main {
+ width: 100%;
+ }
+ /* video css */
+ .video-part .video-overlay .video-item h3 {
+ color: #fff;
+ font-size: 25px;
+ }
+ .video-part .video-overlay {
+ padding: 110px 0 !important;
+ }
+ /* service css */
+ .service-item {
+ text-align: center;
+ }
+ .em-service2.sleft .em-service-icon, .em-service2.sright .em-service-icon {
+ float: none;
+ margin-bottom: 10px;
+ }
+ .witr_service2_box {
+ text-align: center;
+ }
+ .witr_custom2_icon {
+ float: none;
+ margin-right: 0;
+ margin-bottom: 15px;
+ }
+ .witr_service3_box {
+ text-align: center;
+ }
+ .witr_service3_icon {
+ float: none;
+ margin-right: 0;
+ margin-bottom: 15px;
+ }
+ /* tab css */
+ .itpart_tab li {
+ margin-bottom: 20px;
+ }
+ .witr_adv_tab_content {
+ margin: 0;
+ }
+ .witr_taba_style1 .nav-tabs .nav-link {
+ margin-right: 0px;
+ }
+ /* accourdion css */
+ .witr_ac_style {
+ font-size: 15px;
+ }
+ .witr_ac_style:before, .active .witr_ac_style:before {
+ right: 10px;
+ }
+ .itpart-accourdion-title h2{
+ font-size: 14px;
+ padding-left: 20px;
+ }
+ /* blog css */
+ .blog-img img {
+ width: 100%;
+ }
+ .witr_blog_con {
+ padding: 12px 10px 18px;
+ }
+ .witr_blog_con h2 {
+ font-size: 21px;
+ }
+ .witr_post_Author {
+ margin: 0 10px;
+ }
+ .recent-post-text {
+ text-align: left;
+ }
+ /* counter css */
+.witr_counter_single {
+ display: inherit;
+ text-align: center;
+}
+ .witr_counter_icon i{
+ margin-bottom: 15px;
+ margin-right: 20px;
+ float: none;
+ }
+ .witr_custom_icon {
+ margin-bottom: 10px;
+ }
+ .witr_custom_icon i{
+ margin-right: 0;
+ float: none;
+ }
+ .why_choose_area .witr_s_flex {
+ display: inherit;
+ }
+ .em-service2 .em-service-inner {
+ padding-right: 0px;
+ }
+ /* video css */
+ .video-play-6 {
+ width: 80%;
+ }
+ .subscribe form input {
+ width: 500px;
+ }
+ .download-content-6 ul li a {
+ padding: 12px 46px 12px 80px;
+ }
+ .donwload-overlay {
+ padding-top: 215px;
+ }
+ .video-part .video-overlay {
+ padding: 200px 0;
+ }
+ .play-overlay i {
+ font-size: 32px;
+ }
+ .digital-img {
+ margin-top: 100px;
+ }
+ /* contact css */
+ .field.topfield .form-field {
+ float: none;
+ width: 100%;
+ }
+ .form-controls .field.topfield .form-field:nth-child(2n) {
+ margin-left: 0;
+ }
+ .witr_field1 .witr_form_field1 {
+ width: 100%;
+ }
+ .witr_form_controls1 .witr_field1 .witr_form_field1:nth-child(2n) {
+ margin-left: 0;
+ }
+ /* apps_button css */
+ .w_apps_button_image {
+ margin-right: 0;
+ margin-bottom: 20px;
+ }
+ .tab_content.text-left {
+ text-align: center !important;
+ }
+ /* blog css */
+ .footer-middle {
+ text-align: center;
+ }
+ .blog-content h5 > a {
+ font-size: 17px;
+ }
+ .blog-content span {
+ font-size: 12px;
+ }
+ .blog-page-title h2 {
+ font-size: 17px;
+ }
+ .wblog-content h5 > a {
+ font-size: 20px;
+ }
+ .wblog-content span {
+ margin-right: 5px;
+ }
+ .blog-left-side .blog-title > ul > li > a {
+ margin-right: 8px;
+ }
+ .widget .widget_media_image img{
+ width:100%;
+ }
+ .recent-post-text > h4 {
+ margin-top: 2px;
+ line-height: 1;
+ }
+ .recent-post-text h4 a {
+ font-size: 22px;
+ }
+ .witr_post_Author6{
+ }
+ .witr_blog_con6 h2 {
+ font-size: 17px;
+ }
+ .witr_blog_con6 h5 a {
+ font-size: 15px;
+ }
+ /* call to action */
+ .all_cal_color {
+ text-align: center;
+ }
+ .itpart_video_inner{
+ top: 21px;
+ }
+ .itpart_video11.itpart_video_inner{
+ top: 50%;
+ }
+ .itpart_button a {
+ margin-bottom: 30px;
+ margin-right: 0px;
+ }
+ .itpart_content h2, .itpart_content h3{
+ font-size: 23px;
+ }
+ .witr_9 .itpart_video_inner{
+ margin-bottom: 73px;
+ }
+ .witr_b9 {
+ margin-top: -10px;
+ }
+ .itpart_content {
+ margin-bottom: 30px;
+ }
+ .mc4wp-form-fields button {
+ width: 100%;
+ position: inherit;
+ padding: 25px 30px;
+ margin-top: 25px;
+ }
+ .witr_joined .witr_con_btn2 .w_btn2 {
+ position: inherit;
+ width: 100%;
+ }
+ .witr_sstyle_9 {
+ padding: 42px 20px 50px;
+ }
+ .w_apps_button {
+ margin-bottom: 30px;
+ }
+ /* single portfolio2 */
+ .portfolio-details-box {
+ margin-left: 0;
+ }
+ .portfolio-details-box ul li span.eright {
+ font-size: 15px;
+ margin-left: 0;
+ }
+ .portfolio-details-box ul li b {
+ font-size: 15px;
+ }
+ .portfolio-details-box h2 {
+ padding-top: 20px;
+ }
+ .portfolio-details-box .itpart-single-icon-inner a {
+ margin: 0 4px;
+ }
+ /* single_protfolio css */
+ .single_protfolio {
+ margin-bottom: 30px;
+ }
+ .portfolio_nav ul li {
+ padding: 6px 20px;
+ }
+ /* contact css */
+ .witr_field2 .witr_form_field2, .witr_field2 .witr_form_field2 {
+ float: none;
+ width: 100%;
+ }
+ .witr_form_controls2 .witr_field2 .witr_form_field2:nth-child(odd), .witr_form_controls2 .witr_field2 .witr_form_field2:nth-child(odd) {
+ margin-right: 0;
+ }
+ /* display none css*/
+ .owl-nav, .slick-prev, .slick-next, .em-nivo-slider-wrapper .nivo-directionNav {
+ display: none;
+ }
+ /* timeline css*/
+ .witr_sicon_bottom.witr_hd_timeline_contant {
+ padding-bottom: 20px;
+ padding-top: 30px;
+ }
+ .mrl65 {
+ margin-left: 16px;
+ padding-top: 25px;
+ }
+ .mrl110 {
+ margin-left: 17px;
+ padding-top: 25px;
+ ;
+ }
+ .mrr90 {
+ margin-right: 15px;
+ }
+ .mrr50 {
+ margin-right: 14px;
+ }
+ .mrr15 {
+ margin-right: 14px;
+ }
+ /* static tab css*/
+ .itpart_event_thumb {
+ float: none;
+ margin-bottom: 15px;
+ }
+ .itpart_single_event {
+ margin: 0;
+ }
+ .itpart_event_icon span {
+ margin-right: 5px;
+ }
+ #sb_instagram .sbi_photo_wrap {
+ margin-bottom: 25px;
+ }
+ .testomonial-slide .slick-prev, .blog_wrap .slick-prev {
+ left: 15px;
+ }
+ .testomonial-slide .slick-next, .blog_wrap .slick-next {
+ right: 15px;
+ }
+ .em-feature {
+ margin-bottom: 23px;
+ }
+ .single_counter {
+ margin-bottom: 20px;
+ }
+ .woocommerce div.product .woocommerce-tabs ul.tabs li a {
+ padding: .5em 6px;
+ }
+ .woocommerce div.product .woocommerce-tabs ul.tabs li {
+ padding: 0px .5em;
+ margin-right: 6px;
+ }
+ .itpart-header-top {
+ display:none;
+ }
+ .accordion_area {
+ padding-top: 30px;
+ }
+ .footer-sociala-icon {
+ float: none;
+ }
+ .footer-sociala-info p {
+ text-align: center;
+ }
+ /*====== new css ======= */
+ /* ab_videoArea */
+ .ab_videoArea {
+ padding: 44px 23px 40px;
+ }
+ .singleAbSlide {
+ position: inherit;
+ bottom: -30px;
+ right: 0;
+ left: 0;
+ }
+ /* service */
+ .singleSS {
+ /* padding: 61px 24px 60px;
+ */
+ }
+ .detail_SS h3 {
+ font-size: 21px;
+ }
+ .em_single_testimonial {
+ padding: 37px 20px 26px;
+ }
+ .witr_testi_itemt {
+ padding: 0px;
+ }
+ .em_testi_logo {
+ right: 15px;
+ top: 35px;
+ }
+ .witr_nth_child:nth-child(2n) {
+ margin-top: 0;
+ }
+ .img_text_part_dflex,
+ .two_part_dflex {
+ display: inherit;
+ text-align: center;
+ }
+ .single_2p_testimonial {
+ text-align: center;
+ }
+ .title_and_sub {
+ margin: 10px 0;
+ }
+ /* about css */
+ .witr_text_widget_inner h1, .witr_text_widget_inner h2 {
+ font-size: 23px;
+ }
+ .witr_about_content {
+ text-align: center;
+ }
+ .witr_about_content h3 {
+ font-size: 30px;
+ }
+ .witr_about_image {
+ margin-top: 30px;
+ }
+ .witr_service3_box {
+ top: 50%;
+ transform: translateX(-50%) translateY(-50%);
+ left: 50%;
+ padding: 0;
+ }
+ .em_slider_social {
+ top: 40%;
+ display: none;
+ }
+ /* team css */
+ .witr_back_img img {
+ height: 554px !important;
+ height: auto;
+ }
+ /* new css add */
+ .witr_dis_btngr {
+ display: inherit;
+ }
+ .witr_circal_r {
+ margin-left: 0;
+ }
+ .witr_event_style_5 .witr_event_d {
+ padding-top: 3px;
+ }
+ .witr_event_style_5 .witr_event_btn {
+ margin-top: 5px;
+ }
+ .witr_appoimentle{
+ position: initial !important;
+ }
+ #scrollUp {
+ bottom: 134px;
+ right: 30px;
+ }
+ .footer-bottom:before {
+ width: 85%;
+ }
+ .itpart_features_area {
+ margin-top: 100px;
+ }
+
+.witr_section_right {
+ padding: 40px 0px 0px 0px;
+}
+.contact2 .apartment_area {
+ margin: 0px 0px 0px 0px;
+}
+.contact2 .apartment_text p {
+ font-size: 28px;
+}
+.itpart_skill_area .witr_section_title_inner h3 {
+ font-size: 22px;
+}
+.witr_lf_area {
+ margin-bottom: 50px;
+ margin-top: 0px;
+}
+.witr_section_right .witr_section_title_inner h3 {
+ font-size: 23px;
+}
+.vision_thumb_area {
+ margin-top: 30px;
+}
+.itpart_team2_area .witr_section_title_inner h3 {
+ font-size: 29px;
+}
+.post_team_idteam .slick-prev, .post_team_idteam .slick-next {
+ opacity: 0;
+}
+.itpart_service2_area .witr_custom2_icon {
+ float: left;
+}
+.contact_thumb_area {
+ margin-bottom: 40px;
+}
+.witr_taba_style1 .nav-tabs .nav-link {
+ padding: 20px 24px;
+}
+.style_2 .all_pricing_color ul li:nth-child(odd) {
+ padding: 0px 55px 0px;
+}
+.style_2 .all_pricing_color ul li {
+ padding: 0px 55px 0px;
+}
+.privacy_title .witr_section_title_inner h3 {
+ font-size: 19px;
+}
+.itpart_heading_bg_area .witr_animate_content h1 {
+ font-size: 26px;
+}
+.countdown_page .witr_section_title_inner h3 {
+ font-size: 27px;
+}
+.brpt h2 {
+ font-size: 30px;
+}
+
+.itpart_contact_area .em-service2.sleft .em-service-icon {
+ float: none;
+}
+.contact_em_top {
+ margin-top: 0px;
+ margin-bottom: 30px;
+}
+.home2_service .witr_section_title_inner {
+ text-align: center;
+}
+.home2_service .text-right {
+ text-align: center!important;
+}
+.skill_title_bg {
+ padding: 93px 30px 30px 30px;
+}
+.skill_title_bg.title2 {
+ background: #ff3d00;
+ padding: 50px 30px 100px 30px;
+}
+
+.witr_6 .itpart_content p, .witr_5 .itpart_content p {
+ width: 100%;
+ margin: auto;
+}
+
+.list_item2 {
+ margin-left: 0px;
+}
+.list_item3 {
+ margin-left: 0px;
+}
+.itpart_contact_bg_area {
+ background-position: center right;
+}
+
+
+
+
+
+
+
+
+}
+
+
+
+/* ------------------------------------------------- Large Mobile :480px. ---------------------------------------------------*/
+ @media only screen and (min-width: 480px) and (max-width: 767px) {
+ .em-slider-button {
+ display: block;
+ }
+ .em-nivo-slider-wrapper .nivo-directionNav {
+ display: block;
+ }
+ .em-button-button-area a {
+ margin-right: 5px;
+ margin-top: 15px;
+ padding: 3px 20px;
+ font-size: 12px;
+ }
+ /*=========== banner area 2 css ===============*/
+ .banner-content button {
+ position: absolute;
+ }
+ /* portfolio css */
+ .portfolio_nav ul li {
+ margin: 0 2px 10px;
+ }
+ /* banner area css */
+ .witr_banner_area {
+ height: 600px;
+ }
+ .witr_banner_content.text-right p {
+ width: 92%;
+ margin:auto;
+ font-size:17px;
+ }
+ .witr_banner_content.text-left p {
+ width: 92%;
+ margin:auto;
+ font-size:17px;
+ }
+ /* section_title */
+ .witr_section_title_inner h1, .witr_section_title_inner h2, .witr_section_title_inner h3 {
+ font-size: 25px;
+ }
+ .witr_section_title_inner.text-center p, .witr_section_title_inner.text-left p, .witr_section_title_inner.text-right p {
+ width: 91%;
+ }
+ /* text_widget css */
+ .witr_text_widget_inner p, .about-content span{
+ font-size: 17px !important;
+ }
+ /* blog css */
+ .blog-part {
+ text-align: center;
+ }
+ /* Screenshots css */
+ .dnSlide-main.done {
+ -webkit-transform: scale(0.7);
+ transform: scale(0.7);
+ margin-left: -196px;
+ }
+ .Screenshots-fearm img {
+ width: 256% !important;
+ max-width: 256% !important;
+ left: -98px;
+ top: 49px;
+ }
+ .itpart-header-top {
+ display:block;
+ }
+ .witr_feature_13 .sub-item::after, .witr_feature_13 .sub-item:before {
+ top: 53%;
+ }
+ /* about page about */
+ .about_page_area_about .all_color_service {
+ padding: 33px 9px 50px;
+ }
+ .home2_togole_area .itpart_button.no_margin {
+ margin-top: 0;
+ width: 38%;
+ }
+}
+/* menu and logo show & hide */
+ @media (min-width: 10px) and (max-width: 991px){
+ .mobile-menu{
+ display:block !important;
+ }
+ .mobile_logo_area{
+ display:block !important;
+ }
+ .itpart-main-menu{
+ display:none !important;
+ }
+ .d_md_none{
+ display:none !important;
+ }
+ .em-feature {
+ margin-bottom: 20px;
+ }
+ .single_counter {
+ margin-bottom: 20px;
+ }
+}
+ @media (min-width: 10px) and (max-width: 991px){
+ .text_m_center{
+ text-align:center !important;
+ }
+ .text_m_right{
+ text-align:right !important;
+ }
+ .text_m_left{
+ text-align:right !important;
+ }
+ .menu_18.top-address p span {
+ font-size: 13px;
+ }
+ .footer-top-inner p {
+ width: 85%;
+ }
+ .witr_joined .witr_con_btn2 .w_btn2 {
+ position: inherit;
+ width: 100%;
+ }
+}
+ @media (min-width: 10px) and (max-width: 768px){
+ .ps_absulate{
+ position: inherit !important;
+ }
+ .psc_absolute{
+ position: inherit !important;
+ }
+}
+ @media (min-width: 570px) and (max-width: 767px){
+ .text_s_center{
+ text-align:center !important;
+ }
+ .text_s_right{
+ text-align:right !important;
+ }
+ .text_s_left{
+ text-align:right !important;
+ }
+ .footer-top-inner p {
+ width: 95%;
+ }
+}
+ @media (min-width: 10px) and (max-width: 570px){
+ .itpart-header-top{
+ display:none;
+ }
+}
+
\ No newline at end of file
diff --git a/public/static/home/assets/fonts/Flaticon.woff b/public/static/home/assets/fonts/Flaticon.woff
new file mode 100644
index 0000000..26b386f
--- /dev/null
+++ b/public/static/home/assets/fonts/Flaticon.woff
Binary files differ
diff --git a/public/static/home/assets/fonts/Flaticon.woff2 b/public/static/home/assets/fonts/Flaticon.woff2
new file mode 100644
index 0000000..775d6ea
--- /dev/null
+++ b/public/static/home/assets/fonts/Flaticon.woff2
Binary files differ
diff --git a/public/static/home/assets/fonts/aprova0698.ttf b/public/static/home/assets/fonts/aprova0698.ttf
new file mode 100644
index 0000000..7619de2
--- /dev/null
+++ b/public/static/home/assets/fonts/aprova0698.ttf
Binary files differ
diff --git a/public/static/home/assets/fonts/aprova0698.woff b/public/static/home/assets/fonts/aprova0698.woff
new file mode 100644
index 0000000..3d6472e
--- /dev/null
+++ b/public/static/home/assets/fonts/aprova0698.woff
Binary files differ
diff --git a/public/static/home/assets/fonts/fontawesome-webfont3295.ttf b/public/static/home/assets/fonts/fontawesome-webfont3295.ttf
new file mode 100644
index 0000000..26dea79
--- /dev/null
+++ b/public/static/home/assets/fonts/fontawesome-webfont3295.ttf
Binary files differ
diff --git a/public/static/home/assets/fonts/fontawesome-webfont3295.woff b/public/static/home/assets/fonts/fontawesome-webfont3295.woff
new file mode 100644
index 0000000..dc35ce3
--- /dev/null
+++ b/public/static/home/assets/fonts/fontawesome-webfont3295.woff
Binary files differ
diff --git a/public/static/home/assets/fonts/fontawesome-webfont3295.woff2 b/public/static/home/assets/fonts/fontawesome-webfont3295.woff2
new file mode 100644
index 0000000..500e517
--- /dev/null
+++ b/public/static/home/assets/fonts/fontawesome-webfont3295.woff2
Binary files differ
diff --git a/public/static/home/assets/fonts/icofont.ttf b/public/static/home/assets/fonts/icofont.ttf
new file mode 100644
index 0000000..ba6d235
--- /dev/null
+++ b/public/static/home/assets/fonts/icofont.ttf
Binary files differ
diff --git a/public/static/home/assets/fonts/icofont.woff b/public/static/home/assets/fonts/icofont.woff
new file mode 100644
index 0000000..48002ce
--- /dev/null
+++ b/public/static/home/assets/fonts/icofont.woff
Binary files differ
diff --git a/public/static/home/assets/fonts/icofont.woff2 b/public/static/home/assets/fonts/icofont.woff2
new file mode 100644
index 0000000..75f03d7
--- /dev/null
+++ b/public/static/home/assets/fonts/icofont.woff2
Binary files differ
diff --git a/public/static/home/assets/fonts/themify.ttf b/public/static/home/assets/fonts/themify.ttf
new file mode 100644
index 0000000..5d627e7
--- /dev/null
+++ b/public/static/home/assets/fonts/themify.ttf
Binary files differ
diff --git a/public/static/home/assets/fonts/themify.woff b/public/static/home/assets/fonts/themify.woff
new file mode 100644
index 0000000..847ebd1
--- /dev/null
+++ b/public/static/home/assets/fonts/themify.woff
Binary files differ
diff --git a/public/static/home/assets/images/about-img.jpg b/public/static/home/assets/images/about-img.jpg
new file mode 100644
index 0000000..618947d
--- /dev/null
+++ b/public/static/home/assets/images/about-img.jpg
Binary files differ
diff --git a/public/static/home/assets/images/about-img.png b/public/static/home/assets/images/about-img.png
new file mode 100644
index 0000000..c01cc7a
--- /dev/null
+++ b/public/static/home/assets/images/about-img.png
Binary files differ
diff --git a/public/static/home/assets/images/blog-bg-img.jpg b/public/static/home/assets/images/blog-bg-img.jpg
new file mode 100644
index 0000000..88f5111
--- /dev/null
+++ b/public/static/home/assets/images/blog-bg-img.jpg
Binary files differ
diff --git a/public/static/home/assets/images/blog-thumb-01.jpg b/public/static/home/assets/images/blog-thumb-01.jpg
new file mode 100644
index 0000000..b49e4cb
--- /dev/null
+++ b/public/static/home/assets/images/blog-thumb-01.jpg
Binary files differ
diff --git a/public/static/home/assets/images/blog1.jpg b/public/static/home/assets/images/blog1.jpg
new file mode 100644
index 0000000..a8aa379
--- /dev/null
+++ b/public/static/home/assets/images/blog1.jpg
Binary files differ
diff --git a/public/static/home/assets/images/blog10.jpg b/public/static/home/assets/images/blog10.jpg
new file mode 100644
index 0000000..5b7e5e4
--- /dev/null
+++ b/public/static/home/assets/images/blog10.jpg
Binary files differ
diff --git a/public/static/home/assets/images/blog11.jpg b/public/static/home/assets/images/blog11.jpg
new file mode 100644
index 0000000..85ef1fb
--- /dev/null
+++ b/public/static/home/assets/images/blog11.jpg
Binary files differ
diff --git a/public/static/home/assets/images/blog12.jpg b/public/static/home/assets/images/blog12.jpg
new file mode 100644
index 0000000..6ce75a0
--- /dev/null
+++ b/public/static/home/assets/images/blog12.jpg
Binary files differ
diff --git a/public/static/home/assets/images/blog2.jpg b/public/static/home/assets/images/blog2.jpg
new file mode 100644
index 0000000..43a7c18
--- /dev/null
+++ b/public/static/home/assets/images/blog2.jpg
Binary files differ
diff --git a/public/static/home/assets/images/blog3.jpg b/public/static/home/assets/images/blog3.jpg
new file mode 100644
index 0000000..283169d
--- /dev/null
+++ b/public/static/home/assets/images/blog3.jpg
Binary files differ
diff --git a/public/static/home/assets/images/blog4.jpg b/public/static/home/assets/images/blog4.jpg
new file mode 100644
index 0000000..ca8df94
--- /dev/null
+++ b/public/static/home/assets/images/blog4.jpg
Binary files differ
diff --git a/public/static/home/assets/images/blog5.jpg b/public/static/home/assets/images/blog5.jpg
new file mode 100644
index 0000000..567017e
--- /dev/null
+++ b/public/static/home/assets/images/blog5.jpg
Binary files differ
diff --git a/public/static/home/assets/images/blog6.jpg b/public/static/home/assets/images/blog6.jpg
new file mode 100644
index 0000000..4eef0e3
--- /dev/null
+++ b/public/static/home/assets/images/blog6.jpg
Binary files differ
diff --git a/public/static/home/assets/images/blog7.jpg b/public/static/home/assets/images/blog7.jpg
new file mode 100644
index 0000000..395f118
--- /dev/null
+++ b/public/static/home/assets/images/blog7.jpg
Binary files differ
diff --git a/public/static/home/assets/images/blog8.jpg b/public/static/home/assets/images/blog8.jpg
new file mode 100644
index 0000000..ab1e53c
--- /dev/null
+++ b/public/static/home/assets/images/blog8.jpg
Binary files differ
diff --git a/public/static/home/assets/images/br1.png b/public/static/home/assets/images/br1.png
new file mode 100644
index 0000000..1a53cbe
--- /dev/null
+++ b/public/static/home/assets/images/br1.png
Binary files differ
diff --git a/public/static/home/assets/images/br2.png b/public/static/home/assets/images/br2.png
new file mode 100644
index 0000000..6cb2ba6
--- /dev/null
+++ b/public/static/home/assets/images/br2.png
Binary files differ
diff --git a/public/static/home/assets/images/br3.png b/public/static/home/assets/images/br3.png
new file mode 100644
index 0000000..c831592
--- /dev/null
+++ b/public/static/home/assets/images/br3.png
Binary files differ
diff --git a/public/static/home/assets/images/br4.png b/public/static/home/assets/images/br4.png
new file mode 100644
index 0000000..11f8151
--- /dev/null
+++ b/public/static/home/assets/images/br4.png
Binary files differ
diff --git a/public/static/home/assets/images/br5.png b/public/static/home/assets/images/br5.png
new file mode 100644
index 0000000..e0a5889
--- /dev/null
+++ b/public/static/home/assets/images/br5.png
Binary files differ
diff --git a/public/static/home/assets/images/breadcump.jpg b/public/static/home/assets/images/breadcump.jpg
new file mode 100644
index 0000000..79de18c
--- /dev/null
+++ b/public/static/home/assets/images/breadcump.jpg
Binary files differ
diff --git a/public/static/home/assets/images/cal-to-1.png b/public/static/home/assets/images/cal-to-1.png
new file mode 100644
index 0000000..4f05fa4
--- /dev/null
+++ b/public/static/home/assets/images/cal-to-1.png
Binary files differ
diff --git a/public/static/home/assets/images/call-img.png b/public/static/home/assets/images/call-img.png
new file mode 100644
index 0000000..58542ea
--- /dev/null
+++ b/public/static/home/assets/images/call-img.png
Binary files differ
diff --git a/public/static/home/assets/images/choose-img.jpg b/public/static/home/assets/images/choose-img.jpg
new file mode 100644
index 0000000..af29c0c
--- /dev/null
+++ b/public/static/home/assets/images/choose-img.jpg
Binary files differ
diff --git a/public/static/home/assets/images/chosses-img.jpg b/public/static/home/assets/images/chosses-img.jpg
new file mode 100644
index 0000000..a40f8b9
--- /dev/null
+++ b/public/static/home/assets/images/chosses-img.jpg
Binary files differ
diff --git a/public/static/home/assets/images/faq-img.jpg b/public/static/home/assets/images/faq-img.jpg
new file mode 100644
index 0000000..6cc23fb
--- /dev/null
+++ b/public/static/home/assets/images/faq-img.jpg
Binary files differ
diff --git a/public/static/home/assets/images/faq2.jpg b/public/static/home/assets/images/faq2.jpg
new file mode 100644
index 0000000..a2afb6d
--- /dev/null
+++ b/public/static/home/assets/images/faq2.jpg
Binary files differ
diff --git a/public/static/home/assets/images/favicon.png b/public/static/home/assets/images/favicon.png
new file mode 100644
index 0000000..1d31dbb
--- /dev/null
+++ b/public/static/home/assets/images/favicon.png
Binary files differ
diff --git a/public/static/home/assets/images/fottor-img.jpg b/public/static/home/assets/images/fottor-img.jpg
new file mode 100644
index 0000000..3073e93
--- /dev/null
+++ b/public/static/home/assets/images/fottor-img.jpg
Binary files differ
diff --git a/public/static/home/assets/images/home2-slider.jpg b/public/static/home/assets/images/home2-slider.jpg
new file mode 100644
index 0000000..0174209
--- /dev/null
+++ b/public/static/home/assets/images/home2-slider.jpg
Binary files differ
diff --git a/public/static/home/assets/images/logo.png b/public/static/home/assets/images/logo.png
new file mode 100644
index 0000000..b76be15
--- /dev/null
+++ b/public/static/home/assets/images/logo.png
Binary files differ
diff --git a/public/static/home/assets/images/logo1.png b/public/static/home/assets/images/logo1.png
new file mode 100644
index 0000000..ab7a1e5
--- /dev/null
+++ b/public/static/home/assets/images/logo1.png
Binary files differ
diff --git a/public/static/home/assets/images/logo2.png b/public/static/home/assets/images/logo2.png
new file mode 100644
index 0000000..e9516d7
--- /dev/null
+++ b/public/static/home/assets/images/logo2.png
Binary files differ
diff --git a/public/static/home/assets/images/port-bg-img.jpg b/public/static/home/assets/images/port-bg-img.jpg
new file mode 100644
index 0000000..94c434b
--- /dev/null
+++ b/public/static/home/assets/images/port-bg-img.jpg
Binary files differ
diff --git a/public/static/home/assets/images/port1.jpg b/public/static/home/assets/images/port1.jpg
new file mode 100644
index 0000000..c69a098
--- /dev/null
+++ b/public/static/home/assets/images/port1.jpg
Binary files differ
diff --git a/public/static/home/assets/images/port2.jpg b/public/static/home/assets/images/port2.jpg
new file mode 100644
index 0000000..41116b2
--- /dev/null
+++ b/public/static/home/assets/images/port2.jpg
Binary files differ
diff --git a/public/static/home/assets/images/port3.jpg b/public/static/home/assets/images/port3.jpg
new file mode 100644
index 0000000..1b778ea
--- /dev/null
+++ b/public/static/home/assets/images/port3.jpg
Binary files differ
diff --git a/public/static/home/assets/images/port4.jpg b/public/static/home/assets/images/port4.jpg
new file mode 100644
index 0000000..fb73b09
--- /dev/null
+++ b/public/static/home/assets/images/port4.jpg
Binary files differ
diff --git a/public/static/home/assets/images/price-bg-2.jpg b/public/static/home/assets/images/price-bg-2.jpg
new file mode 100644
index 0000000..c579697
--- /dev/null
+++ b/public/static/home/assets/images/price-bg-2.jpg
Binary files differ
diff --git a/public/static/home/assets/images/price-bg-img.jpg b/public/static/home/assets/images/price-bg-img.jpg
new file mode 100644
index 0000000..8842c64
--- /dev/null
+++ b/public/static/home/assets/images/price-bg-img.jpg
Binary files differ
diff --git a/public/static/home/assets/images/price-bg.jpg b/public/static/home/assets/images/price-bg.jpg
new file mode 100644
index 0000000..ac18d46
--- /dev/null
+++ b/public/static/home/assets/images/price-bg.jpg
Binary files differ
diff --git a/public/static/home/assets/images/service-2.jpg b/public/static/home/assets/images/service-2.jpg
new file mode 100644
index 0000000..a28860e
--- /dev/null
+++ b/public/static/home/assets/images/service-2.jpg
Binary files differ
diff --git a/public/static/home/assets/images/service-3.jpg b/public/static/home/assets/images/service-3.jpg
new file mode 100644
index 0000000..d0d41b4
--- /dev/null
+++ b/public/static/home/assets/images/service-3.jpg
Binary files differ
diff --git a/public/static/home/assets/images/service-hover.png b/public/static/home/assets/images/service-hover.png
new file mode 100644
index 0000000..f1490dc
--- /dev/null
+++ b/public/static/home/assets/images/service-hover.png
Binary files differ
diff --git a/public/static/home/assets/images/service-shape-hover2.png b/public/static/home/assets/images/service-shape-hover2.png
new file mode 100644
index 0000000..f7a7d5a
--- /dev/null
+++ b/public/static/home/assets/images/service-shape-hover2.png
Binary files differ
diff --git a/public/static/home/assets/images/service-shape.png b/public/static/home/assets/images/service-shape.png
new file mode 100644
index 0000000..75a6c36
--- /dev/null
+++ b/public/static/home/assets/images/service-shape.png
Binary files differ
diff --git a/public/static/home/assets/images/service1.jpg b/public/static/home/assets/images/service1.jpg
new file mode 100644
index 0000000..72dc14a
--- /dev/null
+++ b/public/static/home/assets/images/service1.jpg
Binary files differ
diff --git a/public/static/home/assets/images/sidebar1.jpg b/public/static/home/assets/images/sidebar1.jpg
new file mode 100644
index 0000000..4be73d0
--- /dev/null
+++ b/public/static/home/assets/images/sidebar1.jpg
Binary files differ
diff --git a/public/static/home/assets/images/sidebar2.jpg b/public/static/home/assets/images/sidebar2.jpg
new file mode 100644
index 0000000..6180089
--- /dev/null
+++ b/public/static/home/assets/images/sidebar2.jpg
Binary files differ
diff --git a/public/static/home/assets/images/sidebar3.jpg b/public/static/home/assets/images/sidebar3.jpg
new file mode 100644
index 0000000..5c0f2e7
--- /dev/null
+++ b/public/static/home/assets/images/sidebar3.jpg
Binary files differ
diff --git a/public/static/home/assets/images/single-service1.jpg b/public/static/home/assets/images/single-service1.jpg
new file mode 100644
index 0000000..6a5257f
--- /dev/null
+++ b/public/static/home/assets/images/single-service1.jpg
Binary files differ
diff --git a/public/static/home/assets/images/slider1.jpg b/public/static/home/assets/images/slider1.jpg
new file mode 100644
index 0000000..418ccd5
--- /dev/null
+++ b/public/static/home/assets/images/slider1.jpg
Binary files differ
diff --git a/public/static/home/assets/images/t1.png b/public/static/home/assets/images/t1.png
new file mode 100644
index 0000000..56a136b
--- /dev/null
+++ b/public/static/home/assets/images/t1.png
Binary files differ
diff --git a/public/static/home/assets/images/t2.png b/public/static/home/assets/images/t2.png
new file mode 100644
index 0000000..0767517
--- /dev/null
+++ b/public/static/home/assets/images/t2.png
Binary files differ
diff --git a/public/static/home/assets/images/team-1.png b/public/static/home/assets/images/team-1.png
new file mode 100644
index 0000000..1685663
--- /dev/null
+++ b/public/static/home/assets/images/team-1.png
Binary files differ
diff --git a/public/static/home/assets/images/team-2.png b/public/static/home/assets/images/team-2.png
new file mode 100644
index 0000000..7c3ba40
--- /dev/null
+++ b/public/static/home/assets/images/team-2.png
Binary files differ
diff --git a/public/static/home/assets/images/team-3.png b/public/static/home/assets/images/team-3.png
new file mode 100644
index 0000000..342c95b
--- /dev/null
+++ b/public/static/home/assets/images/team-3.png
Binary files differ
diff --git a/public/static/home/assets/images/team-bg-img.jpg b/public/static/home/assets/images/team-bg-img.jpg
new file mode 100644
index 0000000..52e90ea
--- /dev/null
+++ b/public/static/home/assets/images/team-bg-img.jpg
Binary files differ
diff --git a/public/static/home/assets/images/testi-1.png b/public/static/home/assets/images/testi-1.png
new file mode 100644
index 0000000..e4c72cd
--- /dev/null
+++ b/public/static/home/assets/images/testi-1.png
Binary files differ
diff --git a/public/static/home/assets/images/testi-2.png b/public/static/home/assets/images/testi-2.png
new file mode 100644
index 0000000..3c656f5
--- /dev/null
+++ b/public/static/home/assets/images/testi-2.png
Binary files differ
diff --git a/public/static/home/assets/images/testimonial-bg-img.jpg b/public/static/home/assets/images/testimonial-bg-img.jpg
new file mode 100644
index 0000000..634ee62
--- /dev/null
+++ b/public/static/home/assets/images/testimonial-bg-img.jpg
Binary files differ
diff --git a/public/static/home/assets/images/top-bg-img.png b/public/static/home/assets/images/top-bg-img.png
new file mode 100644
index 0000000..4cb54ce
--- /dev/null
+++ b/public/static/home/assets/images/top-bg-img.png
Binary files differ
diff --git a/public/static/home/assets/js/BeerSlider.js b/public/static/home/assets/js/BeerSlider.js
new file mode 100644
index 0000000..f290582
--- /dev/null
+++ b/public/static/home/assets/js/BeerSlider.js
@@ -0,0 +1 @@
+!function(t,e){"object"==typeof exports&&"object"==typeof module?module.exports=e():"function"==typeof define&&define.amd?define([],e):"object"==typeof exports?exports.BeerSlider=e():t.BeerSlider=e()}(window,function(){return function(t){var e={};function n(r){if(e[r])return e[r].exports;var o=e[r]={i:r,l:!1,exports:{}};return t[r].call(o.exports,o,o.exports,n),o.l=!0,o.exports}return n.m=t,n.c=e,n.d=function(t,e,r){n.o(t,e)||Object.defineProperty(t,e,{enumerable:!0,get:r})},n.r=function(t){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(t,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(t,"__esModule",{value:!0})},n.t=function(t,e){if(1&e&&(t=n(t)),8&e)return t;if(4&e&&"object"==typeof t&&t&&t.__esModule)return t;var r=Object.create(null);if(n.r(r),Object.defineProperty(r,"default",{enumerable:!0,value:t}),2&e&&"string"!=typeof t)for(var o in t)n.d(r,o,function(e){return t[e]}.bind(null,o));return r},n.n=function(t){var e=t&&t.__esModule?function(){return t.default}:function(){return t};return n.d(e,"a",e),e},n.o=function(t,e){return Object.prototype.hasOwnProperty.call(t,e)},n.p="",n(n.s=47)}([function(t,e){t.exports="undefined"!=typeof window&&window.Math==Math?window:"undefined"!=typeof self&&self.Math==Math?self:Function("return this")()},function(t,e,n){var r=n(11)("wks"),o=n(33),i=n(0).Symbol,c=n(54);t.exports=function(t){return r[t]||(r[t]=c&&i[t]||(c?i:o)("Symbol."+t))}},function(t,e,n){var r=n(5);t.exports=function(t){if(!r(t))throw TypeError(String(t)+" is not an object!");return t}},function(t,e,n){var r=n(8),o=n(21);t.exports=n(6)?function(t,e,n){return r.f(t,e,o(1,n))}:function(t,e,n){return t[e]=n,t}},function(t,e){var n={}.hasOwnProperty;t.exports=function(t,e){return n.call(t,e)}},function(t,e){t.exports=function(t){return"object"==typeof t?null!==t:"function"==typeof t}},function(t,e,n){t.exports=!n(12)(function(){return 7!=Object.defineProperty({},"a",{get:function(){return 7}}).a})},function(t,e){var n={}.toString;t.exports=function(t){return n.call(t).slice(8,-1)}},function(t,e,n){var r=n(6),o=n(31),i=n(2),c=n(32),u=Object.defineProperty;e.f=r?u:function(t,e,n){if(i(t),e=c(e,!0),i(n),o)try{return u(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}},function(t,e,n){var r=n(0),o=n(3),i=n(14),c=n(19),u=n(57);t.exports=function(t,e){var n,a,s,f,l=t.target;if(n=t.global?r:t.stat?r[l]||c(l,{}):(r[l]||{}).prototype)for(a in e){if(s=n[a],f=e[a],!t.forced&&void 0!==s){if(typeof f==typeof s)continue;u(f,s)}(t.sham||s&&s.sham)&&o(f,"sham",!0),i(n,a,f,t.unsafe)}}},function(t,e){t.exports={}},function(t,e,n){var r=n(0),o=n(19),i=r["__core-js_shared__"]||o("__core-js_shared__",{});(t.exports=function(t,e){return i[t]||(i[t]=void 0!==e?e:{})})("versions",[]).push({version:"3.0.0-beta.3",mode:n(13)?"pure":"global",copyright:"© 2018 Denis Pushkarev (zloirock.ru)"})},function(t,e){t.exports=function(t){try{return!!t()}catch(t){return!0}}},function(t,e){t.exports=!1},function(t,e,n){var r=n(0),o=n(3),i=n(4),c=n(19),u=n(34),a=n(15),s=a.get,f=a.enforce,l=String(u).split("toString");n(11)("inspectSource",function(t){return u.call(t)}),(t.exports=function(t,e,n,u){"function"==typeof n&&("string"!=typeof e||i(n,"name")||o(n,"name",e),f(n).source=l.join("string"==typeof e?e:"")),t===r?c(e,n):u?t[e]?t[e]=n:o(t,e,n):(delete t[e],o(t,e,n))})(Function.prototype,"toString",function(){return"function"==typeof this&&s(this).source||u.call(this)})},function(t,e,n){var r,o,i,c=n(0),u=n(34),a=n(5),s=n(3),f=n(4),l=n(22),p=n(23),v=c.WeakMap;if("function"==typeof v&&/native code/.test(u.call(v))){var d=new v,h=d.get,y=d.has,g=d.set;r=function(t,e){return g.call(d,t,e),e},o=function(t){return h.call(d,t)||{}},i=function(t){return y.call(d,t)}}else{var m=l("state");p[m]=!0,r=function(t,e){return s(t,m,e),e},o=function(t){return f(t,m)?t[m]:{}},i=function(t){return f(t,m)}}t.exports={set:r,get:o,has:i,enforce:function(t){return i(t)?o(t):r(t,{})},getterFor:function(t){return function(e){var n;if(!a(e)||(n=o(e)).type!==t)throw TypeError("Incompatible receiver, "+t+" required!");return n}}}},function(t,e,n){var r=n(60),o=n(25);t.exports=function(t){return r(o(t))}},function(t,e){t.exports=function(t){if("function"!=typeof t)throw TypeError(String(t)+" is not a function!");return t}},function(t,e,n){"use strict";var r=n(17);t.exports.f=function(t){return new function(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)}},function(t,e,n){var r=n(0),o=n(3);t.exports=function(t,e){try{o(r,t,e)}catch(n){r[t]=e}return e}},function(t,e,n){var r=n(5),o=n(0).document,i=r(o)&&r(o.createElement);t.exports=function(t){return i?o.createElement(t):{}}},function(t,e){t.exports=function(t,e){return{enumerable:!(1&t),configurable:!(2&t),writable:!(4&t),value:e}}},function(t,e,n){var r=n(11)("keys"),o=n(33);t.exports=function(t){return r[t]||(r[t]=o(t))}},function(t,e){t.exports={}},function(t,e){var n=Math.ceil,r=Math.floor;t.exports=function(t){return isNaN(t=+t)?0:(t>0?r:n)(t)}},function(t,e){t.exports=function(t){if(void 0==t)throw TypeError("Can't call method on "+t);return t}},function(t,e){t.exports=["constructor","hasOwnProperty","isPrototypeOf","propertyIsEnumerable","toLocaleString","toString","valueOf"]},function(t,e,n){var r=n(8).f,o=n(4),i=n(1)("toStringTag");t.exports=function(t,e,n){t&&!o(t=n?t:t.prototype,i)&&r(t,i,{configurable:!0,value:e})}},function(t,e){t.exports=function(t){try{return{e:!1,v:t()}}catch(t){return{e:!0,v:t}}}},function(t,e,n){t.exports=n(0)},function(t,e,n){var r=n(7),o=n(1)("toStringTag"),i="Arguments"==r(function(){return arguments}());t.exports=function(t){var e,n,c;return void 0===t?"Undefined":null===t?"Null":"string"==typeof(n=function(t,e){try{return t[e]}catch(t){}}(e=Object(t),o))?n:i?r(e):"Object"==(c=r(e))&&"function"==typeof e.callee?"Arguments":c}},function(t,e,n){t.exports=!n(6)&&!n(12)(function(){return 7!=Object.defineProperty(n(20)("div"),"a",{get:function(){return 7}}).a})},function(t,e,n){var r=n(5);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")}},function(t,e){var n=0,r=Math.random();t.exports=function(t){return"Symbol(".concat(void 0===t?"":t,")_",(++n+r).toString(36))}},function(t,e,n){t.exports=n(11)("native-function-to-string",Function.toString)},function(t,e,n){"use strict";var r=n(9),o=n(66),i=n(39),c=n(71),u=n(27),a=n(3),s=n(14),f=n(13),l=n(1)("iterator"),p=n(10),v=n(38),d=v.IteratorPrototype,h=v.BUGGY_SAFARI_ITERATORS,y=function(){return this};t.exports=function(t,e,n,v,g,m,x){o(n,e,v);var b,j,S,w=function(t){if(t===g&&_)return _;if(!h&&t in E)return E[t];switch(t){case"keys":case"values":case"entries":return function(){return new n(this,t)}}return function(){return new n(this)}},O=e+" Iterator",P=!1,E=t.prototype,T=E[l]||E["@@iterator"]||g&&E[g],_=!h&&T||w(g),L="Array"==e&&E.entries||T;if(L&&(b=i(L.call(new t)),d!==Object.prototype&&b.next&&(f||i(b)===d||(c?c(b,d):"function"!=typeof b[l]&&a(b,l,y)),u(b,O,!0,!0),f&&(p[O]=y))),"values"==g&&T&&"values"!==T.name&&(P=!0,_=function(){return T.call(this)}),f&&!x||E[l]===_||a(E,l,_),p[e]=_,g)if(j={values:w("values"),keys:m?_:w("keys"),entries:w("entries")},x)for(S in j)!h&&!P&&S in E||s(E,S,j[S]);else r({target:e,proto:!0,forced:h||P},j);return j}},function(t,e,n){var r=n(4),o=n(16),i=n(61)(!1),c=n(23);t.exports=function(t,e){var n,u=o(t),a=0,s=[];for(n in u)!r(c,n)&&r(u,n)&&s.push(n);for(;e.length>a;)r(u,n=e[a++])&&(~i(s,n)||s.push(n));return s}},function(t,e,n){var r=n(24),o=Math.min;t.exports=function(t){return t>0?o(r(t),9007199254740991):0}},function(t,e,n){"use strict";var r,o,i,c=n(39),u=n(3),a=n(4),s=n(13),f=n(1)("iterator"),l=!1;[].keys&&("next"in(i=[].keys())?(o=c(c(i)))!==Object.prototype&&(r=o):l=!0),void 0==r&&(r={}),s||a(r,f)||u(r,f,function(){return this}),t.exports={IteratorPrototype:r,BUGGY_SAFARI_ITERATORS:l}},function(t,e,n){var r=n(4),o=n(67),i=n(22)("IE_PROTO"),c=n(68),u=Object.prototype;t.exports=c?Object.getPrototypeOf:function(t){return t=o(t),r(t,i)?t[i]:"function"==typeof t.constructor&&t instanceof t.constructor?t.constructor.prototype:t instanceof Object?u:null}},function(t,e,n){var r=n(2),o=n(69),i=n(26),c=n(41),u=n(20),a=n(22)("IE_PROTO"),s=function(){},f=function(){var t,e=u("iframe"),n=i.length;for(e.style.display="none",c.appendChild(e),e.src="javascript:",(t=e.contentWindow.document).open(),t.write("<script>document.F=Object<\/script>"),t.close(),f=t.F;n--;)delete f.prototype[i[n]];return f()};t.exports=Object.create||function(t,e){var n;return null!==t?(s.prototype=r(t),n=new s,s.prototype=null,n[a]=t):n=f(),void 0===e?n:o(n,e)},n(23)[a]=!0},function(t,e,n){var r=n(0).document;t.exports=r&&r.documentElement},function(t,e,n){var r=n(2),o=n(79),i=n(37),c=n(43),u=n(80),a=n(81),s={};(t.exports=function(t,e,n,f,l){var p,v,d,h,y,g=c(e,n,f?2:1);if(l)p=t;else{if("function"!=typeof(v=u(t)))throw TypeError("Target is not iterable!");if(o(v)){for(d=0,h=i(t.length);h>d;d++)if((f?g(r(y=t[d])[0],y[1]):g(t[d]))===s)return;return}p=v.call(t)}for(;!(y=p.next()).done;)if(a(p,g,y.value,f)===s)return}).BREAK=s},function(t,e,n){var r=n(17);t.exports=function(t,e,n){if(r(t),void 0===e)return t;switch(n){case 0:return function(){return t.call(e)};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)}}},function(t,e,n){var r=n(2),o=n(17),i=n(1)("species");t.exports=function(t,e){var n,c=r(t).constructor;return void 0===c||void 0==(n=r(c)[i])?e:o(n)}},function(t,e,n){var r,o,i,c=n(0),u=n(7),a=n(43),s=n(41),f=n(20),l=c.setImmediate,p=c.clearImmediate,v=c.process,d=c.MessageChannel,h=c.Dispatch,y=0,g={},m=function(){var t=+this;if(g.hasOwnProperty(t)){var e=g[t];delete g[t],e()}},x=function(t){m.call(t.data)};l&&p||(l=function(t){for(var e=[],n=1;arguments.length>n;)e.push(arguments[n++]);return g[++y]=function(){("function"==typeof t?t:Function(t)).apply(void 0,e)},r(y),y},p=function(t){delete g[t]},"process"==u(v)?r=function(t){v.nextTick(a(m,t,1))}:h&&h.now?r=function(t){h.now(a(m,t,1))}:d?(i=(o=new d).port2,o.port1.onmessage=x,r=a(i.postMessage,i,1)):c.addEventListener&&"function"==typeof postMessage&&!c.importScripts?(r=function(t){c.postMessage(t+"","*")},c.addEventListener("message",x,!1)):r="onreadystatechange"in f("script")?function(t){s.appendChild(f("script")).onreadystatechange=function(){s.removeChild(this),m.call(t)}}:function(t){setTimeout(a(m,t,1),0)}),t.exports={set:l,clear:p}},function(t,e,n){var r=n(2),o=n(5),i=n(18);t.exports=function(t,e){if(r(t),o(e)&&e.constructor===t)return e;var n=i.f(t);return(0,n.resolve)(e),n.promise}},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),n(48);!function(t){t&&t.__esModule}(n(50));var r=n(91);e.default=r.BeerSlider},function(t,e,n){},,function(t,e,n){t.exports=n(51),n(89),n(90)},function(t,e,n){n(52),n(55),n(73),n(77),n(88),t.exports=n(29).Promise},function(t,e,n){var r=n(53);r!=={}.toString&&n(14)(Object.prototype,"toString",r,!0)},function(t,e,n){"use strict";var r=n(30),o={};o[n(1)("toStringTag")]="z",t.exports="[object z]"!==String(o)?function(){return"[object "+r(this)+"]"}:o.toString},function(t,e,n){t.exports=!n(12)(function(){String(Symbol())})},function(t,e,n){"use strict";var r=n(56)(!0),o=n(15),i=n(35),c=o.set,u=o.getterFor("String Iterator");i(String,"String",function(t){c(this,{type:"String Iterator",string:String(t),index:0})},function(){var t,e=u(this),n=e.string,o=e.index;return o>=n.length?{value:void 0,done:!0}:(t=r(n,o),e.index+=t.length,{value:t,done:!1})})},function(t,e,n){var r=n(24),o=n(25);t.exports=function(t){return function(e,n){var i,c,u=String(o(e)),a=r(n),s=u.length;return a<0||a>=s?t?"":void 0:(i=u.charCodeAt(a))<55296||i>56319||a+1===s||(c=u.charCodeAt(a+1))<56320||c>57343?t?u.charAt(a):i:t?u.slice(a,a+2):c-56320+(i-55296<<10)+65536}}},function(t,e,n){var r=n(4),o=n(58),i=n(64),c=n(8);t.exports=function(t,e){for(var n=o(e),u=c.f,a=i.f,s=0;s<n.length;s++){var f=n[s];r(t,f)||u(t,f,a(e,f))}}},function(t,e,n){var r=n(59),o=n(63),i=n(2),c=n(0).Reflect;t.exports=c&&c.ownKeys||function(t){var e=r.f(i(t)),n=o.f;return n?e.concat(n(t)):e}},function(t,e,n){var r=n(36),o=n(26).concat("length","prototype");e.f=Object.getOwnPropertyNames||function(t){return r(t,o)}},function(t,e,n){var r=n(7),o="".split;t.exports=Object("z").propertyIsEnumerable(0)?Object:function(t){return"String"==r(t)?o.call(t,""):Object(t)}},function(t,e,n){var r=n(16),o=n(37),i=n(62);t.exports=function(t){return function(e,n,c){var u,a=r(e),s=o(a.length),f=i(c,s);if(t&&n!=n){for(;s>f;)if((u=a[f++])!=u)return!0}else for(;s>f;f++)if((t||f in a)&&a[f]===n)return t||f||0;return!t&&-1}}},function(t,e,n){var r=n(24),o=Math.max,i=Math.min;t.exports=function(t,e){var n=r(t);return n<0?o(n+e,0):i(n,e)}},function(t,e){e.f=Object.getOwnPropertySymbols},function(t,e,n){var r=n(6),o=n(65),i=n(21),c=n(16),u=n(32),a=n(4),s=n(31),f=Object.getOwnPropertyDescriptor;e.f=r?f:function(t,e){if(t=c(t),e=u(e,!0),s)try{return f(t,e)}catch(t){}if(a(t,e))return i(!o.f.call(t,e),t[e])}},function(t,e,n){"use strict";var r={}.propertyIsEnumerable,o=Object.getOwnPropertyDescriptor,i=o&&!r.call({1:2},1);e.f=i?function(t){var e=o(this,t);return!!e&&e.enumerable}:r},function(t,e,n){"use strict";var r=n(38).IteratorPrototype,o=n(40),i=n(21),c=n(27),u=n(10),a=function(){return this};t.exports=function(t,e,n){var s=e+" Iterator";return t.prototype=o(r,{next:i(1,n)}),c(t,s,!1,!0),u[s]=a,t}},function(t,e,n){var r=n(25);t.exports=function(t){return Object(r(t))}},function(t,e,n){t.exports=!n(12)(function(){function t(){}return t.prototype.constructor=null,Object.getPrototypeOf(new t)!==t.prototype})},function(t,e,n){var r=n(6),o=n(8),i=n(2),c=n(70);t.exports=r?Object.defineProperties:function(t,e){i(t);for(var n,r=c(e),u=r.length,a=0;u>a;)o.f(t,n=r[a++],e[n]);return t}},function(t,e,n){var r=n(36),o=n(26);t.exports=Object.keys||function(t){return r(t,o)}},function(t,e,n){var r=n(72);t.exports=Object.setPrototypeOf||("__proto__"in{}?function(){var t,e={},n=!0;try{(t=Object.getOwnPropertyDescriptor(Object.prototype,"__proto__").set).call(e,[]),n=e instanceof Array}catch(t){n=!1}return function(e,o){return r(e,o),n?t.call(e,o):e.__proto__=o,e}}():void 0)},function(t,e,n){var r=n(5),o=n(2);t.exports=function(t,e){if(o(t),!r(e)&&null!==e)throw TypeError(String(e)+": can't set as a prototype!")}},function(t,e,n){var r=n(74),o=n(75),i=n(0),c=n(3),u=n(1),a=u("iterator"),s=u("toStringTag"),f=o.values;for(var l in r){var p=i[l],v=p&&p.prototype;if(v){if(v[a]!==f)try{c(v,a,f)}catch(t){v[a]=f}if(v[s]||c(v,s,l),r[l])for(var d in o)if(v[d]!==o[d])try{c(v,d,o[d])}catch(t){v[d]=o[d]}}}},function(t,e){t.exports={CSSRuleList:0,CSSStyleDeclaration:0,CSSValueList:0,ClientRectList:0,DOMRectList:0,DOMStringList:0,DOMTokenList:1,DataTransferItemList:0,FileList:0,HTMLAllCollection:0,HTMLCollection:0,HTMLFormElement:0,HTMLSelectElement:0,MediaList:0,MimeTypeArray:0,NamedNodeMap:0,NodeList:1,PaintRequestList:0,Plugin:0,PluginArray:0,SVGLengthList:0,SVGNumberList:0,SVGPathSegList:0,SVGPointList:0,SVGStringList:0,SVGTransformList:0,SourceBufferList:0,StyleSheetList:0,TextTrackCueList:0,TextTrackList:0,TouchList:0}},function(t,e,n){"use strict";var r=n(16),o=n(76),i=n(10),c=n(15),u=n(35),a=c.set,s=c.getterFor("Array Iterator");t.exports=u(Array,"Array",function(t,e){a(this,{type:"Array Iterator",target:r(t),index:0,kind:e})},function(){var t=s(this),e=t.target,n=t.kind,r=t.index++;return!e||r>=e.length?(t.target=void 0,{value:void 0,done:!0}):"keys"==n?{value:r,done:!1}:"values"==n?{value:e[r],done:!1}:{value:[r,e[r]],done:!1}},"values"),i.Arguments=i.Array,o("keys"),o("values"),o("entries")},function(t,e,n){var r=n(1)("unscopables"),o=n(40),i=n(3),c=Array.prototype;void 0==c[r]&&i(c,r,o(null)),t.exports=function(t){c[r][t]=!0}},function(t,e,n){"use strict";var r,o,i,c="Promise",u=n(13),a=n(0),s=n(9),f=n(5),l=n(17),p=n(78),v=n(7),d=n(42),h=n(82),y=n(44),g=n(45).set,m=n(83)(),x=n(46),b=n(84),j=n(18),S=n(28),w=n(85),O=n(1)("species"),P=n(15),E=P.get,T=P.set,_=P.getterFor(c),L=a.Promise,M=a.TypeError,I=a.document,A=a.process,k=A&&A.versions,C=k&&k.v8||"",R=j.f,F=R,B="process"==v(A),D=!!(I&&I.createEvent&&a.dispatchEvent),G=!!function(){try{var t=L.resolve(1),e=function(){},n=(t.constructor={})[O]=function(t){t(e,e)};return(B||"function"==typeof PromiseRejectionEvent)&&(!u||t.finally)&&t.then(e)instanceof n&&0!==C.indexOf("6.6")&&-1===w.indexOf("Chrome/66")}catch(t){}}(),N=function(t){var e;return!(!f(t)||"function"!=typeof(e=t.then))&&e},V=function(t,e,n){if(!e.notified){e.notified=!0;var r=e.reactions;m(function(){for(var o=e.value,i=1==e.state,c=0,u=function(n){var r,c,u,a=i?n.ok:n.fail,s=n.resolve,f=n.reject,l=n.domain;try{a?(i||(2===e.rejection&&U(t,e),e.rejection=1),!0===a?r=o:(l&&l.enter(),r=a(o),l&&(l.exit(),u=!0)),r===n.promise?f(M("Promise-chain cycle")):(c=N(r))?c.call(r,s,f):s(r)):f(o)}catch(t){l&&!u&&l.exit(),f(t)}};r.length>c;)u(r[c++]);e.reactions=[],e.notified=!1,n&&!e.rejection&&z(t,e)})}},W=function(t,e,n){var r,o;D?((r=I.createEvent("Event")).promise=e,r.reason=n,r.initEvent(t,!1,!0),a.dispatchEvent(r)):r={promise:e,reason:n},(o=a["on"+t])?o(r):"unhandledrejection"===t&&b("Unhandled promise rejection",n)},z=function(t,e){g.call(a,function(){var n,r=e.value,o=H(e);if(o&&(n=S(function(){B?A.emit("unhandledRejection",r,t):W("unhandledrejection",t,r)}),e.rejection=B||H(e)?2:1),o&&n.e)throw n.v})},H=function(t){return 1!==t.rejection&&!t.parent},U=function(t,e){g.call(a,function(){B?A.emit("rejectionHandled",t):W("rejectionhandled",t,e.value)})},K=function(t,e,n,r){return function(o){t(e,n,o,r)}},q=function(t,e,n,r){e.done||(e.done=!0,r&&(e=r),e.value=n,e.state=2,V(t,e,!0))},Y=function(t,e,n,r){if(!e.done){e.done=!0,r&&(e=r);try{if(t===n)throw M("Promise can't be resolved itself!");var o=N(n);o?m(function(){var r={done:!1};try{o.call(n,K(Y,t,r,e),K(q,t,r,e))}catch(n){q(t,r,n,e)}}):(e.value=n,e.state=1,V(t,e,!1))}catch(n){q(t,{done:!1},n,e)}}};G||(L=function(t){p(this,L,c),l(t),r.call(this);var e=E(this);try{t(K(Y,this,e),K(q,this,e))}catch(t){q(this,e,t)}},(r=function(t){T(this,{type:c,done:!1,notified:!1,parent:!1,reactions:[],rejection:!1,state:0,value:void 0})}).prototype=n(86)(L.prototype,{then:function(t,e){var n=_(this),r=R(y(this,L));return r.ok="function"!=typeof t||t,r.fail="function"==typeof e&&e,r.domain=B?A.domain:void 0,n.parent=!0,n.reactions.push(r),0!=n.state&&V(this,n,!1),r.promise},catch:function(t){return this.then(void 0,t)}}),o=function(){var t=new r,e=E(t);this.promise=t,this.resolve=K(Y,t,e),this.reject=K(q,t,e)},j.f=R=function(t){return t===L||t===i?new o(t):F(t)}),s({global:!0,wrap:!0,forced:!G},{Promise:L}),n(27)(L,c,!1,!0),n(87)(c),i=n(29).Promise,s({target:c,stat:!0,forced:!G},{reject:function(t){var e=R(this);return e.reject.call(void 0,t),e.promise}}),s({target:c,stat:!0,forced:u||!G},{resolve:function(t){return x(u&&this===i?L:this,t)}}),s({target:c,stat:!0,forced:!(G&&h(function(t){L.all(t).catch(function(){})}))},{all:function(t){var e=this,n=R(e),r=n.resolve,o=n.reject,i=S(function(){var n=[],i=0,c=1;d(t,function(t){var u=i++,a=!1;n.push(void 0),c++,e.resolve(t).then(function(t){a||(a=!0,n[u]=t,--c||r(n))},o)}),--c||r(n)});return i.e&&o(i.v),n.promise},race:function(t){var e=this,n=R(e),r=n.reject,o=S(function(){d(t,function(t){e.resolve(t).then(n.resolve,r)})});return o.e&&r(o.v),n.promise}})},function(t,e){t.exports=function(t,e,n){if(!(t instanceof e))throw TypeError((n?n+": i":"I")+"ncorrect invocation!");return t}},function(t,e,n){var r=n(10),o=n(1)("iterator"),i=Array.prototype;t.exports=function(t){return void 0!==t&&(r.Array===t||i[o]===t)}},function(t,e,n){var r=n(30),o=n(1)("iterator"),i=n(10);t.exports=function(t){if(void 0!=t)return t[o]||t["@@iterator"]||i[r(t)]}},function(t,e,n){var r=n(2);t.exports=function(t,e,n,o){try{return o?e(r(n)[0],n[1]):e(n)}catch(e){var i=t.return;throw void 0!==i&&r(i.call(t)),e}}},function(t,e,n){var r=n(1)("iterator"),o=!1;try{var i=0,c={next:function(){return{done:!!i++}},return:function(){o=!0}};c[r]=function(){return this},Array.from(c,function(){throw 2})}catch(t){}t.exports=function(t,e){if(!e&&!o)return!1;var n=!1;try{var i={};i[r]=function(){return{next:function(){return{done:n=!0}}}},t(i)}catch(t){}return n}},function(t,e,n){var r=n(0),o=n(7),i=n(45).set,c=r.MutationObserver||r.WebKitMutationObserver,u=r.process,a=r.Promise,s="process"==o(u);t.exports=function(){var t,e,n,o=function(){var r,o;for(s&&(r=u.domain)&&r.exit();t;){o=t.fn,t=t.next;try{o()}catch(r){throw t?n():e=void 0,r}}e=void 0,r&&r.enter()};if(s)n=function(){u.nextTick(o)};else if(!c||r.navigator&&r.navigator.standalone)if(a&&a.resolve){var f=a.resolve(void 0);n=function(){f.then(o)}}else n=function(){i.call(r,o)};else{var l=!0,p=document.createTextNode("");new c(o).observe(p,{characterData:!0}),n=function(){p.data=l=!l}}return function(r){var o={fn:r,next:void 0};e&&(e.next=o),t||(t=o,n()),e=o}}},function(t,e,n){var r=n(0);t.exports=function(t,e){var n=r.console;n&&n.error&&(1===arguments.length?n.error(t):n.error(t,e))}},function(t,e,n){var r=n(0).navigator;t.exports=r&&r.userAgent||""},function(t,e,n){var r=n(14);t.exports=function(t,e,n){for(var o in e)r(t,o,e[o],n);return t}},function(t,e,n){"use strict";var r=n(0),o=n(8),i=n(6),c=n(1)("species");t.exports=function(t){var e=r[t];i&&e&&!e[c]&&o.f(e,c,{configurable:!0,get:function(){return this}})}},function(t,e,n){"use strict";var r=n(29),o=n(0),i=n(44),c=n(46);n(9)({target:"Promise",proto:!0,real:!0},{finally:function(t){var e=i(this,"function"==typeof r.Promise?r.Promise:o.Promise),n="function"==typeof t;return this.then(n?function(n){return c(e,t()).then(function(){return n})}:t,n?function(n){return c(e,t()).then(function(){throw n})}:t)}})},function(t,e,n){"use strict";var r=n(18),o=n(28),i=n(42);n(9)({target:"Promise",stat:!0},{allSettled:function(t){var e=this,n=r.f(e),c=n.resolve,u=n.reject,a=o(function(){var n=[],r=0,o=1;i(t,function(t){var i=r++,u=!1;n.push(void 0),o++,e.resolve(t).then(function(t){u||(u=!0,n[i]={value:t,status:"fulfilled"},--o||c(n))},function(t){u||(u=!0,n[i]={reason:t,status:"rejected"},--o||c(n))})}),--o||c(n)});return a.e&&u(a.v),n.promise}})},function(t,e,n){"use strict";var r=n(18),o=n(28);n(9)({target:"Promise",stat:!0},{try:function(t){var e=r.f(this),n=o(t);return(n.e?e.reject:e.resolve)(n.v),e.promise}})},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var r=function(){function t(t,e){for(var n=0;n<e.length;n++){var r=e[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(t,r.key,r)}}return function(e,n,r){return n&&t(e.prototype,n),r&&t(e,r),e}}();e.BeerSlider=function(){function t(e){var n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},r=n.start,o=void 0===r?"50":r,i=n.prefix,c=void 0===i?"beer":i;!function(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}(this,t),this.start=parseInt(o)?Math.min(100,Math.max(0,parseInt(o))):50,this.prefix=c,e&&2===e.children.length&&(this.element=e,this.revealContainer=this.element.children[1],this.revealContainer.children.length<1||(this.revealElement=this.revealContainer.children[0],this.range=this.addElement("input",{type:"range",class:this.prefix+"-range","aria-label":"Percent of revealed content","aria-valuemin":"0","aria-valuemax":"100","aria-valuenow":this.start,value:this.start,min:"0",max:"100"}),this.handle=this.addElement("span",{class:this.prefix+"-handle"}),this.onImagesLoad()))}return r(t,[{key:"init",value:function(){this.element.classList.add(this.prefix+"-ready"),this.setImgWidth(),this.move(),this.addListeners()}},{key:"loadingImg",value:function(t){return new Promise(function(e,n){t||e();var r=new Image;r.onload=function(){return e()},r.onerror=function(){return n()},r.src=t})}},{key:"loadedBoth",value:function(){var t=this.element.children[0].src||this.element.children[0].getAttribute("data-"+this.prefix+"-src"),e=this.revealElement.src||this.revealElement.getAttribute("data-"+this.prefix+"-src");return Promise.all([this.loadingImg(t),this.loadingImg(e)])}},{key:"onImagesLoad",value:function(){var t=this;this.revealElement&&this.loadedBoth().then(function(){t.init()},function(){console.error("Some errors occurred and images are not loaded.")})}},{key:"addElement",value:function(t,e){var n=document.createElement(t);return Object.keys(e).forEach(function(t){n.setAttribute(t,e[t])}),this.element.appendChild(n),n}},{key:"setImgWidth",value:function(){this.revealElement.style.width=getComputedStyle(this.element).width}},{key:"addListeners",value:function(){var t=this;["input","change"].forEach(function(e){t.range.addEventListener(e,function(){t.move()})}),window.addEventListener("resize",function(){t.setImgWidth()})}},{key:"move",value:function(){this.revealContainer.style.width=this.range.value+"%",this.handle.style.left=this.range.value+"%",this.range.setAttribute("aria-valuenow",this.range.value)}}]),t}()}]).default});
\ No newline at end of file
diff --git a/public/static/home/assets/js/ajax-mail.js b/public/static/home/assets/js/ajax-mail.js
new file mode 100644
index 0000000..fe7737e
--- /dev/null
+++ b/public/static/home/assets/js/ajax-mail.js
@@ -0,0 +1,48 @@
+$(function() {
+
+ // Get the form.
+ var form = $('#contact-form');
+
+ // Get the messages div.
+ var formMessages = $('.form-messege');
+
+ // Set up an event listener for the contact form.
+ $(form).submit(function(e) {
+ // Stop the browser from submitting the form.
+ e.preventDefault();
+
+ // Serialize the form data.
+ var formData = $(form).serialize();
+
+ // Submit the form using AJAX.
+ $.ajax({
+ type: 'POST',
+ url: $(form).attr('action'),
+ data: formData
+ })
+ .done(function(response) {
+ // Make sure that the formMessages div has the 'success' class.
+ $(formMessages).removeClass('error');
+ $(formMessages).addClass('success');
+
+ // Set the message text.
+ $(formMessages).text(response);
+
+ // Clear the form.
+ $('#contact-form input,#contact-form textarea').val('');
+ })
+ .fail(function(data) {
+ // Make sure that the formMessages div has the 'error' class.
+ $(formMessages).removeClass('success');
+ $(formMessages).addClass('error');
+
+ // Set the message text.
+ if (data.responseText !== '') {
+ $(formMessages).text(data.responseText);
+ } else {
+ $(formMessages).text('Oops! An error occured and your message could not be sent.');
+ }
+ });
+ });
+
+});
diff --git a/public/static/home/assets/js/bootstrap.min.js b/public/static/home/assets/js/bootstrap.min.js
new file mode 100644
index 0000000..c4c0d1f
--- /dev/null
+++ b/public/static/home/assets/js/bootstrap.min.js
@@ -0,0 +1,7 @@
+/*!
+ * Bootstrap v4.3.1 (https://getbootstrap.com/)
+ * Copyright 2011-2019 The Bootstrap Authors (https://github.com/twbs/bootstrap/graphs/contributors)
+ * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)
+ */
+!function(t,e){"object"==typeof exports&&"undefined"!=typeof module?e(exports,require("jquery"),require("popper.js")):"function"==typeof define&&define.amd?define(["exports","jquery","popper.js"],e):e((t=t||self).bootstrap={},t.jQuery,t.Popper)}(this,function(t,g,u){"use strict";function i(t,e){for(var n=0;n<e.length;n++){var i=e[n];i.enumerable=i.enumerable||!1,i.configurable=!0,"value"in i&&(i.writable=!0),Object.defineProperty(t,i.key,i)}}function s(t,e,n){return e&&i(t.prototype,e),n&&i(t,n),t}function l(o){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{},e=Object.keys(r);"function"==typeof Object.getOwnPropertySymbols&&(e=e.concat(Object.getOwnPropertySymbols(r).filter(function(t){return Object.getOwnPropertyDescriptor(r,t).enumerable}))),e.forEach(function(t){var e,n,i;e=o,i=r[n=t],n in e?Object.defineProperty(e,n,{value:i,enumerable:!0,configurable:!0,writable:!0}):e[n]=i})}return o}g=g&&g.hasOwnProperty("default")?g.default:g,u=u&&u.hasOwnProperty("default")?u.default:u;var e="transitionend";function n(t){var e=this,n=!1;return g(this).one(_.TRANSITION_END,function(){n=!0}),setTimeout(function(){n||_.triggerTransitionEnd(e)},t),this}var _={TRANSITION_END:"bsTransitionEnd",getUID:function(t){for(;t+=~~(1e6*Math.random()),document.getElementById(t););return t},getSelectorFromElement:function(t){var e=t.getAttribute("data-target");if(!e||"#"===e){var n=t.getAttribute("href");e=n&&"#"!==n?n.trim():""}try{return document.querySelector(e)?e:null}catch(t){return null}},getTransitionDurationFromElement:function(t){if(!t)return 0;var e=g(t).css("transition-duration"),n=g(t).css("transition-delay"),i=parseFloat(e),o=parseFloat(n);return i||o?(e=e.split(",")[0],n=n.split(",")[0],1e3*(parseFloat(e)+parseFloat(n))):0},reflow:function(t){return t.offsetHeight},triggerTransitionEnd:function(t){g(t).trigger(e)},supportsTransitionEnd:function(){return Boolean(e)},isElement:function(t){return(t[0]||t).nodeType},typeCheckConfig:function(t,e,n){for(var i in n)if(Object.prototype.hasOwnProperty.call(n,i)){var o=n[i],r=e[i],s=r&&_.isElement(r)?"element":(a=r,{}.toString.call(a).match(/\s([a-z]+)/i)[1].toLowerCase());if(!new RegExp(o).test(s))throw new Error(t.toUpperCase()+': Option "'+i+'" provided type "'+s+'" but expected type "'+o+'".')}var a},findShadowRoot:function(t){if(!document.documentElement.attachShadow)return null;if("function"!=typeof t.getRootNode)return t instanceof ShadowRoot?t:t.parentNode?_.findShadowRoot(t.parentNode):null;var e=t.getRootNode();return e instanceof ShadowRoot?e:null}};g.fn.emulateTransitionEnd=n,g.event.special[_.TRANSITION_END]={bindType:e,delegateType:e,handle:function(t){if(g(t.target).is(this))return t.handleObj.handler.apply(this,arguments)}};var o="alert",r="bs.alert",a="."+r,c=g.fn[o],h={CLOSE:"close"+a,CLOSED:"closed"+a,CLICK_DATA_API:"click"+a+".data-api"},f="alert",d="fade",m="show",p=function(){function i(t){this._element=t}var t=i.prototype;return t.close=function(t){var e=this._element;t&&(e=this._getRootElement(t)),this._triggerCloseEvent(e).isDefaultPrevented()||this._removeElement(e)},t.dispose=function(){g.removeData(this._element,r),this._element=null},t._getRootElement=function(t){var e=_.getSelectorFromElement(t),n=!1;return e&&(n=document.querySelector(e)),n||(n=g(t).closest("."+f)[0]),n},t._triggerCloseEvent=function(t){var e=g.Event(h.CLOSE);return g(t).trigger(e),e},t._removeElement=function(e){var n=this;if(g(e).removeClass(m),g(e).hasClass(d)){var t=_.getTransitionDurationFromElement(e);g(e).one(_.TRANSITION_END,function(t){return n._destroyElement(e,t)}).emulateTransitionEnd(t)}else this._destroyElement(e)},t._destroyElement=function(t){g(t).detach().trigger(h.CLOSED).remove()},i._jQueryInterface=function(n){return this.each(function(){var t=g(this),e=t.data(r);e||(e=new i(this),t.data(r,e)),"close"===n&&e[n](this)})},i._handleDismiss=function(e){return function(t){t&&t.preventDefault(),e.close(this)}},s(i,null,[{key:"VERSION",get:function(){return"4.3.1"}}]),i}();g(document).on(h.CLICK_DATA_API,'[data-dismiss="alert"]',p._handleDismiss(new p)),g.fn[o]=p._jQueryInterface,g.fn[o].Constructor=p,g.fn[o].noConflict=function(){return g.fn[o]=c,p._jQueryInterface};var v="button",y="bs.button",E="."+y,C=".data-api",T=g.fn[v],S="active",b="btn",I="focus",D='[data-toggle^="button"]',w='[data-toggle="buttons"]',A='input:not([type="hidden"])',N=".active",O=".btn",k={CLICK_DATA_API:"click"+E+C,FOCUS_BLUR_DATA_API:"focus"+E+C+" blur"+E+C},P=function(){function n(t){this._element=t}var t=n.prototype;return t.toggle=function(){var t=!0,e=!0,n=g(this._element).closest(w)[0];if(n){var i=this._element.querySelector(A);if(i){if("radio"===i.type)if(i.checked&&this._element.classList.contains(S))t=!1;else{var o=n.querySelector(N);o&&g(o).removeClass(S)}if(t){if(i.hasAttribute("disabled")||n.hasAttribute("disabled")||i.classList.contains("disabled")||n.classList.contains("disabled"))return;i.checked=!this._element.classList.contains(S),g(i).trigger("change")}i.focus(),e=!1}}e&&this._element.setAttribute("aria-pressed",!this._element.classList.contains(S)),t&&g(this._element).toggleClass(S)},t.dispose=function(){g.removeData(this._element,y),this._element=null},n._jQueryInterface=function(e){return this.each(function(){var t=g(this).data(y);t||(t=new n(this),g(this).data(y,t)),"toggle"===e&&t[e]()})},s(n,null,[{key:"VERSION",get:function(){return"4.3.1"}}]),n}();g(document).on(k.CLICK_DATA_API,D,function(t){t.preventDefault();var e=t.target;g(e).hasClass(b)||(e=g(e).closest(O)),P._jQueryInterface.call(g(e),"toggle")}).on(k.FOCUS_BLUR_DATA_API,D,function(t){var e=g(t.target).closest(O)[0];g(e).toggleClass(I,/^focus(in)?$/.test(t.type))}),g.fn[v]=P._jQueryInterface,g.fn[v].Constructor=P,g.fn[v].noConflict=function(){return g.fn[v]=T,P._jQueryInterface};var L="carousel",j="bs.carousel",H="."+j,R=".data-api",x=g.fn[L],F={interval:5e3,keyboard:!0,slide:!1,pause:"hover",wrap:!0,touch:!0},U={interval:"(number|boolean)",keyboard:"boolean",slide:"(boolean|string)",pause:"(string|boolean)",wrap:"boolean",touch:"boolean"},W="next",q="prev",M="left",K="right",Q={SLIDE:"slide"+H,SLID:"slid"+H,KEYDOWN:"keydown"+H,MOUSEENTER:"mouseenter"+H,MOUSELEAVE:"mouseleave"+H,TOUCHSTART:"touchstart"+H,TOUCHMOVE:"touchmove"+H,TOUCHEND:"touchend"+H,POINTERDOWN:"pointerdown"+H,POINTERUP:"pointerup"+H,DRAG_START:"dragstart"+H,LOAD_DATA_API:"load"+H+R,CLICK_DATA_API:"click"+H+R},B="carousel",V="active",Y="slide",z="carousel-item-right",X="carousel-item-left",$="carousel-item-next",G="carousel-item-prev",J="pointer-event",Z=".active",tt=".active.carousel-item",et=".carousel-item",nt=".carousel-item img",it=".carousel-item-next, .carousel-item-prev",ot=".carousel-indicators",rt="[data-slide], [data-slide-to]",st='[data-ride="carousel"]',at={TOUCH:"touch",PEN:"pen"},lt=function(){function r(t,e){this._items=null,this._interval=null,this._activeElement=null,this._isPaused=!1,this._isSliding=!1,this.touchTimeout=null,this.touchStartX=0,this.touchDeltaX=0,this._config=this._getConfig(e),this._element=t,this._indicatorsElement=this._element.querySelector(ot),this._touchSupported="ontouchstart"in document.documentElement||0<navigator.maxTouchPoints,this._pointerEvent=Boolean(window.PointerEvent||window.MSPointerEvent),this._addEventListeners()}var t=r.prototype;return t.next=function(){this._isSliding||this._slide(W)},t.nextWhenVisible=function(){!document.hidden&&g(this._element).is(":visible")&&"hidden"!==g(this._element).css("visibility")&&this.next()},t.prev=function(){this._isSliding||this._slide(q)},t.pause=function(t){t||(this._isPaused=!0),this._element.querySelector(it)&&(_.triggerTransitionEnd(this._element),this.cycle(!0)),clearInterval(this._interval),this._interval=null},t.cycle=function(t){t||(this._isPaused=!1),this._interval&&(clearInterval(this._interval),this._interval=null),this._config.interval&&!this._isPaused&&(this._interval=setInterval((document.visibilityState?this.nextWhenVisible:this.next).bind(this),this._config.interval))},t.to=function(t){var e=this;this._activeElement=this._element.querySelector(tt);var n=this._getItemIndex(this._activeElement);if(!(t>this._items.length-1||t<0))if(this._isSliding)g(this._element).one(Q.SLID,function(){return e.to(t)});else{if(n===t)return this.pause(),void this.cycle();var i=n<t?W:q;this._slide(i,this._items[t])}},t.dispose=function(){g(this._element).off(H),g.removeData(this._element,j),this._items=null,this._config=null,this._element=null,this._interval=null,this._isPaused=null,this._isSliding=null,this._activeElement=null,this._indicatorsElement=null},t._getConfig=function(t){return t=l({},F,t),_.typeCheckConfig(L,t,U),t},t._handleSwipe=function(){var t=Math.abs(this.touchDeltaX);if(!(t<=40)){var e=t/this.touchDeltaX;0<e&&this.prev(),e<0&&this.next()}},t._addEventListeners=function(){var e=this;this._config.keyboard&&g(this._element).on(Q.KEYDOWN,function(t){return e._keydown(t)}),"hover"===this._config.pause&&g(this._element).on(Q.MOUSEENTER,function(t){return e.pause(t)}).on(Q.MOUSELEAVE,function(t){return e.cycle(t)}),this._config.touch&&this._addTouchEventListeners()},t._addTouchEventListeners=function(){var n=this;if(this._touchSupported){var e=function(t){n._pointerEvent&&at[t.originalEvent.pointerType.toUpperCase()]?n.touchStartX=t.originalEvent.clientX:n._pointerEvent||(n.touchStartX=t.originalEvent.touches[0].clientX)},i=function(t){n._pointerEvent&&at[t.originalEvent.pointerType.toUpperCase()]&&(n.touchDeltaX=t.originalEvent.clientX-n.touchStartX),n._handleSwipe(),"hover"===n._config.pause&&(n.pause(),n.touchTimeout&&clearTimeout(n.touchTimeout),n.touchTimeout=setTimeout(function(t){return n.cycle(t)},500+n._config.interval))};g(this._element.querySelectorAll(nt)).on(Q.DRAG_START,function(t){return t.preventDefault()}),this._pointerEvent?(g(this._element).on(Q.POINTERDOWN,function(t){return e(t)}),g(this._element).on(Q.POINTERUP,function(t){return i(t)}),this._element.classList.add(J)):(g(this._element).on(Q.TOUCHSTART,function(t){return e(t)}),g(this._element).on(Q.TOUCHMOVE,function(t){var e;(e=t).originalEvent.touches&&1<e.originalEvent.touches.length?n.touchDeltaX=0:n.touchDeltaX=e.originalEvent.touches[0].clientX-n.touchStartX}),g(this._element).on(Q.TOUCHEND,function(t){return i(t)}))}},t._keydown=function(t){if(!/input|textarea/i.test(t.target.tagName))switch(t.which){case 37:t.preventDefault(),this.prev();break;case 39:t.preventDefault(),this.next()}},t._getItemIndex=function(t){return this._items=t&&t.parentNode?[].slice.call(t.parentNode.querySelectorAll(et)):[],this._items.indexOf(t)},t._getItemByDirection=function(t,e){var n=t===W,i=t===q,o=this._getItemIndex(e),r=this._items.length-1;if((i&&0===o||n&&o===r)&&!this._config.wrap)return e;var s=(o+(t===q?-1:1))%this._items.length;return-1===s?this._items[this._items.length-1]:this._items[s]},t._triggerSlideEvent=function(t,e){var n=this._getItemIndex(t),i=this._getItemIndex(this._element.querySelector(tt)),o=g.Event(Q.SLIDE,{relatedTarget:t,direction:e,from:i,to:n});return g(this._element).trigger(o),o},t._setActiveIndicatorElement=function(t){if(this._indicatorsElement){var e=[].slice.call(this._indicatorsElement.querySelectorAll(Z));g(e).removeClass(V);var n=this._indicatorsElement.children[this._getItemIndex(t)];n&&g(n).addClass(V)}},t._slide=function(t,e){var n,i,o,r=this,s=this._element.querySelector(tt),a=this._getItemIndex(s),l=e||s&&this._getItemByDirection(t,s),c=this._getItemIndex(l),h=Boolean(this._interval);if(o=t===W?(n=X,i=$,M):(n=z,i=G,K),l&&g(l).hasClass(V))this._isSliding=!1;else if(!this._triggerSlideEvent(l,o).isDefaultPrevented()&&s&&l){this._isSliding=!0,h&&this.pause(),this._setActiveIndicatorElement(l);var u=g.Event(Q.SLID,{relatedTarget:l,direction:o,from:a,to:c});if(g(this._element).hasClass(Y)){g(l).addClass(i),_.reflow(l),g(s).addClass(n),g(l).addClass(n);var f=parseInt(l.getAttribute("data-interval"),10);this._config.interval=f?(this._config.defaultInterval=this._config.defaultInterval||this._config.interval,f):this._config.defaultInterval||this._config.interval;var d=_.getTransitionDurationFromElement(s);g(s).one(_.TRANSITION_END,function(){g(l).removeClass(n+" "+i).addClass(V),g(s).removeClass(V+" "+i+" "+n),r._isSliding=!1,setTimeout(function(){return g(r._element).trigger(u)},0)}).emulateTransitionEnd(d)}else g(s).removeClass(V),g(l).addClass(V),this._isSliding=!1,g(this._element).trigger(u);h&&this.cycle()}},r._jQueryInterface=function(i){return this.each(function(){var t=g(this).data(j),e=l({},F,g(this).data());"object"==typeof i&&(e=l({},e,i));var n="string"==typeof i?i:e.slide;if(t||(t=new r(this,e),g(this).data(j,t)),"number"==typeof i)t.to(i);else if("string"==typeof n){if("undefined"==typeof t[n])throw new TypeError('No method named "'+n+'"');t[n]()}else e.interval&&e.ride&&(t.pause(),t.cycle())})},r._dataApiClickHandler=function(t){var e=_.getSelectorFromElement(this);if(e){var n=g(e)[0];if(n&&g(n).hasClass(B)){var i=l({},g(n).data(),g(this).data()),o=this.getAttribute("data-slide-to");o&&(i.interval=!1),r._jQueryInterface.call(g(n),i),o&&g(n).data(j).to(o),t.preventDefault()}}},s(r,null,[{key:"VERSION",get:function(){return"4.3.1"}},{key:"Default",get:function(){return F}}]),r}();g(document).on(Q.CLICK_DATA_API,rt,lt._dataApiClickHandler),g(window).on(Q.LOAD_DATA_API,function(){for(var t=[].slice.call(document.querySelectorAll(st)),e=0,n=t.length;e<n;e++){var i=g(t[e]);lt._jQueryInterface.call(i,i.data())}}),g.fn[L]=lt._jQueryInterface,g.fn[L].Constructor=lt,g.fn[L].noConflict=function(){return g.fn[L]=x,lt._jQueryInterface};var ct="collapse",ht="bs.collapse",ut="."+ht,ft=g.fn[ct],dt={toggle:!0,parent:""},gt={toggle:"boolean",parent:"(string|element)"},_t={SHOW:"show"+ut,SHOWN:"shown"+ut,HIDE:"hide"+ut,HIDDEN:"hidden"+ut,CLICK_DATA_API:"click"+ut+".data-api"},mt="show",pt="collapse",vt="collapsing",yt="collapsed",Et="width",Ct="height",Tt=".show, .collapsing",St='[data-toggle="collapse"]',bt=function(){function a(e,t){this._isTransitioning=!1,this._element=e,this._config=this._getConfig(t),this._triggerArray=[].slice.call(document.querySelectorAll('[data-toggle="collapse"][href="#'+e.id+'"],[data-toggle="collapse"][data-target="#'+e.id+'"]'));for(var n=[].slice.call(document.querySelectorAll(St)),i=0,o=n.length;i<o;i++){var r=n[i],s=_.getSelectorFromElement(r),a=[].slice.call(document.querySelectorAll(s)).filter(function(t){return t===e});null!==s&&0<a.length&&(this._selector=s,this._triggerArray.push(r))}this._parent=this._config.parent?this._getParent():null,this._config.parent||this._addAriaAndCollapsedClass(this._element,this._triggerArray),this._config.toggle&&this.toggle()}var t=a.prototype;return t.toggle=function(){g(this._element).hasClass(mt)?this.hide():this.show()},t.show=function(){var t,e,n=this;if(!this._isTransitioning&&!g(this._element).hasClass(mt)&&(this._parent&&0===(t=[].slice.call(this._parent.querySelectorAll(Tt)).filter(function(t){return"string"==typeof n._config.parent?t.getAttribute("data-parent")===n._config.parent:t.classList.contains(pt)})).length&&(t=null),!(t&&(e=g(t).not(this._selector).data(ht))&&e._isTransitioning))){var i=g.Event(_t.SHOW);if(g(this._element).trigger(i),!i.isDefaultPrevented()){t&&(a._jQueryInterface.call(g(t).not(this._selector),"hide"),e||g(t).data(ht,null));var o=this._getDimension();g(this._element).removeClass(pt).addClass(vt),this._element.style[o]=0,this._triggerArray.length&&g(this._triggerArray).removeClass(yt).attr("aria-expanded",!0),this.setTransitioning(!0);var r="scroll"+(o[0].toUpperCase()+o.slice(1)),s=_.getTransitionDurationFromElement(this._element);g(this._element).one(_.TRANSITION_END,function(){g(n._element).removeClass(vt).addClass(pt).addClass(mt),n._element.style[o]="",n.setTransitioning(!1),g(n._element).trigger(_t.SHOWN)}).emulateTransitionEnd(s),this._element.style[o]=this._element[r]+"px"}}},t.hide=function(){var t=this;if(!this._isTransitioning&&g(this._element).hasClass(mt)){var e=g.Event(_t.HIDE);if(g(this._element).trigger(e),!e.isDefaultPrevented()){var n=this._getDimension();this._element.style[n]=this._element.getBoundingClientRect()[n]+"px",_.reflow(this._element),g(this._element).addClass(vt).removeClass(pt).removeClass(mt);var i=this._triggerArray.length;if(0<i)for(var o=0;o<i;o++){var r=this._triggerArray[o],s=_.getSelectorFromElement(r);if(null!==s)g([].slice.call(document.querySelectorAll(s))).hasClass(mt)||g(r).addClass(yt).attr("aria-expanded",!1)}this.setTransitioning(!0);this._element.style[n]="";var a=_.getTransitionDurationFromElement(this._element);g(this._element).one(_.TRANSITION_END,function(){t.setTransitioning(!1),g(t._element).removeClass(vt).addClass(pt).trigger(_t.HIDDEN)}).emulateTransitionEnd(a)}}},t.setTransitioning=function(t){this._isTransitioning=t},t.dispose=function(){g.removeData(this._element,ht),this._config=null,this._parent=null,this._element=null,this._triggerArray=null,this._isTransitioning=null},t._getConfig=function(t){return(t=l({},dt,t)).toggle=Boolean(t.toggle),_.typeCheckConfig(ct,t,gt),t},t._getDimension=function(){return g(this._element).hasClass(Et)?Et:Ct},t._getParent=function(){var t,n=this;_.isElement(this._config.parent)?(t=this._config.parent,"undefined"!=typeof this._config.parent.jquery&&(t=this._config.parent[0])):t=document.querySelector(this._config.parent);var e='[data-toggle="collapse"][data-parent="'+this._config.parent+'"]',i=[].slice.call(t.querySelectorAll(e));return g(i).each(function(t,e){n._addAriaAndCollapsedClass(a._getTargetFromElement(e),[e])}),t},t._addAriaAndCollapsedClass=function(t,e){var n=g(t).hasClass(mt);e.length&&g(e).toggleClass(yt,!n).attr("aria-expanded",n)},a._getTargetFromElement=function(t){var e=_.getSelectorFromElement(t);return e?document.querySelector(e):null},a._jQueryInterface=function(i){return this.each(function(){var t=g(this),e=t.data(ht),n=l({},dt,t.data(),"object"==typeof i&&i?i:{});if(!e&&n.toggle&&/show|hide/.test(i)&&(n.toggle=!1),e||(e=new a(this,n),t.data(ht,e)),"string"==typeof i){if("undefined"==typeof e[i])throw new TypeError('No method named "'+i+'"');e[i]()}})},s(a,null,[{key:"VERSION",get:function(){return"4.3.1"}},{key:"Default",get:function(){return dt}}]),a}();g(document).on(_t.CLICK_DATA_API,St,function(t){"A"===t.currentTarget.tagName&&t.preventDefault();var n=g(this),e=_.getSelectorFromElement(this),i=[].slice.call(document.querySelectorAll(e));g(i).each(function(){var t=g(this),e=t.data(ht)?"toggle":n.data();bt._jQueryInterface.call(t,e)})}),g.fn[ct]=bt._jQueryInterface,g.fn[ct].Constructor=bt,g.fn[ct].noConflict=function(){return g.fn[ct]=ft,bt._jQueryInterface};var It="dropdown",Dt="bs.dropdown",wt="."+Dt,At=".data-api",Nt=g.fn[It],Ot=new RegExp("38|40|27"),kt={HIDE:"hide"+wt,HIDDEN:"hidden"+wt,SHOW:"show"+wt,SHOWN:"shown"+wt,CLICK:"click"+wt,CLICK_DATA_API:"click"+wt+At,KEYDOWN_DATA_API:"keydown"+wt+At,KEYUP_DATA_API:"keyup"+wt+At},Pt="disabled",Lt="show",jt="dropup",Ht="dropright",Rt="dropleft",xt="dropdown-menu-right",Ft="position-static",Ut='[data-toggle="dropdown"]',Wt=".dropdown form",qt=".dropdown-menu",Mt=".navbar-nav",Kt=".dropdown-menu .dropdown-item:not(.disabled):not(:disabled)",Qt="top-start",Bt="top-end",Vt="bottom-start",Yt="bottom-end",zt="right-start",Xt="left-start",$t={offset:0,flip:!0,boundary:"scrollParent",reference:"toggle",display:"dynamic"},Gt={offset:"(number|string|function)",flip:"boolean",boundary:"(string|element)",reference:"(string|element)",display:"string"},Jt=function(){function c(t,e){this._element=t,this._popper=null,this._config=this._getConfig(e),this._menu=this._getMenuElement(),this._inNavbar=this._detectNavbar(),this._addEventListeners()}var t=c.prototype;return t.toggle=function(){if(!this._element.disabled&&!g(this._element).hasClass(Pt)){var t=c._getParentFromElement(this._element),e=g(this._menu).hasClass(Lt);if(c._clearMenus(),!e){var n={relatedTarget:this._element},i=g.Event(kt.SHOW,n);if(g(t).trigger(i),!i.isDefaultPrevented()){if(!this._inNavbar){if("undefined"==typeof u)throw new TypeError("Bootstrap's dropdowns require Popper.js (https://popper.js.org/)");var o=this._element;"parent"===this._config.reference?o=t:_.isElement(this._config.reference)&&(o=this._config.reference,"undefined"!=typeof this._config.reference.jquery&&(o=this._config.reference[0])),"scrollParent"!==this._config.boundary&&g(t).addClass(Ft),this._popper=new u(o,this._menu,this._getPopperConfig())}"ontouchstart"in document.documentElement&&0===g(t).closest(Mt).length&&g(document.body).children().on("mouseover",null,g.noop),this._element.focus(),this._element.setAttribute("aria-expanded",!0),g(this._menu).toggleClass(Lt),g(t).toggleClass(Lt).trigger(g.Event(kt.SHOWN,n))}}}},t.show=function(){if(!(this._element.disabled||g(this._element).hasClass(Pt)||g(this._menu).hasClass(Lt))){var t={relatedTarget:this._element},e=g.Event(kt.SHOW,t),n=c._getParentFromElement(this._element);g(n).trigger(e),e.isDefaultPrevented()||(g(this._menu).toggleClass(Lt),g(n).toggleClass(Lt).trigger(g.Event(kt.SHOWN,t)))}},t.hide=function(){if(!this._element.disabled&&!g(this._element).hasClass(Pt)&&g(this._menu).hasClass(Lt)){var t={relatedTarget:this._element},e=g.Event(kt.HIDE,t),n=c._getParentFromElement(this._element);g(n).trigger(e),e.isDefaultPrevented()||(g(this._menu).toggleClass(Lt),g(n).toggleClass(Lt).trigger(g.Event(kt.HIDDEN,t)))}},t.dispose=function(){g.removeData(this._element,Dt),g(this._element).off(wt),this._element=null,(this._menu=null)!==this._popper&&(this._popper.destroy(),this._popper=null)},t.update=function(){this._inNavbar=this._detectNavbar(),null!==this._popper&&this._popper.scheduleUpdate()},t._addEventListeners=function(){var e=this;g(this._element).on(kt.CLICK,function(t){t.preventDefault(),t.stopPropagation(),e.toggle()})},t._getConfig=function(t){return t=l({},this.constructor.Default,g(this._element).data(),t),_.typeCheckConfig(It,t,this.constructor.DefaultType),t},t._getMenuElement=function(){if(!this._menu){var t=c._getParentFromElement(this._element);t&&(this._menu=t.querySelector(qt))}return this._menu},t._getPlacement=function(){var t=g(this._element.parentNode),e=Vt;return t.hasClass(jt)?(e=Qt,g(this._menu).hasClass(xt)&&(e=Bt)):t.hasClass(Ht)?e=zt:t.hasClass(Rt)?e=Xt:g(this._menu).hasClass(xt)&&(e=Yt),e},t._detectNavbar=function(){return 0<g(this._element).closest(".navbar").length},t._getOffset=function(){var e=this,t={};return"function"==typeof this._config.offset?t.fn=function(t){return t.offsets=l({},t.offsets,e._config.offset(t.offsets,e._element)||{}),t}:t.offset=this._config.offset,t},t._getPopperConfig=function(){var t={placement:this._getPlacement(),modifiers:{offset:this._getOffset(),flip:{enabled:this._config.flip},preventOverflow:{boundariesElement:this._config.boundary}}};return"static"===this._config.display&&(t.modifiers.applyStyle={enabled:!1}),t},c._jQueryInterface=function(e){return this.each(function(){var t=g(this).data(Dt);if(t||(t=new c(this,"object"==typeof e?e:null),g(this).data(Dt,t)),"string"==typeof e){if("undefined"==typeof t[e])throw new TypeError('No method named "'+e+'"');t[e]()}})},c._clearMenus=function(t){if(!t||3!==t.which&&("keyup"!==t.type||9===t.which))for(var e=[].slice.call(document.querySelectorAll(Ut)),n=0,i=e.length;n<i;n++){var o=c._getParentFromElement(e[n]),r=g(e[n]).data(Dt),s={relatedTarget:e[n]};if(t&&"click"===t.type&&(s.clickEvent=t),r){var a=r._menu;if(g(o).hasClass(Lt)&&!(t&&("click"===t.type&&/input|textarea/i.test(t.target.tagName)||"keyup"===t.type&&9===t.which)&&g.contains(o,t.target))){var l=g.Event(kt.HIDE,s);g(o).trigger(l),l.isDefaultPrevented()||("ontouchstart"in document.documentElement&&g(document.body).children().off("mouseover",null,g.noop),e[n].setAttribute("aria-expanded","false"),g(a).removeClass(Lt),g(o).removeClass(Lt).trigger(g.Event(kt.HIDDEN,s)))}}}},c._getParentFromElement=function(t){var e,n=_.getSelectorFromElement(t);return n&&(e=document.querySelector(n)),e||t.parentNode},c._dataApiKeydownHandler=function(t){if((/input|textarea/i.test(t.target.tagName)?!(32===t.which||27!==t.which&&(40!==t.which&&38!==t.which||g(t.target).closest(qt).length)):Ot.test(t.which))&&(t.preventDefault(),t.stopPropagation(),!this.disabled&&!g(this).hasClass(Pt))){var e=c._getParentFromElement(this),n=g(e).hasClass(Lt);if(n&&(!n||27!==t.which&&32!==t.which)){var i=[].slice.call(e.querySelectorAll(Kt));if(0!==i.length){var o=i.indexOf(t.target);38===t.which&&0<o&&o--,40===t.which&&o<i.length-1&&o++,o<0&&(o=0),i[o].focus()}}else{if(27===t.which){var r=e.querySelector(Ut);g(r).trigger("focus")}g(this).trigger("click")}}},s(c,null,[{key:"VERSION",get:function(){return"4.3.1"}},{key:"Default",get:function(){return $t}},{key:"DefaultType",get:function(){return Gt}}]),c}();g(document).on(kt.KEYDOWN_DATA_API,Ut,Jt._dataApiKeydownHandler).on(kt.KEYDOWN_DATA_API,qt,Jt._dataApiKeydownHandler).on(kt.CLICK_DATA_API+" "+kt.KEYUP_DATA_API,Jt._clearMenus).on(kt.CLICK_DATA_API,Ut,function(t){t.preventDefault(),t.stopPropagation(),Jt._jQueryInterface.call(g(this),"toggle")}).on(kt.CLICK_DATA_API,Wt,function(t){t.stopPropagation()}),g.fn[It]=Jt._jQueryInterface,g.fn[It].Constructor=Jt,g.fn[It].noConflict=function(){return g.fn[It]=Nt,Jt._jQueryInterface};var Zt="modal",te="bs.modal",ee="."+te,ne=g.fn[Zt],ie={backdrop:!0,keyboard:!0,focus:!0,show:!0},oe={backdrop:"(boolean|string)",keyboard:"boolean",focus:"boolean",show:"boolean"},re={HIDE:"hide"+ee,HIDDEN:"hidden"+ee,SHOW:"show"+ee,SHOWN:"shown"+ee,FOCUSIN:"focusin"+ee,RESIZE:"resize"+ee,CLICK_DISMISS:"click.dismiss"+ee,KEYDOWN_DISMISS:"keydown.dismiss"+ee,MOUSEUP_DISMISS:"mouseup.dismiss"+ee,MOUSEDOWN_DISMISS:"mousedown.dismiss"+ee,CLICK_DATA_API:"click"+ee+".data-api"},se="modal-dialog-scrollable",ae="modal-scrollbar-measure",le="modal-backdrop",ce="modal-open",he="fade",ue="show",fe=".modal-dialog",de=".modal-body",ge='[data-toggle="modal"]',_e='[data-dismiss="modal"]',me=".fixed-top, .fixed-bottom, .is-fixed, .sticky-top",pe=".sticky-top",ve=function(){function o(t,e){this._config=this._getConfig(e),this._element=t,this._dialog=t.querySelector(fe),this._backdrop=null,this._isShown=!1,this._isBodyOverflowing=!1,this._ignoreBackdropClick=!1,this._isTransitioning=!1,this._scrollbarWidth=0}var t=o.prototype;return t.toggle=function(t){return this._isShown?this.hide():this.show(t)},t.show=function(t){var e=this;if(!this._isShown&&!this._isTransitioning){g(this._element).hasClass(he)&&(this._isTransitioning=!0);var n=g.Event(re.SHOW,{relatedTarget:t});g(this._element).trigger(n),this._isShown||n.isDefaultPrevented()||(this._isShown=!0,this._checkScrollbar(),this._setScrollbar(),this._adjustDialog(),this._setEscapeEvent(),this._setResizeEvent(),g(this._element).on(re.CLICK_DISMISS,_e,function(t){return e.hide(t)}),g(this._dialog).on(re.MOUSEDOWN_DISMISS,function(){g(e._element).one(re.MOUSEUP_DISMISS,function(t){g(t.target).is(e._element)&&(e._ignoreBackdropClick=!0)})}),this._showBackdrop(function(){return e._showElement(t)}))}},t.hide=function(t){var e=this;if(t&&t.preventDefault(),this._isShown&&!this._isTransitioning){var n=g.Event(re.HIDE);if(g(this._element).trigger(n),this._isShown&&!n.isDefaultPrevented()){this._isShown=!1;var i=g(this._element).hasClass(he);if(i&&(this._isTransitioning=!0),this._setEscapeEvent(),this._setResizeEvent(),g(document).off(re.FOCUSIN),g(this._element).removeClass(ue),g(this._element).off(re.CLICK_DISMISS),g(this._dialog).off(re.MOUSEDOWN_DISMISS),i){var o=_.getTransitionDurationFromElement(this._element);g(this._element).one(_.TRANSITION_END,function(t){return e._hideModal(t)}).emulateTransitionEnd(o)}else this._hideModal()}}},t.dispose=function(){[window,this._element,this._dialog].forEach(function(t){return g(t).off(ee)}),g(document).off(re.FOCUSIN),g.removeData(this._element,te),this._config=null,this._element=null,this._dialog=null,this._backdrop=null,this._isShown=null,this._isBodyOverflowing=null,this._ignoreBackdropClick=null,this._isTransitioning=null,this._scrollbarWidth=null},t.handleUpdate=function(){this._adjustDialog()},t._getConfig=function(t){return t=l({},ie,t),_.typeCheckConfig(Zt,t,oe),t},t._showElement=function(t){var e=this,n=g(this._element).hasClass(he);this._element.parentNode&&this._element.parentNode.nodeType===Node.ELEMENT_NODE||document.body.appendChild(this._element),this._element.style.display="block",this._element.removeAttribute("aria-hidden"),this._element.setAttribute("aria-modal",!0),g(this._dialog).hasClass(se)?this._dialog.querySelector(de).scrollTop=0:this._element.scrollTop=0,n&&_.reflow(this._element),g(this._element).addClass(ue),this._config.focus&&this._enforceFocus();var i=g.Event(re.SHOWN,{relatedTarget:t}),o=function(){e._config.focus&&e._element.focus(),e._isTransitioning=!1,g(e._element).trigger(i)};if(n){var r=_.getTransitionDurationFromElement(this._dialog);g(this._dialog).one(_.TRANSITION_END,o).emulateTransitionEnd(r)}else o()},t._enforceFocus=function(){var e=this;g(document).off(re.FOCUSIN).on(re.FOCUSIN,function(t){document!==t.target&&e._element!==t.target&&0===g(e._element).has(t.target).length&&e._element.focus()})},t._setEscapeEvent=function(){var e=this;this._isShown&&this._config.keyboard?g(this._element).on(re.KEYDOWN_DISMISS,function(t){27===t.which&&(t.preventDefault(),e.hide())}):this._isShown||g(this._element).off(re.KEYDOWN_DISMISS)},t._setResizeEvent=function(){var e=this;this._isShown?g(window).on(re.RESIZE,function(t){return e.handleUpdate(t)}):g(window).off(re.RESIZE)},t._hideModal=function(){var t=this;this._element.style.display="none",this._element.setAttribute("aria-hidden",!0),this._element.removeAttribute("aria-modal"),this._isTransitioning=!1,this._showBackdrop(function(){g(document.body).removeClass(ce),t._resetAdjustments(),t._resetScrollbar(),g(t._element).trigger(re.HIDDEN)})},t._removeBackdrop=function(){this._backdrop&&(g(this._backdrop).remove(),this._backdrop=null)},t._showBackdrop=function(t){var e=this,n=g(this._element).hasClass(he)?he:"";if(this._isShown&&this._config.backdrop){if(this._backdrop=document.createElement("div"),this._backdrop.className=le,n&&this._backdrop.classList.add(n),g(this._backdrop).appendTo(document.body),g(this._element).on(re.CLICK_DISMISS,function(t){e._ignoreBackdropClick?e._ignoreBackdropClick=!1:t.target===t.currentTarget&&("static"===e._config.backdrop?e._element.focus():e.hide())}),n&&_.reflow(this._backdrop),g(this._backdrop).addClass(ue),!t)return;if(!n)return void t();var i=_.getTransitionDurationFromElement(this._backdrop);g(this._backdrop).one(_.TRANSITION_END,t).emulateTransitionEnd(i)}else if(!this._isShown&&this._backdrop){g(this._backdrop).removeClass(ue);var o=function(){e._removeBackdrop(),t&&t()};if(g(this._element).hasClass(he)){var r=_.getTransitionDurationFromElement(this._backdrop);g(this._backdrop).one(_.TRANSITION_END,o).emulateTransitionEnd(r)}else o()}else t&&t()},t._adjustDialog=function(){var t=this._element.scrollHeight>document.documentElement.clientHeight;!this._isBodyOverflowing&&t&&(this._element.style.paddingLeft=this._scrollbarWidth+"px"),this._isBodyOverflowing&&!t&&(this._element.style.paddingRight=this._scrollbarWidth+"px")},t._resetAdjustments=function(){this._element.style.paddingLeft="",this._element.style.paddingRight=""},t._checkScrollbar=function(){var t=document.body.getBoundingClientRect();this._isBodyOverflowing=t.left+t.right<window.innerWidth,this._scrollbarWidth=this._getScrollbarWidth()},t._setScrollbar=function(){var o=this;if(this._isBodyOverflowing){var t=[].slice.call(document.querySelectorAll(me)),e=[].slice.call(document.querySelectorAll(pe));g(t).each(function(t,e){var n=e.style.paddingRight,i=g(e).css("padding-right");g(e).data("padding-right",n).css("padding-right",parseFloat(i)+o._scrollbarWidth+"px")}),g(e).each(function(t,e){var n=e.style.marginRight,i=g(e).css("margin-right");g(e).data("margin-right",n).css("margin-right",parseFloat(i)-o._scrollbarWidth+"px")});var n=document.body.style.paddingRight,i=g(document.body).css("padding-right");g(document.body).data("padding-right",n).css("padding-right",parseFloat(i)+this._scrollbarWidth+"px")}g(document.body).addClass(ce)},t._resetScrollbar=function(){var t=[].slice.call(document.querySelectorAll(me));g(t).each(function(t,e){var n=g(e).data("padding-right");g(e).removeData("padding-right"),e.style.paddingRight=n||""});var e=[].slice.call(document.querySelectorAll(""+pe));g(e).each(function(t,e){var n=g(e).data("margin-right");"undefined"!=typeof n&&g(e).css("margin-right",n).removeData("margin-right")});var n=g(document.body).data("padding-right");g(document.body).removeData("padding-right"),document.body.style.paddingRight=n||""},t._getScrollbarWidth=function(){var t=document.createElement("div");t.className=ae,document.body.appendChild(t);var e=t.getBoundingClientRect().width-t.clientWidth;return document.body.removeChild(t),e},o._jQueryInterface=function(n,i){return this.each(function(){var t=g(this).data(te),e=l({},ie,g(this).data(),"object"==typeof n&&n?n:{});if(t||(t=new o(this,e),g(this).data(te,t)),"string"==typeof n){if("undefined"==typeof t[n])throw new TypeError('No method named "'+n+'"');t[n](i)}else e.show&&t.show(i)})},s(o,null,[{key:"VERSION",get:function(){return"4.3.1"}},{key:"Default",get:function(){return ie}}]),o}();g(document).on(re.CLICK_DATA_API,ge,function(t){var e,n=this,i=_.getSelectorFromElement(this);i&&(e=document.querySelector(i));var o=g(e).data(te)?"toggle":l({},g(e).data(),g(this).data());"A"!==this.tagName&&"AREA"!==this.tagName||t.preventDefault();var r=g(e).one(re.SHOW,function(t){t.isDefaultPrevented()||r.one(re.HIDDEN,function(){g(n).is(":visible")&&n.focus()})});ve._jQueryInterface.call(g(e),o,this)}),g.fn[Zt]=ve._jQueryInterface,g.fn[Zt].Constructor=ve,g.fn[Zt].noConflict=function(){return g.fn[Zt]=ne,ve._jQueryInterface};var ye=["background","cite","href","itemtype","longdesc","poster","src","xlink:href"],Ee={"*":["class","dir","id","lang","role",/^aria-[\w-]*$/i],a:["target","href","title","rel"],area:[],b:[],br:[],col:[],code:[],div:[],em:[],hr:[],h1:[],h2:[],h3:[],h4:[],h5:[],h6:[],i:[],img:["src","alt","title","width","height"],li:[],ol:[],p:[],pre:[],s:[],small:[],span:[],sub:[],sup:[],strong:[],u:[],ul:[]},Ce=/^(?:(?:https?|mailto|ftp|tel|file):|[^&:/?#]*(?:[/?#]|$))/gi,Te=/^data:(?:image\/(?:bmp|gif|jpeg|jpg|png|tiff|webp)|video\/(?:mpeg|mp4|ogg|webm)|audio\/(?:mp3|oga|ogg|opus));base64,[a-z0-9+/]+=*$/i;function Se(t,s,e){if(0===t.length)return t;if(e&&"function"==typeof e)return e(t);for(var n=(new window.DOMParser).parseFromString(t,"text/html"),a=Object.keys(s),l=[].slice.call(n.body.querySelectorAll("*")),i=function(t,e){var n=l[t],i=n.nodeName.toLowerCase();if(-1===a.indexOf(n.nodeName.toLowerCase()))return n.parentNode.removeChild(n),"continue";var o=[].slice.call(n.attributes),r=[].concat(s["*"]||[],s[i]||[]);o.forEach(function(t){(function(t,e){var n=t.nodeName.toLowerCase();if(-1!==e.indexOf(n))return-1===ye.indexOf(n)||Boolean(t.nodeValue.match(Ce)||t.nodeValue.match(Te));for(var i=e.filter(function(t){return t instanceof RegExp}),o=0,r=i.length;o<r;o++)if(n.match(i[o]))return!0;return!1})(t,r)||n.removeAttribute(t.nodeName)})},o=0,r=l.length;o<r;o++)i(o);return n.body.innerHTML}var be="tooltip",Ie="bs.tooltip",De="."+Ie,we=g.fn[be],Ae="bs-tooltip",Ne=new RegExp("(^|\\s)"+Ae+"\\S+","g"),Oe=["sanitize","whiteList","sanitizeFn"],ke={animation:"boolean",template:"string",title:"(string|element|function)",trigger:"string",delay:"(number|object)",html:"boolean",selector:"(string|boolean)",placement:"(string|function)",offset:"(number|string|function)",container:"(string|element|boolean)",fallbackPlacement:"(string|array)",boundary:"(string|element)",sanitize:"boolean",sanitizeFn:"(null|function)",whiteList:"object"},Pe={AUTO:"auto",TOP:"top",RIGHT:"right",BOTTOM:"bottom",LEFT:"left"},Le={animation:!0,template:'<div class="tooltip" role="tooltip"><div class="arrow"></div><div class="tooltip-inner"></div></div>',trigger:"hover focus",title:"",delay:0,html:!1,selector:!1,placement:"top",offset:0,container:!1,fallbackPlacement:"flip",boundary:"scrollParent",sanitize:!0,sanitizeFn:null,whiteList:Ee},je="show",He="out",Re={HIDE:"hide"+De,HIDDEN:"hidden"+De,SHOW:"show"+De,SHOWN:"shown"+De,INSERTED:"inserted"+De,CLICK:"click"+De,FOCUSIN:"focusin"+De,FOCUSOUT:"focusout"+De,MOUSEENTER:"mouseenter"+De,MOUSELEAVE:"mouseleave"+De},xe="fade",Fe="show",Ue=".tooltip-inner",We=".arrow",qe="hover",Me="focus",Ke="click",Qe="manual",Be=function(){function i(t,e){if("undefined"==typeof u)throw new TypeError("Bootstrap's tooltips require Popper.js (https://popper.js.org/)");this._isEnabled=!0,this._timeout=0,this._hoverState="",this._activeTrigger={},this._popper=null,this.element=t,this.config=this._getConfig(e),this.tip=null,this._setListeners()}var t=i.prototype;return t.enable=function(){this._isEnabled=!0},t.disable=function(){this._isEnabled=!1},t.toggleEnabled=function(){this._isEnabled=!this._isEnabled},t.toggle=function(t){if(this._isEnabled)if(t){var e=this.constructor.DATA_KEY,n=g(t.currentTarget).data(e);n||(n=new this.constructor(t.currentTarget,this._getDelegateConfig()),g(t.currentTarget).data(e,n)),n._activeTrigger.click=!n._activeTrigger.click,n._isWithActiveTrigger()?n._enter(null,n):n._leave(null,n)}else{if(g(this.getTipElement()).hasClass(Fe))return void this._leave(null,this);this._enter(null,this)}},t.dispose=function(){clearTimeout(this._timeout),g.removeData(this.element,this.constructor.DATA_KEY),g(this.element).off(this.constructor.EVENT_KEY),g(this.element).closest(".modal").off("hide.bs.modal"),this.tip&&g(this.tip).remove(),this._isEnabled=null,this._timeout=null,this._hoverState=null,(this._activeTrigger=null)!==this._popper&&this._popper.destroy(),this._popper=null,this.element=null,this.config=null,this.tip=null},t.show=function(){var e=this;if("none"===g(this.element).css("display"))throw new Error("Please use show on visible elements");var t=g.Event(this.constructor.Event.SHOW);if(this.isWithContent()&&this._isEnabled){g(this.element).trigger(t);var n=_.findShadowRoot(this.element),i=g.contains(null!==n?n:this.element.ownerDocument.documentElement,this.element);if(t.isDefaultPrevented()||!i)return;var o=this.getTipElement(),r=_.getUID(this.constructor.NAME);o.setAttribute("id",r),this.element.setAttribute("aria-describedby",r),this.setContent(),this.config.animation&&g(o).addClass(xe);var s="function"==typeof this.config.placement?this.config.placement.call(this,o,this.element):this.config.placement,a=this._getAttachment(s);this.addAttachmentClass(a);var l=this._getContainer();g(o).data(this.constructor.DATA_KEY,this),g.contains(this.element.ownerDocument.documentElement,this.tip)||g(o).appendTo(l),g(this.element).trigger(this.constructor.Event.INSERTED),this._popper=new u(this.element,o,{placement:a,modifiers:{offset:this._getOffset(),flip:{behavior:this.config.fallbackPlacement},arrow:{element:We},preventOverflow:{boundariesElement:this.config.boundary}},onCreate:function(t){t.originalPlacement!==t.placement&&e._handlePopperPlacementChange(t)},onUpdate:function(t){return e._handlePopperPlacementChange(t)}}),g(o).addClass(Fe),"ontouchstart"in document.documentElement&&g(document.body).children().on("mouseover",null,g.noop);var c=function(){e.config.animation&&e._fixTransition();var t=e._hoverState;e._hoverState=null,g(e.element).trigger(e.constructor.Event.SHOWN),t===He&&e._leave(null,e)};if(g(this.tip).hasClass(xe)){var h=_.getTransitionDurationFromElement(this.tip);g(this.tip).one(_.TRANSITION_END,c).emulateTransitionEnd(h)}else c()}},t.hide=function(t){var e=this,n=this.getTipElement(),i=g.Event(this.constructor.Event.HIDE),o=function(){e._hoverState!==je&&n.parentNode&&n.parentNode.removeChild(n),e._cleanTipClass(),e.element.removeAttribute("aria-describedby"),g(e.element).trigger(e.constructor.Event.HIDDEN),null!==e._popper&&e._popper.destroy(),t&&t()};if(g(this.element).trigger(i),!i.isDefaultPrevented()){if(g(n).removeClass(Fe),"ontouchstart"in document.documentElement&&g(document.body).children().off("mouseover",null,g.noop),this._activeTrigger[Ke]=!1,this._activeTrigger[Me]=!1,this._activeTrigger[qe]=!1,g(this.tip).hasClass(xe)){var r=_.getTransitionDurationFromElement(n);g(n).one(_.TRANSITION_END,o).emulateTransitionEnd(r)}else o();this._hoverState=""}},t.update=function(){null!==this._popper&&this._popper.scheduleUpdate()},t.isWithContent=function(){return Boolean(this.getTitle())},t.addAttachmentClass=function(t){g(this.getTipElement()).addClass(Ae+"-"+t)},t.getTipElement=function(){return this.tip=this.tip||g(this.config.template)[0],this.tip},t.setContent=function(){var t=this.getTipElement();this.setElementContent(g(t.querySelectorAll(Ue)),this.getTitle()),g(t).removeClass(xe+" "+Fe)},t.setElementContent=function(t,e){"object"!=typeof e||!e.nodeType&&!e.jquery?this.config.html?(this.config.sanitize&&(e=Se(e,this.config.whiteList,this.config.sanitizeFn)),t.html(e)):t.text(e):this.config.html?g(e).parent().is(t)||t.empty().append(e):t.text(g(e).text())},t.getTitle=function(){var t=this.element.getAttribute("data-original-title");return t||(t="function"==typeof this.config.title?this.config.title.call(this.element):this.config.title),t},t._getOffset=function(){var e=this,t={};return"function"==typeof this.config.offset?t.fn=function(t){return t.offsets=l({},t.offsets,e.config.offset(t.offsets,e.element)||{}),t}:t.offset=this.config.offset,t},t._getContainer=function(){return!1===this.config.container?document.body:_.isElement(this.config.container)?g(this.config.container):g(document).find(this.config.container)},t._getAttachment=function(t){return Pe[t.toUpperCase()]},t._setListeners=function(){var i=this;this.config.trigger.split(" ").forEach(function(t){if("click"===t)g(i.element).on(i.constructor.Event.CLICK,i.config.selector,function(t){return i.toggle(t)});else if(t!==Qe){var e=t===qe?i.constructor.Event.MOUSEENTER:i.constructor.Event.FOCUSIN,n=t===qe?i.constructor.Event.MOUSELEAVE:i.constructor.Event.FOCUSOUT;g(i.element).on(e,i.config.selector,function(t){return i._enter(t)}).on(n,i.config.selector,function(t){return i._leave(t)})}}),g(this.element).closest(".modal").on("hide.bs.modal",function(){i.element&&i.hide()}),this.config.selector?this.config=l({},this.config,{trigger:"manual",selector:""}):this._fixTitle()},t._fixTitle=function(){var t=typeof this.element.getAttribute("data-original-title");(this.element.getAttribute("title")||"string"!==t)&&(this.element.setAttribute("data-original-title",this.element.getAttribute("title")||""),this.element.setAttribute("title",""))},t._enter=function(t,e){var n=this.constructor.DATA_KEY;(e=e||g(t.currentTarget).data(n))||(e=new this.constructor(t.currentTarget,this._getDelegateConfig()),g(t.currentTarget).data(n,e)),t&&(e._activeTrigger["focusin"===t.type?Me:qe]=!0),g(e.getTipElement()).hasClass(Fe)||e._hoverState===je?e._hoverState=je:(clearTimeout(e._timeout),e._hoverState=je,e.config.delay&&e.config.delay.show?e._timeout=setTimeout(function(){e._hoverState===je&&e.show()},e.config.delay.show):e.show())},t._leave=function(t,e){var n=this.constructor.DATA_KEY;(e=e||g(t.currentTarget).data(n))||(e=new this.constructor(t.currentTarget,this._getDelegateConfig()),g(t.currentTarget).data(n,e)),t&&(e._activeTrigger["focusout"===t.type?Me:qe]=!1),e._isWithActiveTrigger()||(clearTimeout(e._timeout),e._hoverState=He,e.config.delay&&e.config.delay.hide?e._timeout=setTimeout(function(){e._hoverState===He&&e.hide()},e.config.delay.hide):e.hide())},t._isWithActiveTrigger=function(){for(var t in this._activeTrigger)if(this._activeTrigger[t])return!0;return!1},t._getConfig=function(t){var e=g(this.element).data();return Object.keys(e).forEach(function(t){-1!==Oe.indexOf(t)&&delete e[t]}),"number"==typeof(t=l({},this.constructor.Default,e,"object"==typeof t&&t?t:{})).delay&&(t.delay={show:t.delay,hide:t.delay}),"number"==typeof t.title&&(t.title=t.title.toString()),"number"==typeof t.content&&(t.content=t.content.toString()),_.typeCheckConfig(be,t,this.constructor.DefaultType),t.sanitize&&(t.template=Se(t.template,t.whiteList,t.sanitizeFn)),t},t._getDelegateConfig=function(){var t={};if(this.config)for(var e in this.config)this.constructor.Default[e]!==this.config[e]&&(t[e]=this.config[e]);return t},t._cleanTipClass=function(){var t=g(this.getTipElement()),e=t.attr("class").match(Ne);null!==e&&e.length&&t.removeClass(e.join(""))},t._handlePopperPlacementChange=function(t){var e=t.instance;this.tip=e.popper,this._cleanTipClass(),this.addAttachmentClass(this._getAttachment(t.placement))},t._fixTransition=function(){var t=this.getTipElement(),e=this.config.animation;null===t.getAttribute("x-placement")&&(g(t).removeClass(xe),this.config.animation=!1,this.hide(),this.show(),this.config.animation=e)},i._jQueryInterface=function(n){return this.each(function(){var t=g(this).data(Ie),e="object"==typeof n&&n;if((t||!/dispose|hide/.test(n))&&(t||(t=new i(this,e),g(this).data(Ie,t)),"string"==typeof n)){if("undefined"==typeof t[n])throw new TypeError('No method named "'+n+'"');t[n]()}})},s(i,null,[{key:"VERSION",get:function(){return"4.3.1"}},{key:"Default",get:function(){return Le}},{key:"NAME",get:function(){return be}},{key:"DATA_KEY",get:function(){return Ie}},{key:"Event",get:function(){return Re}},{key:"EVENT_KEY",get:function(){return De}},{key:"DefaultType",get:function(){return ke}}]),i}();g.fn[be]=Be._jQueryInterface,g.fn[be].Constructor=Be,g.fn[be].noConflict=function(){return g.fn[be]=we,Be._jQueryInterface};var Ve="popover",Ye="bs.popover",ze="."+Ye,Xe=g.fn[Ve],$e="bs-popover",Ge=new RegExp("(^|\\s)"+$e+"\\S+","g"),Je=l({},Be.Default,{placement:"right",trigger:"click",content:"",template:'<div class="popover" role="tooltip"><div class="arrow"></div><h3 class="popover-header"></h3><div class="popover-body"></div></div>'}),Ze=l({},Be.DefaultType,{content:"(string|element|function)"}),tn="fade",en="show",nn=".popover-header",on=".popover-body",rn={HIDE:"hide"+ze,HIDDEN:"hidden"+ze,SHOW:"show"+ze,SHOWN:"shown"+ze,INSERTED:"inserted"+ze,CLICK:"click"+ze,FOCUSIN:"focusin"+ze,FOCUSOUT:"focusout"+ze,MOUSEENTER:"mouseenter"+ze,MOUSELEAVE:"mouseleave"+ze},sn=function(t){var e,n;function i(){return t.apply(this,arguments)||this}n=t,(e=i).prototype=Object.create(n.prototype),(e.prototype.constructor=e).__proto__=n;var o=i.prototype;return o.isWithContent=function(){return this.getTitle()||this._getContent()},o.addAttachmentClass=function(t){g(this.getTipElement()).addClass($e+"-"+t)},o.getTipElement=function(){return this.tip=this.tip||g(this.config.template)[0],this.tip},o.setContent=function(){var t=g(this.getTipElement());this.setElementContent(t.find(nn),this.getTitle());var e=this._getContent();"function"==typeof e&&(e=e.call(this.element)),this.setElementContent(t.find(on),e),t.removeClass(tn+" "+en)},o._getContent=function(){return this.element.getAttribute("data-content")||this.config.content},o._cleanTipClass=function(){var t=g(this.getTipElement()),e=t.attr("class").match(Ge);null!==e&&0<e.length&&t.removeClass(e.join(""))},i._jQueryInterface=function(n){return this.each(function(){var t=g(this).data(Ye),e="object"==typeof n?n:null;if((t||!/dispose|hide/.test(n))&&(t||(t=new i(this,e),g(this).data(Ye,t)),"string"==typeof n)){if("undefined"==typeof t[n])throw new TypeError('No method named "'+n+'"');t[n]()}})},s(i,null,[{key:"VERSION",get:function(){return"4.3.1"}},{key:"Default",get:function(){return Je}},{key:"NAME",get:function(){return Ve}},{key:"DATA_KEY",get:function(){return Ye}},{key:"Event",get:function(){return rn}},{key:"EVENT_KEY",get:function(){return ze}},{key:"DefaultType",get:function(){return Ze}}]),i}(Be);g.fn[Ve]=sn._jQueryInterface,g.fn[Ve].Constructor=sn,g.fn[Ve].noConflict=function(){return g.fn[Ve]=Xe,sn._jQueryInterface};var an="scrollspy",ln="bs.scrollspy",cn="."+ln,hn=g.fn[an],un={offset:10,method:"auto",target:""},fn={offset:"number",method:"string",target:"(string|element)"},dn={ACTIVATE:"activate"+cn,SCROLL:"scroll"+cn,LOAD_DATA_API:"load"+cn+".data-api"},gn="dropdown-item",_n="active",mn='[data-spy="scroll"]',pn=".nav, .list-group",vn=".nav-link",yn=".nav-item",En=".list-group-item",Cn=".dropdown",Tn=".dropdown-item",Sn=".dropdown-toggle",bn="offset",In="position",Dn=function(){function n(t,e){var n=this;this._element=t,this._scrollElement="BODY"===t.tagName?window:t,this._config=this._getConfig(e),this._selector=this._config.target+" "+vn+","+this._config.target+" "+En+","+this._config.target+" "+Tn,this._offsets=[],this._targets=[],this._activeTarget=null,this._scrollHeight=0,g(this._scrollElement).on(dn.SCROLL,function(t){return n._process(t)}),this.refresh(),this._process()}var t=n.prototype;return t.refresh=function(){var e=this,t=this._scrollElement===this._scrollElement.window?bn:In,o="auto"===this._config.method?t:this._config.method,r=o===In?this._getScrollTop():0;this._offsets=[],this._targets=[],this._scrollHeight=this._getScrollHeight(),[].slice.call(document.querySelectorAll(this._selector)).map(function(t){var e,n=_.getSelectorFromElement(t);if(n&&(e=document.querySelector(n)),e){var i=e.getBoundingClientRect();if(i.width||i.height)return[g(e)[o]().top+r,n]}return null}).filter(function(t){return t}).sort(function(t,e){return t[0]-e[0]}).forEach(function(t){e._offsets.push(t[0]),e._targets.push(t[1])})},t.dispose=function(){g.removeData(this._element,ln),g(this._scrollElement).off(cn),this._element=null,this._scrollElement=null,this._config=null,this._selector=null,this._offsets=null,this._targets=null,this._activeTarget=null,this._scrollHeight=null},t._getConfig=function(t){if("string"!=typeof(t=l({},un,"object"==typeof t&&t?t:{})).target){var e=g(t.target).attr("id");e||(e=_.getUID(an),g(t.target).attr("id",e)),t.target="#"+e}return _.typeCheckConfig(an,t,fn),t},t._getScrollTop=function(){return this._scrollElement===window?this._scrollElement.pageYOffset:this._scrollElement.scrollTop},t._getScrollHeight=function(){return this._scrollElement.scrollHeight||Math.max(document.body.scrollHeight,document.documentElement.scrollHeight)},t._getOffsetHeight=function(){return this._scrollElement===window?window.innerHeight:this._scrollElement.getBoundingClientRect().height},t._process=function(){var t=this._getScrollTop()+this._config.offset,e=this._getScrollHeight(),n=this._config.offset+e-this._getOffsetHeight();if(this._scrollHeight!==e&&this.refresh(),n<=t){var i=this._targets[this._targets.length-1];this._activeTarget!==i&&this._activate(i)}else{if(this._activeTarget&&t<this._offsets[0]&&0<this._offsets[0])return this._activeTarget=null,void this._clear();for(var o=this._offsets.length;o--;){this._activeTarget!==this._targets[o]&&t>=this._offsets[o]&&("undefined"==typeof this._offsets[o+1]||t<this._offsets[o+1])&&this._activate(this._targets[o])}}},t._activate=function(e){this._activeTarget=e,this._clear();var t=this._selector.split(",").map(function(t){return t+'[data-target="'+e+'"],'+t+'[href="'+e+'"]'}),n=g([].slice.call(document.querySelectorAll(t.join(","))));n.hasClass(gn)?(n.closest(Cn).find(Sn).addClass(_n),n.addClass(_n)):(n.addClass(_n),n.parents(pn).prev(vn+", "+En).addClass(_n),n.parents(pn).prev(yn).children(vn).addClass(_n)),g(this._scrollElement).trigger(dn.ACTIVATE,{relatedTarget:e})},t._clear=function(){[].slice.call(document.querySelectorAll(this._selector)).filter(function(t){return t.classList.contains(_n)}).forEach(function(t){return t.classList.remove(_n)})},n._jQueryInterface=function(e){return this.each(function(){var t=g(this).data(ln);if(t||(t=new n(this,"object"==typeof e&&e),g(this).data(ln,t)),"string"==typeof e){if("undefined"==typeof t[e])throw new TypeError('No method named "'+e+'"');t[e]()}})},s(n,null,[{key:"VERSION",get:function(){return"4.3.1"}},{key:"Default",get:function(){return un}}]),n}();g(window).on(dn.LOAD_DATA_API,function(){for(var t=[].slice.call(document.querySelectorAll(mn)),e=t.length;e--;){var n=g(t[e]);Dn._jQueryInterface.call(n,n.data())}}),g.fn[an]=Dn._jQueryInterface,g.fn[an].Constructor=Dn,g.fn[an].noConflict=function(){return g.fn[an]=hn,Dn._jQueryInterface};var wn="bs.tab",An="."+wn,Nn=g.fn.tab,On={HIDE:"hide"+An,HIDDEN:"hidden"+An,SHOW:"show"+An,SHOWN:"shown"+An,CLICK_DATA_API:"click"+An+".data-api"},kn="dropdown-menu",Pn="active",Ln="disabled",jn="fade",Hn="show",Rn=".dropdown",xn=".nav, .list-group",Fn=".active",Un="> li > .active",Wn='[data-toggle="tab"], [data-toggle="pill"], [data-toggle="list"]',qn=".dropdown-toggle",Mn="> .dropdown-menu .active",Kn=function(){function i(t){this._element=t}var t=i.prototype;return t.show=function(){var n=this;if(!(this._element.parentNode&&this._element.parentNode.nodeType===Node.ELEMENT_NODE&&g(this._element).hasClass(Pn)||g(this._element).hasClass(Ln))){var t,i,e=g(this._element).closest(xn)[0],o=_.getSelectorFromElement(this._element);if(e){var r="UL"===e.nodeName||"OL"===e.nodeName?Un:Fn;i=(i=g.makeArray(g(e).find(r)))[i.length-1]}var s=g.Event(On.HIDE,{relatedTarget:this._element}),a=g.Event(On.SHOW,{relatedTarget:i});if(i&&g(i).trigger(s),g(this._element).trigger(a),!a.isDefaultPrevented()&&!s.isDefaultPrevented()){o&&(t=document.querySelector(o)),this._activate(this._element,e);var l=function(){var t=g.Event(On.HIDDEN,{relatedTarget:n._element}),e=g.Event(On.SHOWN,{relatedTarget:i});g(i).trigger(t),g(n._element).trigger(e)};t?this._activate(t,t.parentNode,l):l()}}},t.dispose=function(){g.removeData(this._element,wn),this._element=null},t._activate=function(t,e,n){var i=this,o=(!e||"UL"!==e.nodeName&&"OL"!==e.nodeName?g(e).children(Fn):g(e).find(Un))[0],r=n&&o&&g(o).hasClass(jn),s=function(){return i._transitionComplete(t,o,n)};if(o&&r){var a=_.getTransitionDurationFromElement(o);g(o).removeClass(Hn).one(_.TRANSITION_END,s).emulateTransitionEnd(a)}else s()},t._transitionComplete=function(t,e,n){if(e){g(e).removeClass(Pn);var i=g(e.parentNode).find(Mn)[0];i&&g(i).removeClass(Pn),"tab"===e.getAttribute("role")&&e.setAttribute("aria-selected",!1)}if(g(t).addClass(Pn),"tab"===t.getAttribute("role")&&t.setAttribute("aria-selected",!0),_.reflow(t),t.classList.contains(jn)&&t.classList.add(Hn),t.parentNode&&g(t.parentNode).hasClass(kn)){var o=g(t).closest(Rn)[0];if(o){var r=[].slice.call(o.querySelectorAll(qn));g(r).addClass(Pn)}t.setAttribute("aria-expanded",!0)}n&&n()},i._jQueryInterface=function(n){return this.each(function(){var t=g(this),e=t.data(wn);if(e||(e=new i(this),t.data(wn,e)),"string"==typeof n){if("undefined"==typeof e[n])throw new TypeError('No method named "'+n+'"');e[n]()}})},s(i,null,[{key:"VERSION",get:function(){return"4.3.1"}}]),i}();g(document).on(On.CLICK_DATA_API,Wn,function(t){t.preventDefault(),Kn._jQueryInterface.call(g(this),"show")}),g.fn.tab=Kn._jQueryInterface,g.fn.tab.Constructor=Kn,g.fn.tab.noConflict=function(){return g.fn.tab=Nn,Kn._jQueryInterface};var Qn="toast",Bn="bs.toast",Vn="."+Bn,Yn=g.fn[Qn],zn={CLICK_DISMISS:"click.dismiss"+Vn,HIDE:"hide"+Vn,HIDDEN:"hidden"+Vn,SHOW:"show"+Vn,SHOWN:"shown"+Vn},Xn="fade",$n="hide",Gn="show",Jn="showing",Zn={animation:"boolean",autohide:"boolean",delay:"number"},ti={animation:!0,autohide:!0,delay:500},ei='[data-dismiss="toast"]',ni=function(){function i(t,e){this._element=t,this._config=this._getConfig(e),this._timeout=null,this._setListeners()}var t=i.prototype;return t.show=function(){var t=this;g(this._element).trigger(zn.SHOW),this._config.animation&&this._element.classList.add(Xn);var e=function(){t._element.classList.remove(Jn),t._element.classList.add(Gn),g(t._element).trigger(zn.SHOWN),t._config.autohide&&t.hide()};if(this._element.classList.remove($n),this._element.classList.add(Jn),this._config.animation){var n=_.getTransitionDurationFromElement(this._element);g(this._element).one(_.TRANSITION_END,e).emulateTransitionEnd(n)}else e()},t.hide=function(t){var e=this;this._element.classList.contains(Gn)&&(g(this._element).trigger(zn.HIDE),t?this._close():this._timeout=setTimeout(function(){e._close()},this._config.delay))},t.dispose=function(){clearTimeout(this._timeout),this._timeout=null,this._element.classList.contains(Gn)&&this._element.classList.remove(Gn),g(this._element).off(zn.CLICK_DISMISS),g.removeData(this._element,Bn),this._element=null,this._config=null},t._getConfig=function(t){return t=l({},ti,g(this._element).data(),"object"==typeof t&&t?t:{}),_.typeCheckConfig(Qn,t,this.constructor.DefaultType),t},t._setListeners=function(){var t=this;g(this._element).on(zn.CLICK_DISMISS,ei,function(){return t.hide(!0)})},t._close=function(){var t=this,e=function(){t._element.classList.add($n),g(t._element).trigger(zn.HIDDEN)};if(this._element.classList.remove(Gn),this._config.animation){var n=_.getTransitionDurationFromElement(this._element);g(this._element).one(_.TRANSITION_END,e).emulateTransitionEnd(n)}else e()},i._jQueryInterface=function(n){return this.each(function(){var t=g(this),e=t.data(Bn);if(e||(e=new i(this,"object"==typeof n&&n),t.data(Bn,e)),"string"==typeof n){if("undefined"==typeof e[n])throw new TypeError('No method named "'+n+'"');e[n](this)}})},s(i,null,[{key:"VERSION",get:function(){return"4.3.1"}},{key:"DefaultType",get:function(){return Zn}},{key:"Default",get:function(){return ti}}]),i}();g.fn[Qn]=ni._jQueryInterface,g.fn[Qn].Constructor=ni,g.fn[Qn].noConflict=function(){return g.fn[Qn]=Yn,ni._jQueryInterface},function(){if("undefined"==typeof g)throw new TypeError("Bootstrap's JavaScript requires jQuery. jQuery must be included before Bootstrap's JavaScript.");var t=g.fn.jquery.split(" ")[0].split(".");if(t[0]<2&&t[1]<9||1===t[0]&&9===t[1]&&t[2]<1||4<=t[0])throw new Error("Bootstrap's JavaScript requires at least jQuery v1.9.1 but less than v4.0.0")}(),t.Util=_,t.Alert=p,t.Button=P,t.Carousel=lt,t.Collapse=bt,t.Dropdown=Jt,t.Modal=ve,t.Popover=sn,t.Scrollspy=Dn,t.Tab=Kn,t.Toast=ni,t.Tooltip=Be,Object.defineProperty(t,"__esModule",{value:!0})});
+//# sourceMappingURL=bootstrap.min.js.map
\ No newline at end of file
diff --git a/public/static/home/assets/js/bootstrap.min.js.map b/public/static/home/assets/js/bootstrap.min.js.map
new file mode 100644
index 0000000..f33514f
--- /dev/null
+++ b/public/static/home/assets/js/bootstrap.min.js.map
@@ -0,0 +1 @@
+{"version":3,"sources":["../../js/src/util.js","../../js/src/alert.js","../../js/src/button.js","../../js/src/carousel.js","../../js/src/collapse.js","../../js/src/dropdown.js","../../js/src/modal.js","../../js/src/tools/sanitizer.js","../../js/src/tooltip.js","../../js/src/popover.js","../../js/src/scrollspy.js","../../js/src/tab.js","../../js/src/toast.js","../../js/src/index.js"],"names":["TRANSITION_END","transitionEndEmulator","duration","_this","this","called","$","one","Util","setTimeout","triggerTransitionEnd","getUID","prefix","Math","random","document","getElementById","getSelectorFromElement","element","selector","getAttribute","hrefAttr","trim","querySelector","err","getTransitionDurationFromElement","transitionDuration","css","transitionDelay","floatTransitionDuration","parseFloat","floatTransitionDelay","split","reflow","offsetHeight","trigger","supportsTransitionEnd","Boolean","isElement","obj","nodeType","typeCheckConfig","componentName","config","configTypes","property","Object","prototype","hasOwnProperty","call","expectedTypes","value","valueType","toString","match","toLowerCase","RegExp","test","Error","toUpperCase","findShadowRoot","documentElement","attachShadow","getRootNode","ShadowRoot","parentNode","root","fn","emulateTransitionEnd","event","special","bindType","delegateType","handle","target","is","handleObj","handler","apply","arguments","NAME","DATA_KEY","EVENT_KEY","JQUERY_NO_CONFLICT","Event","CLOSE","CLOSED","CLICK_DATA_API","ClassName","Alert","_element","close","rootElement","_getRootElement","_triggerCloseEvent","isDefaultPrevented","_removeElement","dispose","removeData","parent","closest","closeEvent","removeClass","hasClass","_destroyElement","detach","remove","_jQueryInterface","each","$element","data","_handleDismiss","alertInstance","preventDefault","on","Constructor","noConflict","DATA_API_KEY","Selector","FOCUS_BLUR_DATA_API","Button","toggle","triggerChangeEvent","addAriaPressed","input","type","checked","classList","contains","activeElement","hasAttribute","focus","setAttribute","toggleClass","button","Default","interval","keyboard","slide","pause","wrap","touch","DefaultType","Direction","SLIDE","SLID","KEYDOWN","MOUSEENTER","MOUSELEAVE","TOUCHSTART","TOUCHMOVE","TOUCHEND","POINTERDOWN","POINTERUP","DRAG_START","LOAD_DATA_API","PointerType","TOUCH","PEN","Carousel","_items","_interval","_activeElement","_isPaused","_isSliding","touchTimeout","touchStartX","touchDeltaX","_config","_getConfig","_indicatorsElement","_touchSupported","navigator","maxTouchPoints","_pointerEvent","window","PointerEvent","MSPointerEvent","_addEventListeners","next","_slide","nextWhenVisible","hidden","prev","cycle","clearInterval","setInterval","visibilityState","bind","to","index","activeIndex","_getItemIndex","length","direction","off","_objectSpread","_handleSwipe","absDeltax","abs","_this2","_keydown","_addTouchEventListeners","_this3","start","originalEvent","pointerType","clientX","touches","end","clearTimeout","querySelectorAll","e","add","tagName","which","slice","indexOf","_getItemByDirection","isNextDirection","isPrevDirection","lastItemIndex","itemIndex","_triggerSlideEvent","relatedTarget","eventDirectionName","targetIndex","fromIndex","slideEvent","from","_setActiveIndicatorElement","indicators","nextIndicator","children","addClass","directionalClassName","orderClassName","_this4","activeElementIndex","nextElement","nextElementIndex","isCycling","slidEvent","nextElementInterval","parseInt","defaultInterval","action","TypeError","ride","_dataApiClickHandler","slideIndex","carousels","i","len","$carousel","SHOW","SHOWN","HIDE","HIDDEN","Dimension","Collapse","_isTransitioning","_triggerArray","id","toggleList","elem","filterElement","filter","foundElem","_selector","push","_parent","_getParent","_addAriaAndCollapsedClass","hide","show","actives","activesData","not","startEvent","dimension","_getDimension","style","attr","setTransitioning","scrollSize","getBoundingClientRect","triggerArrayLength","isTransitioning","jquery","_getTargetFromElement","triggerArray","isOpen","$this","currentTarget","$trigger","selectors","$target","REGEXP_KEYDOWN","ARROW_UP_KEYCODE","CLICK","KEYDOWN_DATA_API","KEYUP_DATA_API","AttachmentMap","offset","flip","boundary","reference","display","Dropdown","_popper","_menu","_getMenuElement","_inNavbar","_detectNavbar","disabled","_getParentFromElement","isActive","_clearMenus","showEvent","Popper","referenceElement","_getPopperConfig","body","noop","hideEvent","destroy","update","scheduleUpdate","stopPropagation","constructor","_getPlacement","$parentDropdown","placement","_getOffset","offsets","popperConfig","modifiers","enabled","preventOverflow","boundariesElement","applyStyle","toggles","lowgo","clickEvent","dropdownMenu","_dataApiKeydownHandler","items","backdrop","FOCUSIN","RESIZE","CLICK_DISMISS","KEYDOWN_DISMISS","MOUSEUP_DISMISS","MOUSEDOWN_DISMISS","Modal","_dialog","_backdrop","_isShown","_isBodyOverflowing","_ignoreBackdropClick","_scrollbarWidth","_checkScrollbar","_setScrollbar","_adjustDialog","_setEscapeEvent","_setResizeEvent","_showBackdrop","_showElement","transition","_hideModal","forEach","htmlElement","handleUpdate","Node","ELEMENT_NODE","appendChild","removeAttribute","scrollTop","_enforceFocus","shownEvent","transitionComplete","has","_this5","_this6","_this7","_resetAdjustments","_resetScrollbar","_removeBackdrop","callback","_this8","animate","createElement","className","appendTo","backdropTransitionDuration","callbackRemove","isModalOverflowing","scrollHeight","clientHeight","paddingLeft","paddingRight","rect","left","right","innerWidth","_getScrollbarWidth","_this9","fixedContent","stickyContent","actualPadding","calculatedPadding","actualMargin","marginRight","calculatedMargin","padding","elements","margin","scrollDiv","scrollbarWidth","width","clientWidth","removeChild","_this10","uriAttrs","DefaultWhitelist","*","a","area","b","br","col","code","div","em","hr","h1","h2","h3","h4","h5","h6","img","li","ol","p","pre","s","small","span","sub","sup","strong","u","ul","SAFE_URL_PATTERN","DATA_URL_PATTERN","sanitizeHtml","unsafeHtml","whiteList","sanitizeFn","createdDocument","DOMParser","parseFromString","whitelistKeys","keys","_loop","el","elName","nodeName","attributeList","attributes","whitelistedAttributes","concat","allowedAttributeList","attrName","nodeValue","regExp","attrRegex","l","allowedAttribute","innerHTML","CLASS_PREFIX","BSCLS_PREFIX_REGEX","DISALLOWED_ATTRIBUTES","animation","template","title","delay","html","container","fallbackPlacement","sanitize","AUTO","TOP","RIGHT","BOTTOM","LEFT","HoverState","INSERTED","FOCUSOUT","Trigger","Tooltip","_isEnabled","_timeout","_hoverState","_activeTrigger","tip","_setListeners","enable","disable","toggleEnabled","dataKey","_getDelegateConfig","click","_isWithActiveTrigger","_enter","_leave","getTipElement","isWithContent","shadowRoot","isInTheDom","ownerDocument","tipId","setContent","attachment","_getAttachment","addAttachmentClass","_getContainer","behavior","arrow","onCreate","originalPlacement","_handlePopperPlacementChange","onUpdate","complete","_fixTransition","prevHoverState","_cleanTipClass","getTitle","setElementContent","content","text","empty","append","find","eventIn","eventOut","_fixTitle","titleType","dataAttributes","dataAttr","key","$tip","tabClass","join","popperData","popperInstance","instance","popper","initConfigAnimation","Popover","_getContent","method","ACTIVATE","SCROLL","OffsetMethod","ScrollSpy","_scrollElement","_offsets","_targets","_activeTarget","_scrollHeight","_process","refresh","autoMethod","offsetMethod","offsetBase","_getScrollTop","_getScrollHeight","map","targetSelector","targetBCR","height","top","item","sort","pageYOffset","max","_getOffsetHeight","innerHeight","maxScroll","_activate","_clear","queries","$link","parents","node","scrollSpys","$spy","Tab","previous","listElement","itemSelector","makeArray","hiddenEvent","active","_transitionComplete","dropdownChild","dropdownElement","dropdownToggleList","autohide","Toast","withoutTimeout","_close","version"],"mappings":";;;;;6/BAeA,IAAMA,EAAiB,gBAsBvB,SAASC,EAAsBC,GAAU,IAAAC,EAAAC,KACnCC,GAAS,EAYb,OAVAC,EAAEF,MAAMG,IAAIC,EAAKR,eAAgB,WAC/BK,GAAS,IAGXI,WAAW,WACJJ,GACHG,EAAKE,qBAAqBP,IAE3BD,GAEIE,KAcT,IAAMI,EAAO,CAEXR,eAAgB,kBAEhBW,OAJW,SAIJC,GACL,KAEEA,MAvDU,IAuDGC,KAAKC,UACXC,SAASC,eAAeJ,KACjC,OAAOA,GAGTK,uBAZW,SAYYC,GACrB,IAAIC,EAAWD,EAAQE,aAAa,eAEpC,IAAKD,GAAyB,MAAbA,EAAkB,CACjC,IAAME,EAAWH,EAAQE,aAAa,QACtCD,EAAWE,GAAyB,MAAbA,EAAmBA,EAASC,OAAS,GAG9D,IACE,OAAOP,SAASQ,cAAcJ,GAAYA,EAAW,KACrD,MAAOK,GACP,OAAO,OAIXC,iCA3BW,SA2BsBP,GAC/B,IAAKA,EACH,OAAO,EAIT,IAAIQ,EAAqBpB,EAAEY,GAASS,IAAI,uBACpCC,EAAkBtB,EAAEY,GAASS,IAAI,oBAE/BE,EAA0BC,WAAWJ,GACrCK,EAAuBD,WAAWF,GAGxC,OAAKC,GAA4BE,GAKjCL,EAAqBA,EAAmBM,MAAM,KAAK,GACnDJ,EAAkBA,EAAgBI,MAAM,KAAK,GA7FjB,KA+FpBF,WAAWJ,GAAsBI,WAAWF,KAP3C,GAUXK,OAnDW,SAmDJf,GACL,OAAOA,EAAQgB,cAGjBxB,qBAvDW,SAuDUQ,GACnBZ,EAAEY,GAASiB,QAAQnC,IAIrBoC,sBA5DW,WA6DT,OAAOC,QAAQrC,IAGjBsC,UAhEW,SAgEDC,GACR,OAAQA,EAAI,IAAMA,GAAKC,UAGzBC,gBApEW,SAoEKC,EAAeC,EAAQC,GACrC,IAAK,IAAMC,KAAYD,EACrB,GAAIE,OAAOC,UAAUC,eAAeC,KAAKL,EAAaC,GAAW,CAC/D,IAAMK,EAAgBN,EAAYC,GAC5BM,EAAgBR,EAAOE,GACvBO,EAAgBD,GAAS3C,EAAK8B,UAAUa,GAC1C,WAtHIZ,EAsHeY,EArHtB,GAAGE,SAASJ,KAAKV,GAAKe,MAAM,eAAe,GAAGC,eAuH/C,IAAK,IAAIC,OAAON,GAAeO,KAAKL,GAClC,MAAM,IAAIM,MACLhB,EAAciB,cAAjB,aACWd,EADX,oBACuCO,EADvC,wBAEsBF,EAFtB,MA1HZ,IAAgBX,GAkIdqB,eAtFW,SAsFI1C,GACb,IAAKH,SAAS8C,gBAAgBC,aAC5B,OAAO,KAIT,GAAmC,mBAAxB5C,EAAQ6C,YAKnB,OAAI7C,aAAmB8C,WACd9C,EAIJA,EAAQ+C,WAINzD,EAAKoD,eAAe1C,EAAQ+C,YAH1B,KAVP,IAAMC,EAAOhD,EAAQ6C,cACrB,OAAOG,aAAgBF,WAAaE,EAAO,OAxG/C5D,EAAE6D,GAAGC,qBAAuBnE,EAC5BK,EAAE+D,MAAMC,QAAQ9D,EAAKR,gBA9Bd,CACLuE,SAAUvE,EACVwE,aAAcxE,EACdyE,OAHK,SAGEJ,GACL,GAAI/D,EAAE+D,EAAMK,QAAQC,GAAGvE,MACrB,OAAOiE,EAAMO,UAAUC,QAAQC,MAAM1E,KAAM2E,aCdnD,IAAMC,EAAsB,QAEtBC,EAAsB,WACtBC,EAAS,IAAiBD,EAE1BE,EAAsB7E,EAAE6D,GAAGa,GAM3BI,EAAQ,CACZC,MAAK,QAAoBH,EACzBI,OAAM,SAAoBJ,EAC1BK,eAAc,QAAWL,EAVC,aAatBM,EACI,QADJA,EAEI,OAFJA,EAGI,OASJC,aACJ,SAAAA,EAAYvE,GACVd,KAAKsF,SAAWxE,6BAWlByE,MAAA,SAAMzE,GACJ,IAAI0E,EAAcxF,KAAKsF,SACnBxE,IACF0E,EAAcxF,KAAKyF,gBAAgB3E,IAGjBd,KAAK0F,mBAAmBF,GAE5BG,sBAIhB3F,KAAK4F,eAAeJ,MAGtBK,QAAA,WACE3F,EAAE4F,WAAW9F,KAAKsF,SAAUT,GAC5B7E,KAAKsF,SAAW,QAKlBG,gBAAA,SAAgB3E,GACd,IAAMC,EAAWX,EAAKS,uBAAuBC,GACzCiF,GAAa,EAUjB,OARIhF,IACFgF,EAASpF,SAASQ,cAAcJ,IAG7BgF,IACHA,EAAS7F,EAAEY,GAASkF,QAAX,IAAuBZ,GAAmB,IAG9CW,KAGTL,mBAAA,SAAmB5E,GACjB,IAAMmF,EAAa/F,EAAE8E,MAAMA,EAAMC,OAGjC,OADA/E,EAAEY,GAASiB,QAAQkE,GACZA,KAGTL,eAAA,SAAe9E,GAAS,IAAAf,EAAAC,KAGtB,GAFAE,EAAEY,GAASoF,YAAYd,GAElBlF,EAAEY,GAASqF,SAASf,GAAzB,CAKA,IAAM9D,EAAqBlB,EAAKiB,iCAAiCP,GAEjEZ,EAAEY,GACCX,IAAIC,EAAKR,eAAgB,SAACqE,GAAD,OAAWlE,EAAKqG,gBAAgBtF,EAASmD,KAClED,qBAAqB1C,QARtBtB,KAAKoG,gBAAgBtF,MAWzBsF,gBAAA,SAAgBtF,GACdZ,EAAEY,GACCuF,SACAtE,QAAQiD,EAAME,QACdoB,YAKEC,iBAAP,SAAwBhE,GACtB,OAAOvC,KAAKwG,KAAK,WACf,IAAMC,EAAWvG,EAAEF,MACf0G,EAAaD,EAASC,KAAK7B,GAE1B6B,IACHA,EAAO,IAAIrB,EAAMrF,MACjByG,EAASC,KAAK7B,EAAU6B,IAGX,UAAXnE,GACFmE,EAAKnE,GAAQvC,WAKZ2G,eAAP,SAAsBC,GACpB,OAAO,SAAU3C,GACXA,GACFA,EAAM4C,iBAGRD,EAAcrB,MAAMvF,gDA/FtB,MApCwB,iBA8I5BE,EAAES,UAAUmG,GACV9B,EAAMG,eAxII,yBA0IVE,EAAMsB,eAAe,IAAItB,IAS3BnF,EAAE6D,GAAGa,GAAoBS,EAAMkB,iBAC/BrG,EAAE6D,GAAGa,GAAMmC,YAAc1B,EACzBnF,EAAE6D,GAAGa,GAAMoC,WAAc,WAEvB,OADA9G,EAAE6D,GAAGa,GAAQG,EACNM,EAAMkB,kBChKf,IAAM3B,EAAsB,SAEtBC,EAAsB,YACtBC,EAAS,IAAiBD,EAC1BoC,EAAsB,YACtBlC,EAAsB7E,EAAE6D,GAAGa,GAE3BQ,EACK,SADLA,EAEK,MAFLA,EAGK,QAGL8B,EACiB,0BADjBA,EAEiB,0BAFjBA,EAGiB,6BAHjBA,EAIiB,UAJjBA,EAKiB,OAGjBlC,EAAQ,CACZG,eAAc,QAAgBL,EAAYmC,EAC1CE,oBAAsB,QAAQrC,EAAYmC,EAApB,QACSnC,EAAYmC,GASvCG,aACJ,SAAAA,EAAYtG,GACVd,KAAKsF,SAAWxE,6BAWlBuG,OAAA,WACE,IAAIC,GAAqB,EACrBC,GAAiB,EACf/B,EAActF,EAAEF,KAAKsF,UAAUU,QACnCkB,GACA,GAEF,GAAI1B,EAAa,CACf,IAAMgC,EAAQxH,KAAKsF,SAASnE,cAAc+F,GAE1C,GAAIM,EAAO,CACT,GAAmB,UAAfA,EAAMC,KACR,GAAID,EAAME,SACR1H,KAAKsF,SAASqC,UAAUC,SAASxC,GACjCkC,GAAqB,MAChB,CACL,IAAMO,EAAgBrC,EAAYrE,cAAc+F,GAE5CW,GACF3H,EAAE2H,GAAe3B,YAAYd,GAKnC,GAAIkC,EAAoB,CACtB,GAAIE,EAAMM,aAAa,aACrBtC,EAAYsC,aAAa,aACzBN,EAAMG,UAAUC,SAAS,aACzBpC,EAAYmC,UAAUC,SAAS,YAC/B,OAEFJ,EAAME,SAAW1H,KAAKsF,SAASqC,UAAUC,SAASxC,GAClDlF,EAAEsH,GAAOzF,QAAQ,UAGnByF,EAAMO,QACNR,GAAiB,GAIjBA,GACFvH,KAAKsF,SAAS0C,aAAa,gBACxBhI,KAAKsF,SAASqC,UAAUC,SAASxC,IAGlCkC,GACFpH,EAAEF,KAAKsF,UAAU2C,YAAY7C,MAIjCS,QAAA,WACE3F,EAAE4F,WAAW9F,KAAKsF,SAAUT,GAC5B7E,KAAKsF,SAAW,QAKXiB,iBAAP,SAAwBhE,GACtB,OAAOvC,KAAKwG,KAAK,WACf,IAAIE,EAAOxG,EAAEF,MAAM0G,KAAK7B,GAEnB6B,IACHA,EAAO,IAAIU,EAAOpH,MAClBE,EAAEF,MAAM0G,KAAK7B,EAAU6B,IAGV,WAAXnE,GACFmE,EAAKnE,gDAxET,MAxCwB,iBA4H5BrC,EAAES,UACCmG,GAAG9B,EAAMG,eAAgB+B,EAA6B,SAACjD,GACtDA,EAAM4C,iBAEN,IAAIqB,EAASjE,EAAMK,OAEdpE,EAAEgI,GAAQ/B,SAASf,KACtB8C,EAAShI,EAAEgI,GAAQlC,QAAQkB,IAG7BE,EAAOb,iBAAiB1D,KAAK3C,EAAEgI,GAAS,YAEzCpB,GAAG9B,EAAMmC,oBAAqBD,EAA6B,SAACjD,GAC3D,IAAMiE,EAAShI,EAAE+D,EAAMK,QAAQ0B,QAAQkB,GAAiB,GACxDhH,EAAEgI,GAAQD,YAAY7C,EAAiB,eAAe/B,KAAKY,EAAMwD,SASrEvH,EAAE6D,GAAGa,GAAQwC,EAAOb,iBACpBrG,EAAE6D,GAAGa,GAAMmC,YAAcK,EACzBlH,EAAE6D,GAAGa,GAAMoC,WAAa,WAEtB,OADA9G,EAAE6D,GAAGa,GAAQG,EACNqC,EAAOb,kBCvJhB,IAAM3B,EAAyB,WAEzBC,EAAyB,cACzBC,EAAS,IAAoBD,EAC7BoC,EAAyB,YACzBlC,EAAyB7E,EAAE6D,GAAGa,GAM9BuD,EAAU,CACdC,SAAW,IACXC,UAAW,EACXC,OAAW,EACXC,MAAW,QACXC,MAAW,EACXC,OAAW,GAGPC,EAAc,CAClBN,SAAW,mBACXC,SAAW,UACXC,MAAW,mBACXC,MAAW,mBACXC,KAAW,UACXC,MAAW,WAGPE,EACO,OADPA,EAEO,OAFPA,EAGO,OAHPA,EAIO,QAGP3D,EAAQ,CACZ4D,MAAK,QAAoB9D,EACzB+D,KAAI,OAAoB/D,EACxBgE,QAAO,UAAoBhE,EAC3BiE,WAAU,aAAoBjE,EAC9BkE,WAAU,aAAoBlE,EAC9BmE,WAAU,aAAoBnE,EAC9BoE,UAAS,YAAoBpE,EAC7BqE,SAAQ,WAAoBrE,EAC5BsE,YAAW,cAAoBtE,EAC/BuE,UAAS,YAAoBvE,EAC7BwE,WAAU,YAAmBxE,EAC7ByE,cAAa,OAAWzE,EAAYmC,EACpC9B,eAAc,QAAWL,EAAYmC,GAGjC7B,EACY,WADZA,EAEY,SAFZA,EAGY,QAHZA,EAIY,sBAJZA,EAKY,qBALZA,EAMY,qBANZA,EAOY,qBAPZA,EASY,gBAGZ8B,EACU,UADVA,GAEU,wBAFVA,GAGU,iBAHVA,GAIU,qBAJVA,GAKU,2CALVA,GAMU,uBANVA,GAOU,gCAPVA,GAQU,yBAGVsC,GAAc,CAClBC,MAAQ,QACRC,IAAQ,OAQJC,cACJ,SAAAA,EAAY7I,EAASyB,GACnBvC,KAAK4J,OAAiB,KACtB5J,KAAK6J,UAAiB,KACtB7J,KAAK8J,eAAiB,KACtB9J,KAAK+J,WAAiB,EACtB/J,KAAKgK,YAAiB,EACtBhK,KAAKiK,aAAiB,KACtBjK,KAAKkK,YAAiB,EACtBlK,KAAKmK,YAAiB,EAEtBnK,KAAKoK,QAAqBpK,KAAKqK,WAAW9H,GAC1CvC,KAAKsF,SAAqBxE,EAC1Bd,KAAKsK,mBAAqBtK,KAAKsF,SAASnE,cAAc+F,IACtDlH,KAAKuK,gBAAqB,iBAAkB5J,SAAS8C,iBAA8C,EAA3B+G,UAAUC,eAClFzK,KAAK0K,cAAqBzI,QAAQ0I,OAAOC,cAAgBD,OAAOE,gBAEhE7K,KAAK8K,gDAePC,KAAA,WACO/K,KAAKgK,YACRhK,KAAKgL,OAAOrC,MAIhBsC,gBAAA,YAGOtK,SAASuK,QACXhL,EAAEF,KAAKsF,UAAUf,GAAG,aAAsD,WAAvCrE,EAAEF,KAAKsF,UAAU/D,IAAI,eACzDvB,KAAK+K,UAITI,KAAA,WACOnL,KAAKgK,YACRhK,KAAKgL,OAAOrC,MAIhBJ,MAAA,SAAMtE,GACCA,IACHjE,KAAK+J,WAAY,GAGf/J,KAAKsF,SAASnE,cAAc+F,MAC9B9G,EAAKE,qBAAqBN,KAAKsF,UAC/BtF,KAAKoL,OAAM,IAGbC,cAAcrL,KAAK6J,WACnB7J,KAAK6J,UAAY,QAGnBuB,MAAA,SAAMnH,GACCA,IACHjE,KAAK+J,WAAY,GAGf/J,KAAK6J,YACPwB,cAAcrL,KAAK6J,WACnB7J,KAAK6J,UAAY,MAGf7J,KAAKoK,QAAQhC,WAAapI,KAAK+J,YACjC/J,KAAK6J,UAAYyB,aACd3K,SAAS4K,gBAAkBvL,KAAKiL,gBAAkBjL,KAAK+K,MAAMS,KAAKxL,MACnEA,KAAKoK,QAAQhC,cAKnBqD,GAAA,SAAGC,GAAO,IAAA3L,EAAAC,KACRA,KAAK8J,eAAiB9J,KAAKsF,SAASnE,cAAc+F,IAElD,IAAMyE,EAAc3L,KAAK4L,cAAc5L,KAAK8J,gBAE5C,KAAI4B,EAAQ1L,KAAK4J,OAAOiC,OAAS,GAAKH,EAAQ,GAI9C,GAAI1L,KAAKgK,WACP9J,EAAEF,KAAKsF,UAAUnF,IAAI6E,EAAM6D,KAAM,WAAA,OAAM9I,EAAK0L,GAAGC,SADjD,CAKA,GAAIC,IAAgBD,EAGlB,OAFA1L,KAAKuI,aACLvI,KAAKoL,QAIP,IAAMU,EAAoBH,EAARD,EACd/C,EACAA,EAEJ3I,KAAKgL,OAAOc,EAAW9L,KAAK4J,OAAO8B,QAGrC7F,QAAA,WACE3F,EAAEF,KAAKsF,UAAUyG,IAAIjH,GACrB5E,EAAE4F,WAAW9F,KAAKsF,SAAUT,GAE5B7E,KAAK4J,OAAqB,KAC1B5J,KAAKoK,QAAqB,KAC1BpK,KAAKsF,SAAqB,KAC1BtF,KAAK6J,UAAqB,KAC1B7J,KAAK+J,UAAqB,KAC1B/J,KAAKgK,WAAqB,KAC1BhK,KAAK8J,eAAqB,KAC1B9J,KAAKsK,mBAAqB,QAK5BD,WAAA,SAAW9H,GAMT,OALAA,EAAMyJ,EAAA,GACD7D,EACA5F,GAELnC,EAAKiC,gBAAgBuC,EAAMrC,EAAQmG,GAC5BnG,KAGT0J,aAAA,WACE,IAAMC,EAAYzL,KAAK0L,IAAInM,KAAKmK,aAEhC,KAAI+B,GAxNuB,IAwN3B,CAIA,IAAMJ,EAAYI,EAAYlM,KAAKmK,YAGnB,EAAZ2B,GACF9L,KAAKmL,OAIHW,EAAY,GACd9L,KAAK+K,WAITD,mBAAA,WAAqB,IAAAsB,EAAApM,KACfA,KAAKoK,QAAQ/B,UACfnI,EAAEF,KAAKsF,UACJwB,GAAG9B,EAAM8D,QAAS,SAAC7E,GAAD,OAAWmI,EAAKC,SAASpI,KAGrB,UAAvBjE,KAAKoK,QAAQ7B,OACfrI,EAAEF,KAAKsF,UACJwB,GAAG9B,EAAM+D,WAAY,SAAC9E,GAAD,OAAWmI,EAAK7D,MAAMtE,KAC3C6C,GAAG9B,EAAMgE,WAAY,SAAC/E,GAAD,OAAWmI,EAAKhB,MAAMnH,KAG5CjE,KAAKoK,QAAQ3B,OACfzI,KAAKsM,6BAITA,wBAAA,WAA0B,IAAAC,EAAAvM,KACxB,GAAKA,KAAKuK,gBAAV,CAIA,IAAMiC,EAAQ,SAACvI,GACTsI,EAAK7B,eAAiBlB,GAAYvF,EAAMwI,cAAcC,YAAYnJ,eACpEgJ,EAAKrC,YAAcjG,EAAMwI,cAAcE,QAC7BJ,EAAK7B,gBACf6B,EAAKrC,YAAcjG,EAAMwI,cAAcG,QAAQ,GAAGD,UAahDE,EAAM,SAAC5I,GACPsI,EAAK7B,eAAiBlB,GAAYvF,EAAMwI,cAAcC,YAAYnJ,iBACpEgJ,EAAKpC,YAAclG,EAAMwI,cAAcE,QAAUJ,EAAKrC,aAGxDqC,EAAKN,eACsB,UAAvBM,EAAKnC,QAAQ7B,QASfgE,EAAKhE,QACDgE,EAAKtC,cACP6C,aAAaP,EAAKtC,cAEpBsC,EAAKtC,aAAe5J,WAAW,SAAC4D,GAAD,OAAWsI,EAAKnB,MAAMnH,IApS9B,IAoS+DsI,EAAKnC,QAAQhC,YAIvGlI,EAAEF,KAAKsF,SAASyH,iBAAiB7F,KAAoBJ,GAAG9B,EAAMsE,WAAY,SAAC0D,GAAD,OAAOA,EAAEnG,mBAC/E7G,KAAK0K,eACPxK,EAAEF,KAAKsF,UAAUwB,GAAG9B,EAAMoE,YAAa,SAACnF,GAAD,OAAWuI,EAAMvI,KACxD/D,EAAEF,KAAKsF,UAAUwB,GAAG9B,EAAMqE,UAAW,SAACpF,GAAD,OAAW4I,EAAI5I,KAEpDjE,KAAKsF,SAASqC,UAAUsF,IAAI7H,KAE5BlF,EAAEF,KAAKsF,UAAUwB,GAAG9B,EAAMiE,WAAY,SAAChF,GAAD,OAAWuI,EAAMvI,KACvD/D,EAAEF,KAAKsF,UAAUwB,GAAG9B,EAAMkE,UAAW,SAACjF,GAxC3B,IAACA,GAAAA,EAwCyCA,GAtC3CwI,cAAcG,SAAgD,EAArC3I,EAAMwI,cAAcG,QAAQf,OAC7DU,EAAKpC,YAAc,EAEnBoC,EAAKpC,YAAclG,EAAMwI,cAAcG,QAAQ,GAAGD,QAAUJ,EAAKrC,cAoCnEhK,EAAEF,KAAKsF,UAAUwB,GAAG9B,EAAMmE,SAAU,SAAClF,GAAD,OAAW4I,EAAI5I,UAIvDoI,SAAA,SAASpI,GACP,IAAI,kBAAkBZ,KAAKY,EAAMK,OAAO4I,SAIxC,OAAQjJ,EAAMkJ,OACZ,KA7TyB,GA8TvBlJ,EAAM4C,iBACN7G,KAAKmL,OACL,MACF,KAhUyB,GAiUvBlH,EAAM4C,iBACN7G,KAAK+K,WAMXa,cAAA,SAAc9K,GAIZ,OAHAd,KAAK4J,OAAS9I,GAAWA,EAAQ+C,WAC7B,GAAGuJ,MAAMvK,KAAK/B,EAAQ+C,WAAWkJ,iBAAiB7F,KAClD,GACGlH,KAAK4J,OAAOyD,QAAQvM,MAG7BwM,oBAAA,SAAoBxB,EAAWjE,GAC7B,IAAM0F,EAAkBzB,IAAcnD,EAChC6E,EAAkB1B,IAAcnD,EAChCgD,EAAkB3L,KAAK4L,cAAc/D,GACrC4F,EAAkBzN,KAAK4J,OAAOiC,OAAS,EAI7C,IAHwB2B,GAAmC,IAAhB7B,GACnB4B,GAAmB5B,IAAgB8B,KAErCzN,KAAKoK,QAAQ5B,KACjC,OAAOX,EAGT,IACM6F,GAAa/B,GADDG,IAAcnD,GAAkB,EAAI,IACZ3I,KAAK4J,OAAOiC,OAEtD,OAAsB,IAAf6B,EACH1N,KAAK4J,OAAO5J,KAAK4J,OAAOiC,OAAS,GAAK7L,KAAK4J,OAAO8D,MAGxDC,mBAAA,SAAmBC,EAAeC,GAChC,IAAMC,EAAc9N,KAAK4L,cAAcgC,GACjCG,EAAY/N,KAAK4L,cAAc5L,KAAKsF,SAASnE,cAAc+F,KAC3D8G,EAAa9N,EAAE8E,MAAMA,EAAM4D,MAAO,CACtCgF,cAAAA,EACA9B,UAAW+B,EACXI,KAAMF,EACNtC,GAAIqC,IAKN,OAFA5N,EAAEF,KAAKsF,UAAUvD,QAAQiM,GAElBA,KAGTE,2BAAA,SAA2BpN,GACzB,GAAId,KAAKsK,mBAAoB,CAC3B,IAAM6D,EAAa,GAAGf,MAAMvK,KAAK7C,KAAKsK,mBAAmByC,iBAAiB7F,IAC1EhH,EAAEiO,GACCjI,YAAYd,GAEf,IAAMgJ,EAAgBpO,KAAKsK,mBAAmB+D,SAC5CrO,KAAK4L,cAAc9K,IAGjBsN,GACFlO,EAAEkO,GAAeE,SAASlJ,OAKhC4F,OAAA,SAAOc,EAAWhL,GAAS,IAQrByN,EACAC,EACAX,EAVqBY,EAAAzO,KACnB6H,EAAgB7H,KAAKsF,SAASnE,cAAc+F,IAC5CwH,EAAqB1O,KAAK4L,cAAc/D,GACxC8G,EAAgB7N,GAAW+G,GAC/B7H,KAAKsN,oBAAoBxB,EAAWjE,GAChC+G,EAAmB5O,KAAK4L,cAAc+C,GACtCE,EAAY5M,QAAQjC,KAAK6J,WAgB/B,GAPEgE,EAHE/B,IAAcnD,GAChB4F,EAAuBnJ,EACvBoJ,EAAiBpJ,EACIuD,IAErB4F,EAAuBnJ,EACvBoJ,EAAiBpJ,EACIuD,GAGnBgG,GAAezO,EAAEyO,GAAaxI,SAASf,GACzCpF,KAAKgK,YAAa,OAKpB,IADmBhK,KAAK2N,mBAAmBgB,EAAad,GACzClI,sBAIVkC,GAAkB8G,EAAvB,CAKA3O,KAAKgK,YAAa,EAEd6E,GACF7O,KAAKuI,QAGPvI,KAAKkO,2BAA2BS,GAEhC,IAAMG,EAAY5O,EAAE8E,MAAMA,EAAM6D,KAAM,CACpC+E,cAAee,EACf7C,UAAW+B,EACXI,KAAMS,EACNjD,GAAImD,IAGN,GAAI1O,EAAEF,KAAKsF,UAAUa,SAASf,GAAkB,CAC9ClF,EAAEyO,GAAaL,SAASE,GAExBpO,EAAKyB,OAAO8M,GAEZzO,EAAE2H,GAAeyG,SAASC,GAC1BrO,EAAEyO,GAAaL,SAASC,GAExB,IAAMQ,EAAsBC,SAASL,EAAY3N,aAAa,iBAAkB,IAG9EhB,KAAKoK,QAAQhC,SAFX2G,GACF/O,KAAKoK,QAAQ6E,gBAAkBjP,KAAKoK,QAAQ6E,iBAAmBjP,KAAKoK,QAAQhC,SACpD2G,GAEA/O,KAAKoK,QAAQ6E,iBAAmBjP,KAAKoK,QAAQhC,SAGvE,IAAM9G,EAAqBlB,EAAKiB,iCAAiCwG,GAEjE3H,EAAE2H,GACC1H,IAAIC,EAAKR,eAAgB,WACxBM,EAAEyO,GACCzI,YAAeqI,EADlB,IAC0CC,GACvCF,SAASlJ,GAEZlF,EAAE2H,GAAe3B,YAAed,EAAhC,IAAoDoJ,EAApD,IAAsED,GAEtEE,EAAKzE,YAAa,EAElB3J,WAAW,WAAA,OAAMH,EAAEuO,EAAKnJ,UAAUvD,QAAQ+M,IAAY,KAEvD9K,qBAAqB1C,QAExBpB,EAAE2H,GAAe3B,YAAYd,GAC7BlF,EAAEyO,GAAaL,SAASlJ,GAExBpF,KAAKgK,YAAa,EAClB9J,EAAEF,KAAKsF,UAAUvD,QAAQ+M,GAGvBD,GACF7O,KAAKoL,YAMF7E,iBAAP,SAAwBhE,GACtB,OAAOvC,KAAKwG,KAAK,WACf,IAAIE,EAAOxG,EAAEF,MAAM0G,KAAK7B,GACpBuF,EAAO4B,EAAA,GACN7D,EACAjI,EAAEF,MAAM0G,QAGS,iBAAXnE,IACT6H,EAAO4B,EAAA,GACF5B,EACA7H,IAIP,IAAM2M,EAA2B,iBAAX3M,EAAsBA,EAAS6H,EAAQ9B,MAO7D,GALK5B,IACHA,EAAO,IAAIiD,EAAS3J,KAAMoK,GAC1BlK,EAAEF,MAAM0G,KAAK7B,EAAU6B,IAGH,iBAAXnE,EACTmE,EAAK+E,GAAGlJ,QACH,GAAsB,iBAAX2M,EAAqB,CACrC,GAA4B,oBAAjBxI,EAAKwI,GACd,MAAM,IAAIC,UAAJ,oBAAkCD,EAAlC,KAERxI,EAAKwI,UACI9E,EAAQhC,UAAYgC,EAAQgF,OACrC1I,EAAK6B,QACL7B,EAAK0E,cAKJiE,qBAAP,SAA4BpL,GAC1B,IAAMlD,EAAWX,EAAKS,uBAAuBb,MAE7C,GAAKe,EAAL,CAIA,IAAMuD,EAASpE,EAAEa,GAAU,GAE3B,GAAKuD,GAAWpE,EAAEoE,GAAQ6B,SAASf,GAAnC,CAIA,IAAM7C,EAAMyJ,EAAA,GACP9L,EAAEoE,GAAQoC,OACVxG,EAAEF,MAAM0G,QAEP4I,EAAatP,KAAKgB,aAAa,iBAEjCsO,IACF/M,EAAO6F,UAAW,GAGpBuB,EAASpD,iBAAiB1D,KAAK3C,EAAEoE,GAAS/B,GAEtC+M,GACFpP,EAAEoE,GAAQoC,KAAK7B,GAAU4G,GAAG6D,GAG9BrL,EAAM4C,4DA/bN,MA3G2B,wCA+G3B,OAAOsB,WAqcXjI,EAAES,UACCmG,GAAG9B,EAAMG,eAAgB+B,GAAqByC,GAAS0F,sBAE1DnP,EAAEyK,QAAQ7D,GAAG9B,EAAMuE,cAAe,WAEhC,IADA,IAAMgG,EAAY,GAAGnC,MAAMvK,KAAKlC,SAASoM,iBAAiB7F,KACjDsI,EAAI,EAAGC,EAAMF,EAAU1D,OAAQ2D,EAAIC,EAAKD,IAAK,CACpD,IAAME,EAAYxP,EAAEqP,EAAUC,IAC9B7F,GAASpD,iBAAiB1D,KAAK6M,EAAWA,EAAUhJ,WAUxDxG,EAAE6D,GAAGa,GAAQ+E,GAASpD,iBACtBrG,EAAE6D,GAAGa,GAAMmC,YAAc4C,GACzBzJ,EAAE6D,GAAGa,GAAMoC,WAAa,WAEtB,OADA9G,EAAE6D,GAAGa,GAAQG,EACN4E,GAASpD,kBC1kBlB,IAAM3B,GAAsB,WAEtBC,GAAsB,cACtBC,GAAS,IAAiBD,GAE1BE,GAAsB7E,EAAE6D,GAAGa,IAE3BuD,GAAU,CACdd,QAAS,EACTtB,OAAS,IAGL2C,GAAc,CAClBrB,OAAS,UACTtB,OAAS,oBAGLf,GAAQ,CACZ2K,KAAI,OAAoB7K,GACxB8K,MAAK,QAAoB9K,GACzB+K,KAAI,OAAoB/K,GACxBgL,OAAM,SAAoBhL,GAC1BK,eAAc,QAAWL,GAlBC,aAqBtBM,GACS,OADTA,GAES,WAFTA,GAGS,aAHTA,GAIS,YAGT2K,GACK,QADLA,GAEK,SAGL7I,GACU,qBADVA,GAEU,2BASV8I,cACJ,SAAAA,EAAYlP,EAASyB,GACnBvC,KAAKiQ,kBAAmB,EACxBjQ,KAAKsF,SAAmBxE,EACxBd,KAAKoK,QAAmBpK,KAAKqK,WAAW9H,GACxCvC,KAAKkQ,cAAmB,GAAG9C,MAAMvK,KAAKlC,SAASoM,iBAC7C,mCAAmCjM,EAAQqP,GAA3C,6CAC0CrP,EAAQqP,GADlD,OAKF,IADA,IAAMC,EAAa,GAAGhD,MAAMvK,KAAKlC,SAASoM,iBAAiB7F,KAClDsI,EAAI,EAAGC,EAAMW,EAAWvE,OAAQ2D,EAAIC,EAAKD,IAAK,CACrD,IAAMa,EAAOD,EAAWZ,GAClBzO,EAAWX,EAAKS,uBAAuBwP,GACvCC,EAAgB,GAAGlD,MAAMvK,KAAKlC,SAASoM,iBAAiBhM,IAC3DwP,OAAO,SAACC,GAAD,OAAeA,IAAc1P,IAEtB,OAAbC,GAA4C,EAAvBuP,EAAczE,SACrC7L,KAAKyQ,UAAY1P,EACjBf,KAAKkQ,cAAcQ,KAAKL,IAI5BrQ,KAAK2Q,QAAU3Q,KAAKoK,QAAQrE,OAAS/F,KAAK4Q,aAAe,KAEpD5Q,KAAKoK,QAAQrE,QAChB/F,KAAK6Q,0BAA0B7Q,KAAKsF,SAAUtF,KAAKkQ,eAGjDlQ,KAAKoK,QAAQ/C,QACfrH,KAAKqH,oCAgBTA,OAAA,WACMnH,EAAEF,KAAKsF,UAAUa,SAASf,IAC5BpF,KAAK8Q,OAEL9Q,KAAK+Q,UAITA,KAAA,WAAO,IAMDC,EACAC,EAPClR,EAAAC,KACL,IAAIA,KAAKiQ,mBACP/P,EAAEF,KAAKsF,UAAUa,SAASf,MAOxBpF,KAAK2Q,SAUgB,KATvBK,EAAU,GAAG5D,MAAMvK,KAAK7C,KAAK2Q,QAAQ5D,iBAAiB7F,KACnDqJ,OAAO,SAACF,GACP,MAAmC,iBAAxBtQ,EAAKqK,QAAQrE,OACfsK,EAAKrP,aAAa,iBAAmBjB,EAAKqK,QAAQrE,OAGpDsK,EAAK1I,UAAUC,SAASxC,OAGvByG,SACVmF,EAAU,QAIVA,IACFC,EAAc/Q,EAAE8Q,GAASE,IAAIlR,KAAKyQ,WAAW/J,KAAK7B,MAC/BoM,EAAYhB,mBAFjC,CAOA,IAAMkB,EAAajR,EAAE8E,MAAMA,GAAM2K,MAEjC,GADAzP,EAAEF,KAAKsF,UAAUvD,QAAQoP,IACrBA,EAAWxL,qBAAf,CAIIqL,IACFhB,EAASzJ,iBAAiB1D,KAAK3C,EAAE8Q,GAASE,IAAIlR,KAAKyQ,WAAY,QAC1DQ,GACH/Q,EAAE8Q,GAAStK,KAAK7B,GAAU,OAI9B,IAAMuM,EAAYpR,KAAKqR,gBAEvBnR,EAAEF,KAAKsF,UACJY,YAAYd,IACZkJ,SAASlJ,IAEZpF,KAAKsF,SAASgM,MAAMF,GAAa,EAE7BpR,KAAKkQ,cAAcrE,QACrB3L,EAAEF,KAAKkQ,eACJhK,YAAYd,IACZmM,KAAK,iBAAiB,GAG3BvR,KAAKwR,kBAAiB,GAEtB,IAcMC,EAAU,UADaL,EAAU,GAAG7N,cAAgB6N,EAAUhE,MAAM,IAEpE9L,EAAqBlB,EAAKiB,iCAAiCrB,KAAKsF,UAEtEpF,EAAEF,KAAKsF,UACJnF,IAAIC,EAAKR,eAlBK,WACfM,EAAEH,EAAKuF,UACJY,YAAYd,IACZkJ,SAASlJ,IACTkJ,SAASlJ,IAEZrF,EAAKuF,SAASgM,MAAMF,GAAa,GAEjCrR,EAAKyR,kBAAiB,GAEtBtR,EAAEH,EAAKuF,UAAUvD,QAAQiD,GAAM4K,SAS9B5L,qBAAqB1C,GAExBtB,KAAKsF,SAASgM,MAAMF,GAAgBpR,KAAKsF,SAASmM,GAAlD,UAGFX,KAAA,WAAO,IAAA1E,EAAApM,KACL,IAAIA,KAAKiQ,kBACN/P,EAAEF,KAAKsF,UAAUa,SAASf,IAD7B,CAKA,IAAM+L,EAAajR,EAAE8E,MAAMA,GAAM6K,MAEjC,GADA3P,EAAEF,KAAKsF,UAAUvD,QAAQoP,IACrBA,EAAWxL,qBAAf,CAIA,IAAMyL,EAAYpR,KAAKqR,gBAEvBrR,KAAKsF,SAASgM,MAAMF,GAAgBpR,KAAKsF,SAASoM,wBAAwBN,GAA1E,KAEAhR,EAAKyB,OAAO7B,KAAKsF,UAEjBpF,EAAEF,KAAKsF,UACJgJ,SAASlJ,IACTc,YAAYd,IACZc,YAAYd,IAEf,IAAMuM,EAAqB3R,KAAKkQ,cAAcrE,OAC9C,GAAyB,EAArB8F,EACF,IAAK,IAAInC,EAAI,EAAGA,EAAImC,EAAoBnC,IAAK,CAC3C,IAAMzN,EAAU/B,KAAKkQ,cAAcV,GAC7BzO,EAAWX,EAAKS,uBAAuBkB,GAE7C,GAAiB,OAAbhB,EACYb,EAAE,GAAGkN,MAAMvK,KAAKlC,SAASoM,iBAAiBhM,KAC7CoF,SAASf,KAClBlF,EAAE6B,GAASuM,SAASlJ,IACjBmM,KAAK,iBAAiB,GAMjCvR,KAAKwR,kBAAiB,GAUtBxR,KAAKsF,SAASgM,MAAMF,GAAa,GACjC,IAAM9P,EAAqBlB,EAAKiB,iCAAiCrB,KAAKsF,UAEtEpF,EAAEF,KAAKsF,UACJnF,IAAIC,EAAKR,eAZK,WACfwM,EAAKoF,kBAAiB,GACtBtR,EAAEkM,EAAK9G,UACJY,YAAYd,IACZkJ,SAASlJ,IACTrD,QAAQiD,GAAM8K,UAQhB9L,qBAAqB1C,QAG1BkQ,iBAAA,SAAiBI,GACf5R,KAAKiQ,iBAAmB2B,KAG1B/L,QAAA,WACE3F,EAAE4F,WAAW9F,KAAKsF,SAAUT,IAE5B7E,KAAKoK,QAAmB,KACxBpK,KAAK2Q,QAAmB,KACxB3Q,KAAKsF,SAAmB,KACxBtF,KAAKkQ,cAAmB,KACxBlQ,KAAKiQ,iBAAmB,QAK1B5F,WAAA,SAAW9H,GAOT,OANAA,EAAMyJ,EAAA,GACD7D,GACA5F,IAEE8E,OAASpF,QAAQM,EAAO8E,QAC/BjH,EAAKiC,gBAAgBuC,GAAMrC,EAAQmG,IAC5BnG,KAGT8O,cAAA,WAEE,OADiBnR,EAAEF,KAAKsF,UAAUa,SAAS4J,IACzBA,GAAkBA,MAGtCa,WAAA,WAAa,IACP7K,EADOwG,EAAAvM,KAGPI,EAAK8B,UAAUlC,KAAKoK,QAAQrE,SAC9BA,EAAS/F,KAAKoK,QAAQrE,OAGoB,oBAA/B/F,KAAKoK,QAAQrE,OAAO8L,SAC7B9L,EAAS/F,KAAKoK,QAAQrE,OAAO,KAG/BA,EAASpF,SAASQ,cAAcnB,KAAKoK,QAAQrE,QAG/C,IAAMhF,EAAQ,yCAC6Bf,KAAKoK,QAAQrE,OAD1C,KAGRsI,EAAW,GAAGjB,MAAMvK,KAAKkD,EAAOgH,iBAAiBhM,IAQvD,OAPAb,EAAEmO,GAAU7H,KAAK,SAACgJ,EAAG1O,GACnByL,EAAKsE,0BACHb,EAAS8B,sBAAsBhR,GAC/B,CAACA,MAIEiF,KAGT8K,0BAAA,SAA0B/P,EAASiR,GACjC,IAAMC,EAAS9R,EAAEY,GAASqF,SAASf,IAE/B2M,EAAalG,QACf3L,EAAE6R,GACC9J,YAAY7C,IAAsB4M,GAClCT,KAAK,gBAAiBS,MAMtBF,sBAAP,SAA6BhR,GAC3B,IAAMC,EAAWX,EAAKS,uBAAuBC,GAC7C,OAAOC,EAAWJ,SAASQ,cAAcJ,GAAY,QAGhDwF,iBAAP,SAAwBhE,GACtB,OAAOvC,KAAKwG,KAAK,WACf,IAAMyL,EAAU/R,EAAEF,MACd0G,EAAYuL,EAAMvL,KAAK7B,IACrBuF,EAAO4B,EAAA,GACR7D,GACA8J,EAAMvL,OACY,iBAAXnE,GAAuBA,EAASA,EAAS,IAYrD,IATKmE,GAAQ0D,EAAQ/C,QAAU,YAAYhE,KAAKd,KAC9C6H,EAAQ/C,QAAS,GAGdX,IACHA,EAAO,IAAIsJ,EAAShQ,KAAMoK,GAC1B6H,EAAMvL,KAAK7B,GAAU6B,IAGD,iBAAXnE,EAAqB,CAC9B,GAA4B,oBAAjBmE,EAAKnE,GACd,MAAM,IAAI4M,UAAJ,oBAAkC5M,EAAlC,KAERmE,EAAKnE,iDAjQT,MApFwB,wCAwFxB,OAAO4F,YAyQXjI,EAAES,UAAUmG,GAAG9B,GAAMG,eAAgB+B,GAAsB,SAAUjD,GAE/B,MAAhCA,EAAMiO,cAAchF,SACtBjJ,EAAM4C,iBAGR,IAAMsL,EAAWjS,EAAEF,MACbe,EAAWX,EAAKS,uBAAuBb,MACvCoS,EAAY,GAAGhF,MAAMvK,KAAKlC,SAASoM,iBAAiBhM,IAE1Db,EAAEkS,GAAW5L,KAAK,WAChB,IAAM6L,EAAUnS,EAAEF,MAEZuC,EADU8P,EAAQ3L,KAAK7B,IACN,SAAWsN,EAASzL,OAC3CsJ,GAASzJ,iBAAiB1D,KAAKwP,EAAS9P,OAU5CrC,EAAE6D,GAAGa,IAAQoL,GAASzJ,iBACtBrG,EAAE6D,GAAGa,IAAMmC,YAAciJ,GACzB9P,EAAE6D,GAAGa,IAAMoC,WAAa,WAEtB,OADA9G,EAAE6D,GAAGa,IAAQG,GACNiL,GAASzJ,kBC7XlB,IAAM3B,GAA2B,WAE3BC,GAA2B,cAC3BC,GAAS,IAAsBD,GAC/BoC,GAA2B,YAC3BlC,GAA2B7E,EAAE6D,GAAGa,IAOhC0N,GAA2B,IAAIlP,OAAUmP,YAEzCvN,GAAQ,CACZ6K,KAAI,OAAsB/K,GAC1BgL,OAAM,SAAsBhL,GAC5B6K,KAAI,OAAsB7K,GAC1B8K,MAAK,QAAsB9K,GAC3B0N,MAAK,QAAsB1N,GAC3BK,eAAc,QAAaL,GAAYmC,GACvCwL,iBAAgB,UAAa3N,GAAYmC,GACzCyL,eAAc,QAAa5N,GAAYmC,IAGnC7B,GACc,WADdA,GAEc,OAFdA,GAGc,SAHdA,GAIc,YAJdA,GAKc,WALdA,GAMc,sBANdA,GAQc,kBAGd8B,GACY,2BADZA,GAEY,iBAFZA,GAGY,iBAHZA,GAIY,cAJZA,GAKY,8DAGZyL,GACQ,YADRA,GAEQ,UAFRA,GAGQ,eAHRA,GAIQ,aAJRA,GAKQ,cALRA,GAOQ,aAIRxK,GAAU,CACdyK,OAAY,EACZC,MAAY,EACZC,SAAY,eACZC,UAAY,SACZC,QAAY,WAGRtK,GAAc,CAClBkK,OAAY,2BACZC,KAAY,UACZC,SAAY,mBACZC,UAAY,mBACZC,QAAY,UASRC,cACJ,SAAAA,EAAYnS,EAASyB,GACnBvC,KAAKsF,SAAYxE,EACjBd,KAAKkT,QAAY,KACjBlT,KAAKoK,QAAYpK,KAAKqK,WAAW9H,GACjCvC,KAAKmT,MAAYnT,KAAKoT,kBACtBpT,KAAKqT,UAAYrT,KAAKsT,gBAEtBtT,KAAK8K,gDAmBPzD,OAAA,WACE,IAAIrH,KAAKsF,SAASiO,WAAYrT,EAAEF,KAAKsF,UAAUa,SAASf,IAAxD,CAIA,IAAMW,EAAWkN,EAASO,sBAAsBxT,KAAKsF,UAC/CmO,EAAWvT,EAAEF,KAAKmT,OAAOhN,SAASf,IAIxC,GAFA6N,EAASS,eAELD,EAAJ,CAIA,IAAM7F,EAAgB,CACpBA,cAAe5N,KAAKsF,UAEhBqO,EAAYzT,EAAE8E,MAAMA,GAAM2K,KAAM/B,GAItC,GAFA1N,EAAE6F,GAAQhE,QAAQ4R,IAEdA,EAAUhO,qBAAd,CAKA,IAAK3F,KAAKqT,UAAW,CAKnB,GAAsB,oBAAXO,EACT,MAAM,IAAIzE,UAAU,oEAGtB,IAAI0E,EAAmB7T,KAAKsF,SAEG,WAA3BtF,KAAKoK,QAAQ2I,UACfc,EAAmB9N,EACV3F,EAAK8B,UAAUlC,KAAKoK,QAAQ2I,aACrCc,EAAmB7T,KAAKoK,QAAQ2I,UAGa,oBAAlC/S,KAAKoK,QAAQ2I,UAAUlB,SAChCgC,EAAmB7T,KAAKoK,QAAQ2I,UAAU,KAOhB,iBAA1B/S,KAAKoK,QAAQ0I,UACf5S,EAAE6F,GAAQuI,SAASlJ,IAErBpF,KAAKkT,QAAU,IAAIU,EAAOC,EAAkB7T,KAAKmT,MAAOnT,KAAK8T,oBAO3D,iBAAkBnT,SAAS8C,iBACuB,IAAlDvD,EAAE6F,GAAQC,QAAQkB,IAAqB2E,QACzC3L,EAAES,SAASoT,MAAM1F,WAAWvH,GAAG,YAAa,KAAM5G,EAAE8T,MAGtDhU,KAAKsF,SAASyC,QACd/H,KAAKsF,SAAS0C,aAAa,iBAAiB,GAE5C9H,EAAEF,KAAKmT,OAAOlL,YAAY7C,IAC1BlF,EAAE6F,GACCkC,YAAY7C,IACZrD,QAAQ7B,EAAE8E,MAAMA,GAAM4K,MAAOhC,UAGlCmD,KAAA,WACE,KAAI/Q,KAAKsF,SAASiO,UAAYrT,EAAEF,KAAKsF,UAAUa,SAASf,KAAuBlF,EAAEF,KAAKmT,OAAOhN,SAASf,KAAtG,CAIA,IAAMwI,EAAgB,CACpBA,cAAe5N,KAAKsF,UAEhBqO,EAAYzT,EAAE8E,MAAMA,GAAM2K,KAAM/B,GAChC7H,EAASkN,EAASO,sBAAsBxT,KAAKsF,UAEnDpF,EAAE6F,GAAQhE,QAAQ4R,GAEdA,EAAUhO,uBAIdzF,EAAEF,KAAKmT,OAAOlL,YAAY7C,IAC1BlF,EAAE6F,GACCkC,YAAY7C,IACZrD,QAAQ7B,EAAE8E,MAAMA,GAAM4K,MAAOhC,SAGlCkD,KAAA,WACE,IAAI9Q,KAAKsF,SAASiO,WAAYrT,EAAEF,KAAKsF,UAAUa,SAASf,KAAwBlF,EAAEF,KAAKmT,OAAOhN,SAASf,IAAvG,CAIA,IAAMwI,EAAgB,CACpBA,cAAe5N,KAAKsF,UAEhB2O,EAAY/T,EAAE8E,MAAMA,GAAM6K,KAAMjC,GAChC7H,EAASkN,EAASO,sBAAsBxT,KAAKsF,UAEnDpF,EAAE6F,GAAQhE,QAAQkS,GAEdA,EAAUtO,uBAIdzF,EAAEF,KAAKmT,OAAOlL,YAAY7C,IAC1BlF,EAAE6F,GACCkC,YAAY7C,IACZrD,QAAQ7B,EAAE8E,MAAMA,GAAM8K,OAAQlC,SAGnC/H,QAAA,WACE3F,EAAE4F,WAAW9F,KAAKsF,SAAUT,IAC5B3E,EAAEF,KAAKsF,UAAUyG,IAAIjH,IACrB9E,KAAKsF,SAAW,MAChBtF,KAAKmT,MAAQ,QACTnT,KAAKkT,UACPlT,KAAKkT,QAAQgB,UACblU,KAAKkT,QAAU,SAInBiB,OAAA,WACEnU,KAAKqT,UAAYrT,KAAKsT,gBACD,OAAjBtT,KAAKkT,SACPlT,KAAKkT,QAAQkB,oBAMjBtJ,mBAAA,WAAqB,IAAA/K,EAAAC,KACnBE,EAAEF,KAAKsF,UAAUwB,GAAG9B,GAAMwN,MAAO,SAACvO,GAChCA,EAAM4C,iBACN5C,EAAMoQ,kBACNtU,EAAKsH,cAITgD,WAAA,SAAW9H,GAaT,OAZAA,EAAMyJ,EAAA,GACDhM,KAAKsU,YAAYnM,QACjBjI,EAAEF,KAAKsF,UAAUoB,OACjBnE,GAGLnC,EAAKiC,gBACHuC,GACArC,EACAvC,KAAKsU,YAAY5L,aAGZnG,KAGT6Q,gBAAA,WACE,IAAKpT,KAAKmT,MAAO,CACf,IAAMpN,EAASkN,EAASO,sBAAsBxT,KAAKsF,UAE/CS,IACF/F,KAAKmT,MAAQpN,EAAO5E,cAAc+F,KAGtC,OAAOlH,KAAKmT,SAGdoB,cAAA,WACE,IAAMC,EAAkBtU,EAAEF,KAAKsF,SAASzB,YACpC4Q,EAAY9B,GAehB,OAZI6B,EAAgBrO,SAASf,KAC3BqP,EAAY9B,GACRzS,EAAEF,KAAKmT,OAAOhN,SAASf,MACzBqP,EAAY9B,KAEL6B,EAAgBrO,SAASf,IAClCqP,EAAY9B,GACH6B,EAAgBrO,SAASf,IAClCqP,EAAY9B,GACHzS,EAAEF,KAAKmT,OAAOhN,SAASf,MAChCqP,EAAY9B,IAEP8B,KAGTnB,cAAA,WACE,OAAoD,EAA7CpT,EAAEF,KAAKsF,UAAUU,QAAQ,WAAW6F,UAG7C6I,WAAA,WAAa,IAAAtI,EAAApM,KACL4S,EAAS,GAef,MAbmC,mBAAxB5S,KAAKoK,QAAQwI,OACtBA,EAAO7O,GAAK,SAAC2C,GAMX,OALAA,EAAKiO,QAAL3I,EAAA,GACKtF,EAAKiO,QACLvI,EAAKhC,QAAQwI,OAAOlM,EAAKiO,QAASvI,EAAK9G,WAAa,IAGlDoB,GAGTkM,EAAOA,OAAS5S,KAAKoK,QAAQwI,OAGxBA,KAGTkB,iBAAA,WACE,IAAMc,EAAe,CACnBH,UAAWzU,KAAKuU,gBAChBM,UAAW,CACTjC,OAAQ5S,KAAK0U,aACb7B,KAAM,CACJiC,QAAS9U,KAAKoK,QAAQyI,MAExBkC,gBAAiB,CACfC,kBAAmBhV,KAAKoK,QAAQ0I,YAYtC,MAN6B,WAAzB9S,KAAKoK,QAAQ4I,UACf4B,EAAaC,UAAUI,WAAa,CAClCH,SAAS,IAINF,KAKFrO,iBAAP,SAAwBhE,GACtB,OAAOvC,KAAKwG,KAAK,WACf,IAAIE,EAAOxG,EAAEF,MAAM0G,KAAK7B,IAQxB,GALK6B,IACHA,EAAO,IAAIuM,EAASjT,KAHY,iBAAXuC,EAAsBA,EAAS,MAIpDrC,EAAEF,MAAM0G,KAAK7B,GAAU6B,IAGH,iBAAXnE,EAAqB,CAC9B,GAA4B,oBAAjBmE,EAAKnE,GACd,MAAM,IAAI4M,UAAJ,oBAAkC5M,EAAlC,KAERmE,EAAKnE,WAKJmR,YAAP,SAAmBzP,GACjB,IAAIA,GAtWyB,IAsWfA,EAAMkJ,QACH,UAAflJ,EAAMwD,MA1WqB,IA0WDxD,EAAMkJ,OAMlC,IAFA,IAAM+H,EAAU,GAAG9H,MAAMvK,KAAKlC,SAASoM,iBAAiB7F,KAE/CsI,EAAI,EAAGC,EAAMyF,EAAQrJ,OAAQ2D,EAAIC,EAAKD,IAAK,CAClD,IAAMzJ,EAASkN,EAASO,sBAAsB0B,EAAQ1F,IAChD2F,EAAUjV,EAAEgV,EAAQ1F,IAAI9I,KAAK7B,IAC7B+I,EAAgB,CACpBA,cAAesH,EAAQ1F,IAOzB,GAJIvL,GAAwB,UAAfA,EAAMwD,OACjBmG,EAAcwH,WAAanR,GAGxBkR,EAAL,CAIA,IAAME,EAAeF,EAAQhC,MAC7B,GAAKjT,EAAE6F,GAAQI,SAASf,OAIpBnB,IAAyB,UAAfA,EAAMwD,MAChB,kBAAkBpE,KAAKY,EAAMK,OAAO4I,UAA2B,UAAfjJ,EAAMwD,MArY/B,IAqYmDxD,EAAMkJ,QAChFjN,EAAE0H,SAAS7B,EAAQ9B,EAAMK,SAF7B,CAMA,IAAM2P,EAAY/T,EAAE8E,MAAMA,GAAM6K,KAAMjC,GACtC1N,EAAE6F,GAAQhE,QAAQkS,GACdA,EAAUtO,uBAMV,iBAAkBhF,SAAS8C,iBAC7BvD,EAAES,SAASoT,MAAM1F,WAAWtC,IAAI,YAAa,KAAM7L,EAAE8T,MAGvDkB,EAAQ1F,GAAGxH,aAAa,gBAAiB,SAEzC9H,EAAEmV,GAAcnP,YAAYd,IAC5BlF,EAAE6F,GACCG,YAAYd,IACZrD,QAAQ7B,EAAE8E,MAAMA,GAAM8K,OAAQlC,WAI9B4F,sBAAP,SAA6B1S,GAC3B,IAAIiF,EACEhF,EAAWX,EAAKS,uBAAuBC,GAM7C,OAJIC,IACFgF,EAASpF,SAASQ,cAAcJ,IAG3BgF,GAAUjF,EAAQ+C,cAIpByR,uBAAP,SAA8BrR,GAQ5B,IAAI,kBAAkBZ,KAAKY,EAAMK,OAAO4I,WApbX,KAqbzBjJ,EAAMkJ,OAtbmB,KAsbQlJ,EAAMkJ,QAlbd,KAmb1BlJ,EAAMkJ,OApboB,KAobYlJ,EAAMkJ,OAC3CjN,EAAE+D,EAAMK,QAAQ0B,QAAQkB,IAAe2E,SAAWyG,GAAejP,KAAKY,EAAMkJ,UAIhFlJ,EAAM4C,iBACN5C,EAAMoQ,mBAEFrU,KAAKuT,WAAYrT,EAAEF,MAAMmG,SAASf,KAAtC,CAIA,IAAMW,EAAWkN,EAASO,sBAAsBxT,MAC1CyT,EAAWvT,EAAE6F,GAAQI,SAASf,IAEpC,GAAKqO,KAAYA,GAtcY,KAscCxP,EAAMkJ,OArcP,KAqcmClJ,EAAMkJ,OAAtE,CAUA,IAAMoI,EAAQ,GAAGnI,MAAMvK,KAAKkD,EAAOgH,iBAAiB7F,KAEpD,GAAqB,IAAjBqO,EAAM1J,OAAV,CAIA,IAAIH,EAAQ6J,EAAMlI,QAAQpJ,EAAMK,QAndH,KAqdzBL,EAAMkJ,OAAsC,EAARzB,GACtCA,IArd2B,KAwdzBzH,EAAMkJ,OAAgCzB,EAAQ6J,EAAM1J,OAAS,GAC/DH,IAGEA,EAAQ,IACVA,EAAQ,GAGV6J,EAAM7J,GAAO3D,aA9Bb,CACE,GAvc2B,KAucvB9D,EAAMkJ,MAA0B,CAClC,IAAM9F,EAAStB,EAAO5E,cAAc+F,IACpChH,EAAEmH,GAAQtF,QAAQ,SAGpB7B,EAAEF,MAAM+B,QAAQ,oDAvXlB,MA1F6B,wCA8F7B,OAAOoG,uCAIP,OAAOO,YAiZXxI,EAAES,UACCmG,GAAG9B,GAAMyN,iBAAkBvL,GAAsB+L,GAASqC,wBAC1DxO,GAAG9B,GAAMyN,iBAAkBvL,GAAe+L,GAASqC,wBACnDxO,GAAM9B,GAAMG,eAHf,IAGiCH,GAAM0N,eAAkBO,GAASS,aAC/D5M,GAAG9B,GAAMG,eAAgB+B,GAAsB,SAAUjD,GACxDA,EAAM4C,iBACN5C,EAAMoQ,kBACNpB,GAAS1M,iBAAiB1D,KAAK3C,EAAEF,MAAO,YAEzC8G,GAAG9B,GAAMG,eAAgB+B,GAAqB,SAAC8F,GAC9CA,EAAEqH,oBASNnU,EAAE6D,GAAGa,IAAQqO,GAAS1M,iBACtBrG,EAAE6D,GAAGa,IAAMmC,YAAckM,GACzB/S,EAAE6D,GAAGa,IAAMoC,WAAa,WAEtB,OADA9G,EAAE6D,GAAGa,IAAQG,GACNkO,GAAS1M,kBC5gBlB,IAAM3B,GAAqB,QAErBC,GAAqB,WACrBC,GAAS,IAAgBD,GAEzBE,GAAqB7E,EAAE6D,GAAGa,IAG1BuD,GAAU,CACdqN,UAAW,EACXnN,UAAW,EACXN,OAAW,EACXgJ,MAAW,GAGPrI,GAAc,CAClB8M,SAAW,mBACXnN,SAAW,UACXN,MAAW,UACXgJ,KAAW,WAGP/L,GAAQ,CACZ6K,KAAI,OAAuB/K,GAC3BgL,OAAM,SAAuBhL,GAC7B6K,KAAI,OAAuB7K,GAC3B8K,MAAK,QAAuB9K,GAC5B2Q,QAAO,UAAuB3Q,GAC9B4Q,OAAM,SAAuB5Q,GAC7B6Q,cAAa,gBAAuB7Q,GACpC8Q,gBAAe,kBAAuB9Q,GACtC+Q,gBAAe,kBAAuB/Q,GACtCgR,kBAAiB,oBAAuBhR,GACxCK,eAAc,QAAcL,GA7BH,aAgCrBM,GACiB,0BADjBA,GAEiB,0BAFjBA,GAGiB,iBAHjBA,GAIiB,aAJjBA,GAKiB,OALjBA,GAMiB,OAGjB8B,GACa,gBADbA,GAEa,cAFbA,GAGa,wBAHbA,GAIa,yBAJbA,GAKa,oDALbA,GAMa,cASb6O,cACJ,SAAAA,EAAYjV,EAASyB,GACnBvC,KAAKoK,QAAuBpK,KAAKqK,WAAW9H,GAC5CvC,KAAKsF,SAAuBxE,EAC5Bd,KAAKgW,QAAuBlV,EAAQK,cAAc+F,IAClDlH,KAAKiW,UAAuB,KAC5BjW,KAAKkW,UAAuB,EAC5BlW,KAAKmW,oBAAuB,EAC5BnW,KAAKoW,sBAAuB,EAC5BpW,KAAKiQ,kBAAuB,EAC5BjQ,KAAKqW,gBAAuB,6BAe9BhP,OAAA,SAAOuG,GACL,OAAO5N,KAAKkW,SAAWlW,KAAK8Q,OAAS9Q,KAAK+Q,KAAKnD,MAGjDmD,KAAA,SAAKnD,GAAe,IAAA7N,EAAAC,KAClB,IAAIA,KAAKkW,WAAYlW,KAAKiQ,iBAA1B,CAII/P,EAAEF,KAAKsF,UAAUa,SAASf,MAC5BpF,KAAKiQ,kBAAmB,GAG1B,IAAM0D,EAAYzT,EAAE8E,MAAMA,GAAM2K,KAAM,CACpC/B,cAAAA,IAGF1N,EAAEF,KAAKsF,UAAUvD,QAAQ4R,GAErB3T,KAAKkW,UAAYvC,EAAUhO,uBAI/B3F,KAAKkW,UAAW,EAEhBlW,KAAKsW,kBACLtW,KAAKuW,gBAELvW,KAAKwW,gBAELxW,KAAKyW,kBACLzW,KAAK0W,kBAELxW,EAAEF,KAAKsF,UAAUwB,GACf9B,GAAM2Q,cACNzO,GACA,SAACjD,GAAD,OAAWlE,EAAK+Q,KAAK7M,KAGvB/D,EAAEF,KAAKgW,SAASlP,GAAG9B,GAAM8Q,kBAAmB,WAC1C5V,EAAEH,EAAKuF,UAAUnF,IAAI6E,GAAM6Q,gBAAiB,SAAC5R,GACvC/D,EAAE+D,EAAMK,QAAQC,GAAGxE,EAAKuF,YAC1BvF,EAAKqW,sBAAuB,OAKlCpW,KAAK2W,cAAc,WAAA,OAAM5W,EAAK6W,aAAahJ,UAG7CkD,KAAA,SAAK7M,GAAO,IAAAmI,EAAApM,KAKV,GAJIiE,GACFA,EAAM4C,iBAGH7G,KAAKkW,WAAYlW,KAAKiQ,iBAA3B,CAIA,IAAMgE,EAAY/T,EAAE8E,MAAMA,GAAM6K,MAIhC,GAFA3P,EAAEF,KAAKsF,UAAUvD,QAAQkS,GAEpBjU,KAAKkW,WAAYjC,EAAUtO,qBAAhC,CAIA3F,KAAKkW,UAAW,EAChB,IAAMW,EAAa3W,EAAEF,KAAKsF,UAAUa,SAASf,IAiB7C,GAfIyR,IACF7W,KAAKiQ,kBAAmB,GAG1BjQ,KAAKyW,kBACLzW,KAAK0W,kBAELxW,EAAES,UAAUoL,IAAI/G,GAAMyQ,SAEtBvV,EAAEF,KAAKsF,UAAUY,YAAYd,IAE7BlF,EAAEF,KAAKsF,UAAUyG,IAAI/G,GAAM2Q,eAC3BzV,EAAEF,KAAKgW,SAASjK,IAAI/G,GAAM8Q,mBAGtBe,EAAY,CACd,IAAMvV,EAAsBlB,EAAKiB,iCAAiCrB,KAAKsF,UAEvEpF,EAAEF,KAAKsF,UACJnF,IAAIC,EAAKR,eAAgB,SAACqE,GAAD,OAAWmI,EAAK0K,WAAW7S,KACpDD,qBAAqB1C,QAExBtB,KAAK8W,kBAITjR,QAAA,WACE,CAAC8E,OAAQ3K,KAAKsF,SAAUtF,KAAKgW,SAC1Be,QAAQ,SAACC,GAAD,OAAiB9W,EAAE8W,GAAajL,IAAIjH,MAO/C5E,EAAES,UAAUoL,IAAI/G,GAAMyQ,SAEtBvV,EAAE4F,WAAW9F,KAAKsF,SAAUT,IAE5B7E,KAAKoK,QAAuB,KAC5BpK,KAAKsF,SAAuB,KAC5BtF,KAAKgW,QAAuB,KAC5BhW,KAAKiW,UAAuB,KAC5BjW,KAAKkW,SAAuB,KAC5BlW,KAAKmW,mBAAuB,KAC5BnW,KAAKoW,qBAAuB,KAC5BpW,KAAKiQ,iBAAuB,KAC5BjQ,KAAKqW,gBAAuB,QAG9BY,aAAA,WACEjX,KAAKwW,mBAKPnM,WAAA,SAAW9H,GAMT,OALAA,EAAMyJ,EAAA,GACD7D,GACA5F,GAELnC,EAAKiC,gBAAgBuC,GAAMrC,EAAQmG,IAC5BnG,KAGTqU,aAAA,SAAahJ,GAAe,IAAArB,EAAAvM,KACpB6W,EAAa3W,EAAEF,KAAKsF,UAAUa,SAASf,IAExCpF,KAAKsF,SAASzB,YACf7D,KAAKsF,SAASzB,WAAWzB,WAAa8U,KAAKC,cAE7CxW,SAASoT,KAAKqD,YAAYpX,KAAKsF,UAGjCtF,KAAKsF,SAASgM,MAAM0B,QAAU,QAC9BhT,KAAKsF,SAAS+R,gBAAgB,eAC9BrX,KAAKsF,SAAS0C,aAAa,cAAc,GAErC9H,EAAEF,KAAKgW,SAAS7P,SAASf,IAC3BpF,KAAKgW,QAAQ7U,cAAc+F,IAAqBoQ,UAAY,EAE5DtX,KAAKsF,SAASgS,UAAY,EAGxBT,GACFzW,EAAKyB,OAAO7B,KAAKsF,UAGnBpF,EAAEF,KAAKsF,UAAUgJ,SAASlJ,IAEtBpF,KAAKoK,QAAQrC,OACf/H,KAAKuX,gBAGP,IAAMC,EAAatX,EAAE8E,MAAMA,GAAM4K,MAAO,CACtChC,cAAAA,IAGI6J,EAAqB,WACrBlL,EAAKnC,QAAQrC,OACfwE,EAAKjH,SAASyC,QAEhBwE,EAAK0D,kBAAmB,EACxB/P,EAAEqM,EAAKjH,UAAUvD,QAAQyV,IAG3B,GAAIX,EAAY,CACd,IAAMvV,EAAsBlB,EAAKiB,iCAAiCrB,KAAKgW,SAEvE9V,EAAEF,KAAKgW,SACJ7V,IAAIC,EAAKR,eAAgB6X,GACzBzT,qBAAqB1C,QAExBmW,OAIJF,cAAA,WAAgB,IAAA9I,EAAAzO,KACdE,EAAES,UACCoL,IAAI/G,GAAMyQ,SACV3O,GAAG9B,GAAMyQ,QAAS,SAACxR,GACdtD,WAAasD,EAAMK,QACnBmK,EAAKnJ,WAAarB,EAAMK,QACsB,IAA9CpE,EAAEuO,EAAKnJ,UAAUoS,IAAIzT,EAAMK,QAAQuH,QACrC4C,EAAKnJ,SAASyC,aAKtB0O,gBAAA,WAAkB,IAAAkB,EAAA3X,KACZA,KAAKkW,UAAYlW,KAAKoK,QAAQ/B,SAChCnI,EAAEF,KAAKsF,UAAUwB,GAAG9B,GAAM4Q,gBAAiB,SAAC3R,GAxRvB,KAyRfA,EAAMkJ,QACRlJ,EAAM4C,iBACN8Q,EAAK7G,UAGC9Q,KAAKkW,UACfhW,EAAEF,KAAKsF,UAAUyG,IAAI/G,GAAM4Q,oBAI/Bc,gBAAA,WAAkB,IAAAkB,EAAA5X,KACZA,KAAKkW,SACPhW,EAAEyK,QAAQ7D,GAAG9B,GAAM0Q,OAAQ,SAACzR,GAAD,OAAW2T,EAAKX,aAAahT,KAExD/D,EAAEyK,QAAQoB,IAAI/G,GAAM0Q,WAIxBoB,WAAA,WAAa,IAAAe,EAAA7X,KACXA,KAAKsF,SAASgM,MAAM0B,QAAU,OAC9BhT,KAAKsF,SAAS0C,aAAa,eAAe,GAC1ChI,KAAKsF,SAAS+R,gBAAgB,cAC9BrX,KAAKiQ,kBAAmB,EACxBjQ,KAAK2W,cAAc,WACjBzW,EAAES,SAASoT,MAAM7N,YAAYd,IAC7ByS,EAAKC,oBACLD,EAAKE,kBACL7X,EAAE2X,EAAKvS,UAAUvD,QAAQiD,GAAM8K,aAInCkI,gBAAA,WACMhY,KAAKiW,YACP/V,EAAEF,KAAKiW,WAAW3P,SAClBtG,KAAKiW,UAAY,SAIrBU,cAAA,SAAcsB,GAAU,IAAAC,EAAAlY,KAChBmY,EAAUjY,EAAEF,KAAKsF,UAAUa,SAASf,IACtCA,GAAiB,GAErB,GAAIpF,KAAKkW,UAAYlW,KAAKoK,QAAQoL,SAAU,CA+B1C,GA9BAxV,KAAKiW,UAAYtV,SAASyX,cAAc,OACxCpY,KAAKiW,UAAUoC,UAAYjT,GAEvB+S,GACFnY,KAAKiW,UAAUtO,UAAUsF,IAAIkL,GAG/BjY,EAAEF,KAAKiW,WAAWqC,SAAS3X,SAASoT,MAEpC7T,EAAEF,KAAKsF,UAAUwB,GAAG9B,GAAM2Q,cAAe,SAAC1R,GACpCiU,EAAK9B,qBACP8B,EAAK9B,sBAAuB,EAG1BnS,EAAMK,SAAWL,EAAMiO,gBAGG,WAA1BgG,EAAK9N,QAAQoL,SACf0C,EAAK5S,SAASyC,QAEdmQ,EAAKpH,UAILqH,GACF/X,EAAKyB,OAAO7B,KAAKiW,WAGnB/V,EAAEF,KAAKiW,WAAW3H,SAASlJ,KAEtB6S,EACH,OAGF,IAAKE,EAEH,YADAF,IAIF,IAAMM,EAA6BnY,EAAKiB,iCAAiCrB,KAAKiW,WAE9E/V,EAAEF,KAAKiW,WACJ9V,IAAIC,EAAKR,eAAgBqY,GACzBjU,qBAAqBuU,QACnB,IAAKvY,KAAKkW,UAAYlW,KAAKiW,UAAW,CAC3C/V,EAAEF,KAAKiW,WAAW/P,YAAYd,IAE9B,IAAMoT,EAAiB,WACrBN,EAAKF,kBACDC,GACFA,KAIJ,GAAI/X,EAAEF,KAAKsF,UAAUa,SAASf,IAAiB,CAC7C,IAAMmT,EAA6BnY,EAAKiB,iCAAiCrB,KAAKiW,WAE9E/V,EAAEF,KAAKiW,WACJ9V,IAAIC,EAAKR,eAAgB4Y,GACzBxU,qBAAqBuU,QAExBC,SAEOP,GACTA,OASJzB,cAAA,WACE,IAAMiC,EACJzY,KAAKsF,SAASoT,aAAe/X,SAAS8C,gBAAgBkV,cAEnD3Y,KAAKmW,oBAAsBsC,IAC9BzY,KAAKsF,SAASgM,MAAMsH,YAAiB5Y,KAAKqW,gBAA1C,MAGErW,KAAKmW,qBAAuBsC,IAC9BzY,KAAKsF,SAASgM,MAAMuH,aAAkB7Y,KAAKqW,gBAA3C,SAIJyB,kBAAA,WACE9X,KAAKsF,SAASgM,MAAMsH,YAAc,GAClC5Y,KAAKsF,SAASgM,MAAMuH,aAAe,MAGrCvC,gBAAA,WACE,IAAMwC,EAAOnY,SAASoT,KAAKrC,wBAC3B1R,KAAKmW,mBAAqB2C,EAAKC,KAAOD,EAAKE,MAAQrO,OAAOsO,WAC1DjZ,KAAKqW,gBAAkBrW,KAAKkZ,wBAG9B3C,cAAA,WAAgB,IAAA4C,EAAAnZ,KACd,GAAIA,KAAKmW,mBAAoB,CAG3B,IAAMiD,EAAe,GAAGhM,MAAMvK,KAAKlC,SAASoM,iBAAiB7F,KACvDmS,EAAgB,GAAGjM,MAAMvK,KAAKlC,SAASoM,iBAAiB7F,KAG9DhH,EAAEkZ,GAAc5S,KAAK,SAACkF,EAAO5K,GAC3B,IAAMwY,EAAgBxY,EAAQwQ,MAAMuH,aAC9BU,EAAoBrZ,EAAEY,GAASS,IAAI,iBACzCrB,EAAEY,GACC4F,KAAK,gBAAiB4S,GACtB/X,IAAI,gBAAoBG,WAAW6X,GAAqBJ,EAAK9C,gBAFhE,QAMFnW,EAAEmZ,GAAe7S,KAAK,SAACkF,EAAO5K,GAC5B,IAAM0Y,EAAe1Y,EAAQwQ,MAAMmI,YAC7BC,EAAmBxZ,EAAEY,GAASS,IAAI,gBACxCrB,EAAEY,GACC4F,KAAK,eAAgB8S,GACrBjY,IAAI,eAAmBG,WAAWgY,GAAoBP,EAAK9C,gBAF9D,QAMF,IAAMiD,EAAgB3Y,SAASoT,KAAKzC,MAAMuH,aACpCU,EAAoBrZ,EAAES,SAASoT,MAAMxS,IAAI,iBAC/CrB,EAAES,SAASoT,MACRrN,KAAK,gBAAiB4S,GACtB/X,IAAI,gBAAoBG,WAAW6X,GAAqBvZ,KAAKqW,gBAFhE,MAKFnW,EAAES,SAASoT,MAAMzF,SAASlJ,OAG5B2S,gBAAA,WAEE,IAAMqB,EAAe,GAAGhM,MAAMvK,KAAKlC,SAASoM,iBAAiB7F,KAC7DhH,EAAEkZ,GAAc5S,KAAK,SAACkF,EAAO5K,GAC3B,IAAM6Y,EAAUzZ,EAAEY,GAAS4F,KAAK,iBAChCxG,EAAEY,GAASgF,WAAW,iBACtBhF,EAAQwQ,MAAMuH,aAAec,GAAoB,KAInD,IAAMC,EAAW,GAAGxM,MAAMvK,KAAKlC,SAASoM,iBAAT,GAA6B7F,KAC5DhH,EAAE0Z,GAAUpT,KAAK,SAACkF,EAAO5K,GACvB,IAAM+Y,EAAS3Z,EAAEY,GAAS4F,KAAK,gBACT,oBAAXmT,GACT3Z,EAAEY,GAASS,IAAI,eAAgBsY,GAAQ/T,WAAW,kBAKtD,IAAM6T,EAAUzZ,EAAES,SAASoT,MAAMrN,KAAK,iBACtCxG,EAAES,SAASoT,MAAMjO,WAAW,iBAC5BnF,SAASoT,KAAKzC,MAAMuH,aAAec,GAAoB,MAGzDT,mBAAA,WACE,IAAMY,EAAYnZ,SAASyX,cAAc,OACzC0B,EAAUzB,UAAYjT,GACtBzE,SAASoT,KAAKqD,YAAY0C,GAC1B,IAAMC,EAAiBD,EAAUpI,wBAAwBsI,MAAQF,EAAUG,YAE3E,OADAtZ,SAASoT,KAAKmG,YAAYJ,GACnBC,KAKFxT,iBAAP,SAAwBhE,EAAQqL,GAC9B,OAAO5N,KAAKwG,KAAK,WACf,IAAIE,EAAOxG,EAAEF,MAAM0G,KAAK7B,IAClBuF,EAAO4B,EAAA,GACR7D,GACAjI,EAAEF,MAAM0G,OACU,iBAAXnE,GAAuBA,EAASA,EAAS,IAQrD,GALKmE,IACHA,EAAO,IAAIqP,EAAM/V,KAAMoK,GACvBlK,EAAEF,MAAM0G,KAAK7B,GAAU6B,IAGH,iBAAXnE,EAAqB,CAC9B,GAA4B,oBAAjBmE,EAAKnE,GACd,MAAM,IAAI4M,UAAJ,oBAAkC5M,EAAlC,KAERmE,EAAKnE,GAAQqL,QACJxD,EAAQ2G,MACjBrK,EAAKqK,KAAKnD,8CA1bd,MA3EuB,wCA+EvB,OAAOzF,YAkcXjI,EAAES,UAAUmG,GAAG9B,GAAMG,eAAgB+B,GAAsB,SAAUjD,GAAO,IACtEK,EADsE6V,EAAAna,KAEpEe,EAAWX,EAAKS,uBAAuBb,MAEzCe,IACFuD,EAAS3D,SAASQ,cAAcJ,IAGlC,IAAMwB,EAASrC,EAAEoE,GAAQoC,KAAK7B,IAC1B,SADWmH,EAAA,GAER9L,EAAEoE,GAAQoC,OACVxG,EAAEF,MAAM0G,QAGM,MAAjB1G,KAAKkN,SAAoC,SAAjBlN,KAAKkN,SAC/BjJ,EAAM4C,iBAGR,IAAMwL,EAAUnS,EAAEoE,GAAQnE,IAAI6E,GAAM2K,KAAM,SAACgE,GACrCA,EAAUhO,sBAKd0M,EAAQlS,IAAI6E,GAAM8K,OAAQ,WACpB5P,EAAEia,GAAM5V,GAAG,aACb4V,EAAKpS,YAKXgO,GAAMxP,iBAAiB1D,KAAK3C,EAAEoE,GAAS/B,EAAQvC,QASjDE,EAAE6D,GAAGa,IAAQmR,GAAMxP,iBACnBrG,EAAE6D,GAAGa,IAAMmC,YAAcgP,GACzB7V,EAAE6D,GAAGa,IAAMoC,WAAa,WAEtB,OADA9G,EAAE6D,GAAGa,IAAQG,GACNgR,GAAMxP,kBCvkBf,IAAM6T,GAAW,CACf,aACA,OACA,OACA,WACA,WACA,SACA,MACA,cAKWC,GAAmB,CAE9BC,IAAK,CAAC,QAAS,MAAO,KAAM,OAAQ,OAJP,kBAK7BC,EAAG,CAAC,SAAU,OAAQ,QAAS,OAC/BC,KAAM,GACNC,EAAG,GACHC,GAAI,GACJC,IAAK,GACLC,KAAM,GACNC,IAAK,GACLC,GAAI,GACJC,GAAI,GACJC,GAAI,GACJC,GAAI,GACJC,GAAI,GACJC,GAAI,GACJC,GAAI,GACJC,GAAI,GACJ7L,EAAG,GACH8L,IAAK,CAAC,MAAO,MAAO,QAAS,QAAS,UACtCC,GAAI,GACJC,GAAI,GACJC,EAAG,GACHC,IAAK,GACLC,EAAG,GACHC,MAAO,GACPC,KAAM,GACNC,IAAK,GACLC,IAAK,GACLC,OAAQ,GACRC,EAAG,GACHC,GAAI,IAQAC,GAAmB,8DAOnBC,GAAmB,sIAyBlB,SAASC,GAAaC,EAAYC,EAAWC,GAClD,GAA0B,IAAtBF,EAAWzQ,OACb,OAAOyQ,EAGT,GAAIE,GAAoC,mBAAfA,EACvB,OAAOA,EAAWF,GAQpB,IALA,IACMG,GADY,IAAI9R,OAAO+R,WACKC,gBAAgBL,EAAY,aACxDM,EAAgBla,OAAOma,KAAKN,GAC5B3C,EAAW,GAAGxM,MAAMvK,KAAK4Z,EAAgB1I,KAAKhH,iBAAiB,MAZP+P,EAAA,SAcrDtN,EAAOC,GACd,IAAMsN,EAAKnD,EAASpK,GACdwN,EAASD,EAAGE,SAAS9Z,cAE3B,IAA0D,IAAtDyZ,EAAcvP,QAAQ0P,EAAGE,SAAS9Z,eAGpC,OAFA4Z,EAAGlZ,WAAWqW,YAAY6C,GAE1B,WAGF,IAAMG,EAAgB,GAAG9P,MAAMvK,KAAKka,EAAGI,YACjCC,EAAwB,GAAGC,OAAOd,EAAU,MAAQ,GAAIA,EAAUS,IAAW,IAEnFE,EAAcnG,QAAQ,SAACxF,IAlD3B,SAA0BA,EAAM+L,GAC9B,IAAMC,EAAWhM,EAAK0L,SAAS9Z,cAE/B,IAAgD,IAA5Cma,EAAqBjQ,QAAQkQ,GAC/B,OAAoC,IAAhCnD,GAAS/M,QAAQkQ,IACZtb,QAAQsP,EAAKiM,UAAUta,MAAMiZ,KAAqB5K,EAAKiM,UAAUta,MAAMkZ,KASlF,IAHA,IAAMqB,EAASH,EAAqB/M,OAAO,SAACmN,GAAD,OAAeA,aAAqBta,SAGtEoM,EAAI,EAAGmO,EAAIF,EAAO5R,OAAQ2D,EAAImO,EAAGnO,IACxC,GAAI+N,EAASra,MAAMua,EAAOjO,IACxB,OAAO,EAIX,OAAO,GA+BEoO,CAAiBrM,EAAM6L,IAC1BL,EAAG1F,gBAAgB9F,EAAK0L,aAfrBzN,EAAI,EAAGC,EAAMmK,EAAS/N,OAAQ2D,EAAIC,EAAKD,IAAKsN,EAA5CtN,GAoBT,OAAOiN,EAAgB1I,KAAK8J,UCxG9B,IAAMjZ,GAAwB,UAExBC,GAAwB,aACxBC,GAAS,IAAmBD,GAC5BE,GAAwB7E,EAAE6D,GAAGa,IAC7BkZ,GAAwB,aACxBC,GAAwB,IAAI3a,OAAJ,UAAqB0a,GAArB,OAAyC,KACjEE,GAAwB,CAAC,WAAY,YAAa,cAElDtV,GAAc,CAClBuV,UAAoB,UACpBC,SAAoB,SACpBC,MAAoB,4BACpBpc,QAAoB,SACpBqc,MAAoB,kBACpBC,KAAoB,UACpBtd,SAAoB,mBACpB0T,UAAoB,oBACpB7B,OAAoB,2BACpB0L,UAAoB,2BACpBC,kBAAoB,iBACpBzL,SAAoB,mBACpB0L,SAAoB,UACpBhC,WAAoB,kBACpBD,UAAoB,UAGhB5J,GAAgB,CACpB8L,KAAS,OACTC,IAAS,MACTC,MAAS,QACTC,OAAS,SACTC,KAAS,QAGL1W,GAAU,CACd8V,WAAoB,EACpBC,SAAoB,uGAGpBnc,QAAoB,cACpBoc,MAAoB,GACpBC,MAAoB,EACpBC,MAAoB,EACpBtd,UAAoB,EACpB0T,UAAoB,MACpB7B,OAAoB,EACpB0L,WAAoB,EACpBC,kBAAoB,OACpBzL,SAAoB,eACpB0L,UAAoB,EACpBhC,WAAoB,KACpBD,UAAoBlC,IAGhByE,GACG,OADHA,GAEG,MAGH9Z,GAAQ,CACZ6K,KAAI,OAAgB/K,GACpBgL,OAAM,SAAgBhL,GACtB6K,KAAI,OAAgB7K,GACpB8K,MAAK,QAAgB9K,GACrBia,SAAQ,WAAgBja,GACxB0N,MAAK,QAAgB1N,GACrB2Q,QAAO,UAAgB3Q,GACvBka,SAAQ,WAAgBla,GACxBiE,WAAU,aAAgBjE,GAC1BkE,WAAU,aAAgBlE,IAGtBM,GACG,OADHA,GAEG,OAGH8B,GAEY,iBAFZA,GAGY,SAGZ+X,GACK,QADLA,GAEK,QAFLA,GAGK,QAHLA,GAIK,SAULC,cACJ,SAAAA,EAAYpe,EAASyB,GAKnB,GAAsB,oBAAXqR,EACT,MAAM,IAAIzE,UAAU,mEAItBnP,KAAKmf,YAAiB,EACtBnf,KAAKof,SAAiB,EACtBpf,KAAKqf,YAAiB,GACtBrf,KAAKsf,eAAiB,GACtBtf,KAAKkT,QAAiB,KAGtBlT,KAAKc,QAAUA,EACfd,KAAKuC,OAAUvC,KAAKqK,WAAW9H,GAC/BvC,KAAKuf,IAAU,KAEfvf,KAAKwf,2CAmCPC,OAAA,WACEzf,KAAKmf,YAAa,KAGpBO,QAAA,WACE1f,KAAKmf,YAAa,KAGpBQ,cAAA,WACE3f,KAAKmf,YAAcnf,KAAKmf,cAG1B9X,OAAA,SAAOpD,GACL,GAAKjE,KAAKmf,WAIV,GAAIlb,EAAO,CACT,IAAM2b,EAAU5f,KAAKsU,YAAYzP,SAC7BsQ,EAAUjV,EAAE+D,EAAMiO,eAAexL,KAAKkZ,GAErCzK,IACHA,EAAU,IAAInV,KAAKsU,YACjBrQ,EAAMiO,cACNlS,KAAK6f,sBAEP3f,EAAE+D,EAAMiO,eAAexL,KAAKkZ,EAASzK,IAGvCA,EAAQmK,eAAeQ,OAAS3K,EAAQmK,eAAeQ,MAEnD3K,EAAQ4K,uBACV5K,EAAQ6K,OAAO,KAAM7K,GAErBA,EAAQ8K,OAAO,KAAM9K,OAElB,CACL,GAAIjV,EAAEF,KAAKkgB,iBAAiB/Z,SAASf,IAEnC,YADApF,KAAKigB,OAAO,KAAMjgB,MAIpBA,KAAKggB,OAAO,KAAMhgB,UAItB6F,QAAA,WACEiH,aAAa9M,KAAKof,UAElBlf,EAAE4F,WAAW9F,KAAKc,QAASd,KAAKsU,YAAYzP,UAE5C3E,EAAEF,KAAKc,SAASiL,IAAI/L,KAAKsU,YAAYxP,WACrC5E,EAAEF,KAAKc,SAASkF,QAAQ,UAAU+F,IAAI,iBAElC/L,KAAKuf,KACPrf,EAAEF,KAAKuf,KAAKjZ,SAGdtG,KAAKmf,WAAiB,KACtBnf,KAAKof,SAAiB,KACtBpf,KAAKqf,YAAiB,MACtBrf,KAAKsf,eAAiB,QAClBtf,KAAKkT,SACPlT,KAAKkT,QAAQgB,UAGflU,KAAKkT,QAAU,KACflT,KAAKc,QAAU,KACfd,KAAKuC,OAAU,KACfvC,KAAKuf,IAAU,QAGjBxO,KAAA,WAAO,IAAAhR,EAAAC,KACL,GAAuC,SAAnCE,EAAEF,KAAKc,SAASS,IAAI,WACtB,MAAM,IAAI+B,MAAM,uCAGlB,IAAMqQ,EAAYzT,EAAE8E,MAAMhF,KAAKsU,YAAYtP,MAAM2K,MACjD,GAAI3P,KAAKmgB,iBAAmBngB,KAAKmf,WAAY,CAC3Cjf,EAAEF,KAAKc,SAASiB,QAAQ4R,GAExB,IAAMyM,EAAahgB,EAAKoD,eAAexD,KAAKc,SACtCuf,EAAangB,EAAE0H,SACJ,OAAfwY,EAAsBA,EAAapgB,KAAKc,QAAQwf,cAAc7c,gBAC9DzD,KAAKc,SAGP,GAAI6S,EAAUhO,uBAAyB0a,EACrC,OAGF,IAAMd,EAAQvf,KAAKkgB,gBACbK,EAAQngB,EAAKG,OAAOP,KAAKsU,YAAY1P,MAE3C2a,EAAIvX,aAAa,KAAMuY,GACvBvgB,KAAKc,QAAQkH,aAAa,mBAAoBuY,GAE9CvgB,KAAKwgB,aAEDxgB,KAAKuC,OAAO0b,WACd/d,EAAEqf,GAAKjR,SAASlJ,IAGlB,IAAMqP,EAA8C,mBAA1BzU,KAAKuC,OAAOkS,UAClCzU,KAAKuC,OAAOkS,UAAU5R,KAAK7C,KAAMuf,EAAKvf,KAAKc,SAC3Cd,KAAKuC,OAAOkS,UAEVgM,EAAazgB,KAAK0gB,eAAejM,GACvCzU,KAAK2gB,mBAAmBF,GAExB,IAAMnC,EAAYte,KAAK4gB,gBACvB1gB,EAAEqf,GAAK7Y,KAAK1G,KAAKsU,YAAYzP,SAAU7E,MAElCE,EAAE0H,SAAS5H,KAAKc,QAAQwf,cAAc7c,gBAAiBzD,KAAKuf,MAC/Drf,EAAEqf,GAAKjH,SAASgG,GAGlBpe,EAAEF,KAAKc,SAASiB,QAAQ/B,KAAKsU,YAAYtP,MAAM+Z,UAE/C/e,KAAKkT,QAAU,IAAIU,EAAO5T,KAAKc,QAASye,EAAK,CAC3C9K,UAAWgM,EACX5L,UAAW,CACTjC,OAAQ5S,KAAK0U,aACb7B,KAAM,CACJgO,SAAU7gB,KAAKuC,OAAOgc,mBAExBuC,MAAO,CACLhgB,QAASoG,IAEX6N,gBAAiB,CACfC,kBAAmBhV,KAAKuC,OAAOuQ,WAGnCiO,SAAU,SAACra,GACLA,EAAKsa,oBAAsBta,EAAK+N,WAClC1U,EAAKkhB,6BAA6Bva,IAGtCwa,SAAU,SAACxa,GAAD,OAAU3G,EAAKkhB,6BAA6Bva,MAGxDxG,EAAEqf,GAAKjR,SAASlJ,IAMZ,iBAAkBzE,SAAS8C,iBAC7BvD,EAAES,SAASoT,MAAM1F,WAAWvH,GAAG,YAAa,KAAM5G,EAAE8T,MAGtD,IAAMmN,EAAW,WACXphB,EAAKwC,OAAO0b,WACdle,EAAKqhB,iBAEP,IAAMC,EAAiBthB,EAAKsf,YAC5Btf,EAAKsf,YAAkB,KAEvBnf,EAAEH,EAAKe,SAASiB,QAAQhC,EAAKuU,YAAYtP,MAAM4K,OAE3CyR,IAAmBvC,IACrB/e,EAAKkgB,OAAO,KAAMlgB,IAItB,GAAIG,EAAEF,KAAKuf,KAAKpZ,SAASf,IAAiB,CACxC,IAAM9D,EAAqBlB,EAAKiB,iCAAiCrB,KAAKuf,KAEtErf,EAAEF,KAAKuf,KACJpf,IAAIC,EAAKR,eAAgBuhB,GACzBnd,qBAAqB1C,QAExB6f,QAKNrQ,KAAA,SAAKmH,GAAU,IAAA7L,EAAApM,KACPuf,EAAYvf,KAAKkgB,gBACjBjM,EAAY/T,EAAE8E,MAAMhF,KAAKsU,YAAYtP,MAAM6K,MAC3CsR,EAAW,WACX/U,EAAKiT,cAAgBP,IAAmBS,EAAI1b,YAC9C0b,EAAI1b,WAAWqW,YAAYqF,GAG7BnT,EAAKkV,iBACLlV,EAAKtL,QAAQuW,gBAAgB,oBAC7BnX,EAAEkM,EAAKtL,SAASiB,QAAQqK,EAAKkI,YAAYtP,MAAM8K,QAC1B,OAAjB1D,EAAK8G,SACP9G,EAAK8G,QAAQgB,UAGX+D,GACFA,KAMJ,GAFA/X,EAAEF,KAAKc,SAASiB,QAAQkS,IAEpBA,EAAUtO,qBAAd,CAgBA,GAZAzF,EAAEqf,GAAKrZ,YAAYd,IAIf,iBAAkBzE,SAAS8C,iBAC7BvD,EAAES,SAASoT,MAAM1F,WAAWtC,IAAI,YAAa,KAAM7L,EAAE8T,MAGvDhU,KAAKsf,eAAeL,KAAiB,EACrCjf,KAAKsf,eAAeL,KAAiB,EACrCjf,KAAKsf,eAAeL,KAAiB,EAEjC/e,EAAEF,KAAKuf,KAAKpZ,SAASf,IAAiB,CACxC,IAAM9D,EAAqBlB,EAAKiB,iCAAiCke,GAEjErf,EAAEqf,GACCpf,IAAIC,EAAKR,eAAgBuhB,GACzBnd,qBAAqB1C,QAExB6f,IAGFnhB,KAAKqf,YAAc,OAGrBlL,OAAA,WACuB,OAAjBnU,KAAKkT,SACPlT,KAAKkT,QAAQkB,oBAMjB+L,cAAA,WACE,OAAOle,QAAQjC,KAAKuhB,eAGtBZ,mBAAA,SAAmBF,GACjBvgB,EAAEF,KAAKkgB,iBAAiB5R,SAAYwP,GAApC,IAAoD2C,MAGtDP,cAAA,WAEE,OADAlgB,KAAKuf,IAAMvf,KAAKuf,KAAOrf,EAAEF,KAAKuC,OAAO2b,UAAU,GACxCle,KAAKuf,OAGdiB,WAAA,WACE,IAAMjB,EAAMvf,KAAKkgB,gBACjBlgB,KAAKwhB,kBAAkBthB,EAAEqf,EAAIxS,iBAAiB7F,KAA0BlH,KAAKuhB,YAC7ErhB,EAAEqf,GAAKrZ,YAAed,GAAtB,IAAwCA,OAG1Coc,kBAAA,SAAkB/a,EAAUgb,GACH,iBAAZA,IAAyBA,EAAQrf,WAAYqf,EAAQ5P,OAa5D7R,KAAKuC,OAAO8b,MACVre,KAAKuC,OAAOic,WACdiD,EAAUpF,GAAaoF,EAASzhB,KAAKuC,OAAOga,UAAWvc,KAAKuC,OAAOia,aAGrE/V,EAAS4X,KAAKoD,IAEdhb,EAASib,KAAKD,GAlBVzhB,KAAKuC,OAAO8b,KACTne,EAAEuhB,GAAS1b,SAASxB,GAAGkC,IAC1BA,EAASkb,QAAQC,OAAOH,GAG1Bhb,EAASib,KAAKxhB,EAAEuhB,GAASC,WAiB/BH,SAAA,WACE,IAAIpD,EAAQne,KAAKc,QAAQE,aAAa,uBAQtC,OANKmd,IACHA,EAAqC,mBAAtBne,KAAKuC,OAAO4b,MACvBne,KAAKuC,OAAO4b,MAAMtb,KAAK7C,KAAKc,SAC5Bd,KAAKuC,OAAO4b,OAGXA,KAKTzJ,WAAA,WAAa,IAAAnI,EAAAvM,KACL4S,EAAS,GAef,MAbkC,mBAAvB5S,KAAKuC,OAAOqQ,OACrBA,EAAO7O,GAAK,SAAC2C,GAMX,OALAA,EAAKiO,QAAL3I,EAAA,GACKtF,EAAKiO,QACLpI,EAAKhK,OAAOqQ,OAAOlM,EAAKiO,QAASpI,EAAKzL,UAAY,IAGhD4F,GAGTkM,EAAOA,OAAS5S,KAAKuC,OAAOqQ,OAGvBA,KAGTgO,cAAA,WACE,OAA8B,IAA1B5gB,KAAKuC,OAAO+b,UACP3d,SAASoT,KAGd3T,EAAK8B,UAAUlC,KAAKuC,OAAO+b,WACtBpe,EAAEF,KAAKuC,OAAO+b,WAGhBpe,EAAES,UAAUkhB,KAAK7hB,KAAKuC,OAAO+b,cAGtCoC,eAAA,SAAejM,GACb,OAAO9B,GAAc8B,EAAUlR,kBAGjCic,cAAA,WAAgB,IAAA/Q,EAAAzO,KACGA,KAAKuC,OAAOR,QAAQH,MAAM,KAElCmV,QAAQ,SAAChV,GAChB,GAAgB,UAAZA,EACF7B,EAAEuO,EAAK3N,SAASgG,GACd2H,EAAK6F,YAAYtP,MAAMwN,MACvB/D,EAAKlM,OAAOxB,SACZ,SAACkD,GAAD,OAAWwK,EAAKpH,OAAOpD,UAEpB,GAAIlC,IAAYkd,GAAgB,CACrC,IAAM6C,EAAU/f,IAAYkd,GACxBxQ,EAAK6F,YAAYtP,MAAM+D,WACvB0F,EAAK6F,YAAYtP,MAAMyQ,QACrBsM,EAAWhgB,IAAYkd,GACzBxQ,EAAK6F,YAAYtP,MAAMgE,WACvByF,EAAK6F,YAAYtP,MAAMga,SAE3B9e,EAAEuO,EAAK3N,SACJgG,GACCgb,EACArT,EAAKlM,OAAOxB,SACZ,SAACkD,GAAD,OAAWwK,EAAKuR,OAAO/b,KAExB6C,GACCib,EACAtT,EAAKlM,OAAOxB,SACZ,SAACkD,GAAD,OAAWwK,EAAKwR,OAAOhc,QAK/B/D,EAAEF,KAAKc,SAASkF,QAAQ,UAAUc,GAChC,gBACA,WACM2H,EAAK3N,SACP2N,EAAKqC,SAKP9Q,KAAKuC,OAAOxB,SACdf,KAAKuC,OAALyJ,EAAA,GACKhM,KAAKuC,OADV,CAEER,QAAS,SACThB,SAAU,KAGZf,KAAKgiB,eAITA,UAAA,WACE,IAAMC,SAAmBjiB,KAAKc,QAAQE,aAAa,wBAE/ChB,KAAKc,QAAQE,aAAa,UAA0B,WAAdihB,KACxCjiB,KAAKc,QAAQkH,aACX,sBACAhI,KAAKc,QAAQE,aAAa,UAAY,IAGxChB,KAAKc,QAAQkH,aAAa,QAAS,QAIvCgY,OAAA,SAAO/b,EAAOkR,GACZ,IAAMyK,EAAU5f,KAAKsU,YAAYzP,UACjCsQ,EAAUA,GAAWjV,EAAE+D,EAAMiO,eAAexL,KAAKkZ,MAG/CzK,EAAU,IAAInV,KAAKsU,YACjBrQ,EAAMiO,cACNlS,KAAK6f,sBAEP3f,EAAE+D,EAAMiO,eAAexL,KAAKkZ,EAASzK,IAGnClR,IACFkR,EAAQmK,eACS,YAAfrb,EAAMwD,KAAqBwX,GAAgBA,KACzC,GAGF/e,EAAEiV,EAAQ+K,iBAAiB/Z,SAASf,KAAmB+P,EAAQkK,cAAgBP,GACjF3J,EAAQkK,YAAcP,IAIxBhS,aAAaqI,EAAQiK,UAErBjK,EAAQkK,YAAcP,GAEjB3J,EAAQ5S,OAAO6b,OAAUjJ,EAAQ5S,OAAO6b,MAAMrN,KAKnDoE,EAAQiK,SAAW/e,WAAW,WACxB8U,EAAQkK,cAAgBP,IAC1B3J,EAAQpE,QAEToE,EAAQ5S,OAAO6b,MAAMrN,MARtBoE,EAAQpE,WAWZkP,OAAA,SAAOhc,EAAOkR,GACZ,IAAMyK,EAAU5f,KAAKsU,YAAYzP,UACjCsQ,EAAUA,GAAWjV,EAAE+D,EAAMiO,eAAexL,KAAKkZ,MAG/CzK,EAAU,IAAInV,KAAKsU,YACjBrQ,EAAMiO,cACNlS,KAAK6f,sBAEP3f,EAAE+D,EAAMiO,eAAexL,KAAKkZ,EAASzK,IAGnClR,IACFkR,EAAQmK,eACS,aAAfrb,EAAMwD,KAAsBwX,GAAgBA,KAC1C,GAGF9J,EAAQ4K,yBAIZjT,aAAaqI,EAAQiK,UAErBjK,EAAQkK,YAAcP,GAEjB3J,EAAQ5S,OAAO6b,OAAUjJ,EAAQ5S,OAAO6b,MAAMtN,KAKnDqE,EAAQiK,SAAW/e,WAAW,WACxB8U,EAAQkK,cAAgBP,IAC1B3J,EAAQrE,QAETqE,EAAQ5S,OAAO6b,MAAMtN,MARtBqE,EAAQrE,WAWZiP,qBAAA,WACE,IAAK,IAAMhe,KAAW/B,KAAKsf,eACzB,GAAItf,KAAKsf,eAAevd,GACtB,OAAO,EAIX,OAAO,KAGTsI,WAAA,SAAW9H,GACT,IAAM2f,EAAiBhiB,EAAEF,KAAKc,SAAS4F,OAwCvC,OAtCAhE,OAAOma,KAAKqF,GACTnL,QAAQ,SAACoL,IACyC,IAA7CnE,GAAsB3Q,QAAQ8U,WACzBD,EAAeC,KAUA,iBAN5B5f,EAAMyJ,EAAA,GACDhM,KAAKsU,YAAYnM,QACjB+Z,EACkB,iBAAX3f,GAAuBA,EAASA,EAAS,KAGnC6b,QAChB7b,EAAO6b,MAAQ,CACbrN,KAAMxO,EAAO6b,MACbtN,KAAMvO,EAAO6b,QAIW,iBAAjB7b,EAAO4b,QAChB5b,EAAO4b,MAAQ5b,EAAO4b,MAAMlb,YAGA,iBAAnBV,EAAOkf,UAChBlf,EAAOkf,QAAUlf,EAAOkf,QAAQxe,YAGlC7C,EAAKiC,gBACHuC,GACArC,EACAvC,KAAKsU,YAAY5L,aAGfnG,EAAOic,WACTjc,EAAO2b,SAAW7B,GAAa9Z,EAAO2b,SAAU3b,EAAOga,UAAWha,EAAOia,aAGpEja,KAGTsd,mBAAA,WACE,IAAMtd,EAAS,GAEf,GAAIvC,KAAKuC,OACP,IAAK,IAAM6f,KAAOpiB,KAAKuC,OACjBvC,KAAKsU,YAAYnM,QAAQia,KAASpiB,KAAKuC,OAAO6f,KAChD7f,EAAO6f,GAAOpiB,KAAKuC,OAAO6f,IAKhC,OAAO7f,KAGT+e,eAAA,WACE,IAAMe,EAAOniB,EAAEF,KAAKkgB,iBACdoC,EAAWD,EAAK9Q,KAAK,SAASrO,MAAM6a,IACzB,OAAbuE,GAAqBA,EAASzW,QAChCwW,EAAKnc,YAAYoc,EAASC,KAAK,QAInCtB,6BAAA,SAA6BuB,GAC3B,IAAMC,EAAiBD,EAAWE,SAClC1iB,KAAKuf,IAAMkD,EAAeE,OAC1B3iB,KAAKshB,iBACLthB,KAAK2gB,mBAAmB3gB,KAAK0gB,eAAe8B,EAAW/N,eAGzD2M,eAAA,WACE,IAAM7B,EAAMvf,KAAKkgB,gBACX0C,EAAsB5iB,KAAKuC,OAAO0b,UAEA,OAApCsB,EAAIve,aAAa,iBAIrBd,EAAEqf,GAAKrZ,YAAYd,IACnBpF,KAAKuC,OAAO0b,WAAY,EACxBje,KAAK8Q,OACL9Q,KAAK+Q,OACL/Q,KAAKuC,OAAO0b,UAAY2E,MAKnBrc,iBAAP,SAAwBhE,GACtB,OAAOvC,KAAKwG,KAAK,WACf,IAAIE,EAAOxG,EAAEF,MAAM0G,KAAK7B,IAClBuF,EAA4B,iBAAX7H,GAAuBA,EAE9C,IAAKmE,IAAQ,eAAerD,KAAKd,MAI5BmE,IACHA,EAAO,IAAIwY,EAAQlf,KAAMoK,GACzBlK,EAAEF,MAAM0G,KAAK7B,GAAU6B,IAGH,iBAAXnE,GAAqB,CAC9B,GAA4B,oBAAjBmE,EAAKnE,GACd,MAAM,IAAI4M,UAAJ,oBAAkC5M,EAAlC,KAERmE,EAAKnE,iDA1mBT,MA7H0B,wCAiI1B,OAAO4F,gCAIP,OAAOvD,oCAIP,OAAOC,iCAIP,OAAOG,qCAIP,OAAOF,uCAIP,OAAO4D,YA8lBXxI,EAAE6D,GAAGa,IAAQsa,GAAQ3Y,iBACrBrG,EAAE6D,GAAGa,IAAMmC,YAAcmY,GACzBhf,EAAE6D,GAAGa,IAAMoC,WAAa,WAEtB,OADA9G,EAAE6D,GAAGa,IAAQG,GACNma,GAAQ3Y,kBC7vBjB,IAAM3B,GAAsB,UAEtBC,GAAsB,aACtBC,GAAS,IAAiBD,GAC1BE,GAAsB7E,EAAE6D,GAAGa,IAC3BkZ,GAAsB,aACtBC,GAAsB,IAAI3a,OAAJ,UAAqB0a,GAArB,OAAyC,KAE/D3V,GAAO6D,EAAA,GACRkT,GAAQ/W,QADA,CAEXsM,UAAY,QACZ1S,QAAY,QACZ0f,QAAY,GACZvD,SAAY,wIAMRxV,GAAWsD,EAAA,GACZkT,GAAQxW,YADI,CAEf+Y,QAAU,8BAGNrc,GACG,OADHA,GAEG,OAGH8B,GACM,kBADNA,GAEM,gBAGNlC,GAAQ,CACZ6K,KAAI,OAAgB/K,GACpBgL,OAAM,SAAgBhL,GACtB6K,KAAI,OAAgB7K,GACpB8K,MAAK,QAAgB9K,GACrBia,SAAQ,WAAgBja,GACxB0N,MAAK,QAAgB1N,GACrB2Q,QAAO,UAAgB3Q,GACvBka,SAAQ,WAAgBla,GACxBiE,WAAU,aAAgBjE,GAC1BkE,WAAU,aAAgBlE,IAStB+d,2LAiCJ1C,cAAA,WACE,OAAOngB,KAAKuhB,YAAcvhB,KAAK8iB,iBAGjCnC,mBAAA,SAAmBF,GACjBvgB,EAAEF,KAAKkgB,iBAAiB5R,SAAYwP,GAApC,IAAoD2C,MAGtDP,cAAA,WAEE,OADAlgB,KAAKuf,IAAMvf,KAAKuf,KAAOrf,EAAEF,KAAKuC,OAAO2b,UAAU,GACxCle,KAAKuf,OAGdiB,WAAA,WACE,IAAM6B,EAAOniB,EAAEF,KAAKkgB,iBAGpBlgB,KAAKwhB,kBAAkBa,EAAKR,KAAK3a,IAAiBlH,KAAKuhB,YACvD,IAAIE,EAAUzhB,KAAK8iB,cACI,mBAAZrB,IACTA,EAAUA,EAAQ5e,KAAK7C,KAAKc,UAE9Bd,KAAKwhB,kBAAkBa,EAAKR,KAAK3a,IAAmBua,GAEpDY,EAAKnc,YAAed,GAApB,IAAsCA,OAKxC0d,YAAA,WACE,OAAO9iB,KAAKc,QAAQE,aAAa,iBAC/BhB,KAAKuC,OAAOkf,WAGhBH,eAAA,WACE,IAAMe,EAAOniB,EAAEF,KAAKkgB,iBACdoC,EAAWD,EAAK9Q,KAAK,SAASrO,MAAM6a,IACzB,OAAbuE,GAAuC,EAAlBA,EAASzW,QAChCwW,EAAKnc,YAAYoc,EAASC,KAAK,QAM5Bhc,iBAAP,SAAwBhE,GACtB,OAAOvC,KAAKwG,KAAK,WACf,IAAIE,EAAOxG,EAAEF,MAAM0G,KAAK7B,IAClBuF,EAA4B,iBAAX7H,EAAsBA,EAAS,KAEtD,IAAKmE,IAAQ,eAAerD,KAAKd,MAI5BmE,IACHA,EAAO,IAAImc,EAAQ7iB,KAAMoK,GACzBlK,EAAEF,MAAM0G,KAAK7B,GAAU6B,IAGH,iBAAXnE,GAAqB,CAC9B,GAA4B,oBAAjBmE,EAAKnE,GACd,MAAM,IAAI4M,UAAJ,oBAAkC5M,EAAlC,KAERmE,EAAKnE,iDA3FT,MAxDwB,wCA4DxB,OAAO4F,gCAIP,OAAOvD,oCAIP,OAAOC,iCAIP,OAAOG,qCAIP,OAAOF,uCAIP,OAAO4D,UA5BWwW,IA2GtBhf,EAAE6D,GAAGa,IAAQie,GAAQtc,iBACrBrG,EAAE6D,GAAGa,IAAMmC,YAAc8b,GACzB3iB,EAAE6D,GAAGa,IAAMoC,WAAa,WAEtB,OADA9G,EAAE6D,GAAGa,IAAQG,GACN8d,GAAQtc,kBCpKjB,IAAM3B,GAAqB,YAErBC,GAAqB,eACrBC,GAAS,IAAgBD,GAEzBE,GAAqB7E,EAAE6D,GAAGa,IAE1BuD,GAAU,CACdyK,OAAS,GACTmQ,OAAS,OACTze,OAAS,IAGLoE,GAAc,CAClBkK,OAAS,SACTmQ,OAAS,SACTze,OAAS,oBAGLU,GAAQ,CACZge,SAAQ,WAAmBle,GAC3Bme,OAAM,SAAmBne,GACzByE,cAAa,OAAUzE,GAlBE,aAqBrBM,GACY,gBADZA,GAGY,SAGZ8B,GACc,sBADdA,GAGc,oBAHdA,GAIc,YAJdA,GAKc,YALdA,GAMc,mBANdA,GAOc,YAPdA,GAQc,iBARdA,GASc,mBAGdgc,GACO,SADPA,GAEO,WASPC,cACJ,SAAAA,EAAYriB,EAASyB,GAAQ,IAAAxC,EAAAC,KAC3BA,KAAKsF,SAAiBxE,EACtBd,KAAKojB,eAAqC,SAApBtiB,EAAQoM,QAAqBvC,OAAS7J,EAC5Dd,KAAKoK,QAAiBpK,KAAKqK,WAAW9H,GACtCvC,KAAKyQ,UAAoBzQ,KAAKoK,QAAQ9F,OAAhB,IAA0B4C,GAA1B,IACGlH,KAAKoK,QAAQ9F,OADhB,IAC0B4C,GAD1B,IAEGlH,KAAKoK,QAAQ9F,OAFhB,IAE0B4C,GAChDlH,KAAKqjB,SAAiB,GACtBrjB,KAAKsjB,SAAiB,GACtBtjB,KAAKujB,cAAiB,KACtBvjB,KAAKwjB,cAAiB,EAEtBtjB,EAAEF,KAAKojB,gBAAgBtc,GAAG9B,GAAMie,OAAQ,SAAChf,GAAD,OAAWlE,EAAK0jB,SAASxf,KAEjEjE,KAAK0jB,UACL1jB,KAAKyjB,sCAePC,QAAA,WAAU,IAAAtX,EAAApM,KACF2jB,EAAa3jB,KAAKojB,iBAAmBpjB,KAAKojB,eAAezY,OAC3DuY,GAAsBA,GAEpBU,EAAuC,SAAxB5jB,KAAKoK,QAAQ2Y,OAC9BY,EAAa3jB,KAAKoK,QAAQ2Y,OAExBc,EAAaD,IAAiBV,GAChCljB,KAAK8jB,gBAAkB,EAE3B9jB,KAAKqjB,SAAW,GAChBrjB,KAAKsjB,SAAW,GAEhBtjB,KAAKwjB,cAAgBxjB,KAAK+jB,mBAEV,GAAG3W,MAAMvK,KAAKlC,SAASoM,iBAAiB/M,KAAKyQ,YAG1DuT,IAAI,SAACljB,GACJ,IAAIwD,EACE2f,EAAiB7jB,EAAKS,uBAAuBC,GAMnD,GAJImjB,IACF3f,EAAS3D,SAASQ,cAAc8iB,IAG9B3f,EAAQ,CACV,IAAM4f,EAAY5f,EAAOoN,wBACzB,GAAIwS,EAAUlK,OAASkK,EAAUC,OAE/B,MAAO,CACLjkB,EAAEoE,GAAQsf,KAAgBQ,IAAMP,EAChCI,GAIN,OAAO,OAER1T,OAAO,SAAC8T,GAAD,OAAUA,IACjBC,KAAK,SAAC/J,EAAGE,GAAJ,OAAUF,EAAE,GAAKE,EAAE,KACxB1D,QAAQ,SAACsN,GACRjY,EAAKiX,SAAS3S,KAAK2T,EAAK,IACxBjY,EAAKkX,SAAS5S,KAAK2T,EAAK,SAI9Bxe,QAAA,WACE3F,EAAE4F,WAAW9F,KAAKsF,SAAUT,IAC5B3E,EAAEF,KAAKojB,gBAAgBrX,IAAIjH,IAE3B9E,KAAKsF,SAAiB,KACtBtF,KAAKojB,eAAiB,KACtBpjB,KAAKoK,QAAiB,KACtBpK,KAAKyQ,UAAiB,KACtBzQ,KAAKqjB,SAAiB,KACtBrjB,KAAKsjB,SAAiB,KACtBtjB,KAAKujB,cAAiB,KACtBvjB,KAAKwjB,cAAiB,QAKxBnZ,WAAA,SAAW9H,GAMT,GAA6B,iBAL7BA,EAAMyJ,EAAA,GACD7D,GACkB,iBAAX5F,GAAuBA,EAASA,EAAS,KAGnC+B,OAAqB,CACrC,IAAI6L,EAAKjQ,EAAEqC,EAAO+B,QAAQiN,KAAK,MAC1BpB,IACHA,EAAK/P,EAAKG,OAAOqE,IACjB1E,EAAEqC,EAAO+B,QAAQiN,KAAK,KAAMpB,IAE9B5N,EAAO+B,OAAP,IAAoB6L,EAKtB,OAFA/P,EAAKiC,gBAAgBuC,GAAMrC,EAAQmG,IAE5BnG,KAGTuhB,cAAA,WACE,OAAO9jB,KAAKojB,iBAAmBzY,OAC3B3K,KAAKojB,eAAemB,YAAcvkB,KAAKojB,eAAe9L,aAG5DyM,iBAAA,WACE,OAAO/jB,KAAKojB,eAAe1K,cAAgBjY,KAAK+jB,IAC9C7jB,SAASoT,KAAK2E,aACd/X,SAAS8C,gBAAgBiV,iBAI7B+L,iBAAA,WACE,OAAOzkB,KAAKojB,iBAAmBzY,OAC3BA,OAAO+Z,YAAc1kB,KAAKojB,eAAe1R,wBAAwByS,UAGvEV,SAAA,WACE,IAAMnM,EAAetX,KAAK8jB,gBAAkB9jB,KAAKoK,QAAQwI,OACnD8F,EAAe1Y,KAAK+jB,mBACpBY,EAAe3kB,KAAKoK,QAAQwI,OAChC8F,EACA1Y,KAAKykB,mBAMP,GAJIzkB,KAAKwjB,gBAAkB9K,GACzB1Y,KAAK0jB,UAGUiB,GAAbrN,EAAJ,CACE,IAAMhT,EAAStE,KAAKsjB,SAAStjB,KAAKsjB,SAASzX,OAAS,GAEhD7L,KAAKujB,gBAAkBjf,GACzBtE,KAAK4kB,UAAUtgB,OAJnB,CASA,GAAItE,KAAKujB,eAAiBjM,EAAYtX,KAAKqjB,SAAS,IAAyB,EAAnBrjB,KAAKqjB,SAAS,GAGtE,OAFArjB,KAAKujB,cAAgB,UACrBvjB,KAAK6kB,SAKP,IADA,IACSrV,EADYxP,KAAKqjB,SAASxX,OACR2D,KAAM,CACRxP,KAAKujB,gBAAkBvjB,KAAKsjB,SAAS9T,IACxD8H,GAAatX,KAAKqjB,SAAS7T,KACM,oBAAzBxP,KAAKqjB,SAAS7T,EAAI,IACtB8H,EAAYtX,KAAKqjB,SAAS7T,EAAI,KAGpCxP,KAAK4kB,UAAU5kB,KAAKsjB,SAAS9T,SAKnCoV,UAAA,SAAUtgB,GACRtE,KAAKujB,cAAgBjf,EAErBtE,KAAK6kB,SAEL,IAAMC,EAAU9kB,KAAKyQ,UAClB7O,MAAM,KACNoiB,IAAI,SAACjjB,GAAD,OAAiBA,EAAjB,iBAA0CuD,EAA1C,MAAsDvD,EAAtD,UAAwEuD,EAAxE,OAEDygB,EAAQ7kB,EAAE,GAAGkN,MAAMvK,KAAKlC,SAASoM,iBAAiB+X,EAAQvC,KAAK,QAEjEwC,EAAM5e,SAASf,KACjB2f,EAAM/e,QAAQkB,IAAmB2a,KAAK3a,IAA0BoH,SAASlJ,IACzE2f,EAAMzW,SAASlJ,MAGf2f,EAAMzW,SAASlJ,IAGf2f,EAAMC,QAAQ9d,IAAyBiE,KAAQjE,GAA/C,KAAsEA,IAAuBoH,SAASlJ,IAEtG2f,EAAMC,QAAQ9d,IAAyBiE,KAAKjE,IAAoBmH,SAASnH,IAAoBoH,SAASlJ,KAGxGlF,EAAEF,KAAKojB,gBAAgBrhB,QAAQiD,GAAMge,SAAU,CAC7CpV,cAAetJ,OAInBugB,OAAA,WACE,GAAGzX,MAAMvK,KAAKlC,SAASoM,iBAAiB/M,KAAKyQ,YAC1CF,OAAO,SAAC0U,GAAD,OAAUA,EAAKtd,UAAUC,SAASxC,MACzC2R,QAAQ,SAACkO,GAAD,OAAUA,EAAKtd,UAAUrB,OAAOlB,SAKtCmB,iBAAP,SAAwBhE,GACtB,OAAOvC,KAAKwG,KAAK,WACf,IAAIE,EAAOxG,EAAEF,MAAM0G,KAAK7B,IAQxB,GALK6B,IACHA,EAAO,IAAIyc,EAAUnjB,KAHW,iBAAXuC,GAAuBA,GAI5CrC,EAAEF,MAAM0G,KAAK7B,GAAU6B,IAGH,iBAAXnE,EAAqB,CAC9B,GAA4B,oBAAjBmE,EAAKnE,GACd,MAAM,IAAI4M,UAAJ,oBAAkC5M,EAAlC,KAERmE,EAAKnE,iDAtMT,MA3EuB,wCA+EvB,OAAO4F,YA8MXjI,EAAEyK,QAAQ7D,GAAG9B,GAAMuE,cAAe,WAIhC,IAHA,IAAM2b,EAAa,GAAG9X,MAAMvK,KAAKlC,SAASoM,iBAAiB7F,KAGlDsI,EAFgB0V,EAAWrZ,OAEL2D,KAAM,CACnC,IAAM2V,EAAOjlB,EAAEglB,EAAW1V,IAC1B2T,GAAU5c,iBAAiB1D,KAAKsiB,EAAMA,EAAKze,WAU/CxG,EAAE6D,GAAGa,IAAQue,GAAU5c,iBACvBrG,EAAE6D,GAAGa,IAAMmC,YAAcoc,GACzBjjB,EAAE6D,GAAGa,IAAMoC,WAAa,WAEtB,OADA9G,EAAE6D,GAAGa,IAAQG,GACNoe,GAAU5c,kBClTnB,IAEM1B,GAAqB,SACrBC,GAAS,IAAgBD,GAEzBE,GAAqB7E,EAAE6D,GAAF,IAErBiB,GAAQ,CACZ6K,KAAI,OAAoB/K,GACxBgL,OAAM,SAAoBhL,GAC1B6K,KAAI,OAAoB7K,GACxB8K,MAAK,QAAoB9K,GACzBK,eAAc,QAAWL,GARA,aAWrBM,GACY,gBADZA,GAEY,SAFZA,GAGY,WAHZA,GAIY,OAJZA,GAKY,OAGZ8B,GACoB,YADpBA,GAEoB,oBAFpBA,GAGoB,UAHpBA,GAIoB,iBAJpBA,GAKoB,kEALpBA,GAMoB,mBANpBA,GAOoB,2BASpBke,cACJ,SAAAA,EAAYtkB,GACVd,KAAKsF,SAAWxE,6BAWlBiQ,KAAA,WAAO,IAAAhR,EAAAC,KACL,KAAIA,KAAKsF,SAASzB,YACd7D,KAAKsF,SAASzB,WAAWzB,WAAa8U,KAAKC,cAC3CjX,EAAEF,KAAKsF,UAAUa,SAASf,KAC1BlF,EAAEF,KAAKsF,UAAUa,SAASf,KAH9B,CAOA,IAAId,EACA+gB,EACEC,EAAcplB,EAAEF,KAAKsF,UAAUU,QAAQkB,IAAyB,GAChEnG,EAAWX,EAAKS,uBAAuBb,KAAKsF,UAElD,GAAIggB,EAAa,CACf,IAAMC,EAAwC,OAAzBD,EAAYrI,UAA8C,OAAzBqI,EAAYrI,SAAoB/V,GAAqBA,GAE3Gme,GADAA,EAAWnlB,EAAEslB,UAAUtlB,EAAEolB,GAAazD,KAAK0D,KACvBF,EAASxZ,OAAS,GAGxC,IAAMoI,EAAY/T,EAAE8E,MAAMA,GAAM6K,KAAM,CACpCjC,cAAe5N,KAAKsF,WAGhBqO,EAAYzT,EAAE8E,MAAMA,GAAM2K,KAAM,CACpC/B,cAAeyX,IASjB,GANIA,GACFnlB,EAAEmlB,GAAUtjB,QAAQkS,GAGtB/T,EAAEF,KAAKsF,UAAUvD,QAAQ4R,IAErBA,EAAUhO,uBACVsO,EAAUtO,qBADd,CAKI5E,IACFuD,EAAS3D,SAASQ,cAAcJ,IAGlCf,KAAK4kB,UACH5kB,KAAKsF,SACLggB,GAGF,IAAMnE,EAAW,WACf,IAAMsE,EAAcvlB,EAAE8E,MAAMA,GAAM8K,OAAQ,CACxClC,cAAe7N,EAAKuF,WAGhBkS,EAAatX,EAAE8E,MAAMA,GAAM4K,MAAO,CACtChC,cAAeyX,IAGjBnlB,EAAEmlB,GAAUtjB,QAAQ0jB,GACpBvlB,EAAEH,EAAKuF,UAAUvD,QAAQyV,IAGvBlT,EACFtE,KAAK4kB,UAAUtgB,EAAQA,EAAOT,WAAYsd,GAE1CA,SAIJtb,QAAA,WACE3F,EAAE4F,WAAW9F,KAAKsF,SAAUT,IAC5B7E,KAAKsF,SAAW,QAKlBsf,UAAA,SAAU9jB,EAASwd,EAAWrG,GAAU,IAAA7L,EAAApM,KAKhC0lB,IAJiBpH,GAAqC,OAAvBA,EAAUrB,UAA4C,OAAvBqB,EAAUrB,SAE1E/c,EAAEoe,GAAWjQ,SAASnH,IADtBhH,EAAEoe,GAAWuD,KAAK3a,KAGQ,GACxB0K,EAAkBqG,GAAayN,GAAUxlB,EAAEwlB,GAAQvf,SAASf,IAC5D+b,EAAW,WAAA,OAAM/U,EAAKuZ,oBAC1B7kB,EACA4kB,EACAzN,IAGF,GAAIyN,GAAU9T,EAAiB,CAC7B,IAAMtQ,EAAqBlB,EAAKiB,iCAAiCqkB,GAEjExlB,EAAEwlB,GACCxf,YAAYd,IACZjF,IAAIC,EAAKR,eAAgBuhB,GACzBnd,qBAAqB1C,QAExB6f,OAIJwE,oBAAA,SAAoB7kB,EAAS4kB,EAAQzN,GACnC,GAAIyN,EAAQ,CACVxlB,EAAEwlB,GAAQxf,YAAYd,IAEtB,IAAMwgB,EAAgB1lB,EAAEwlB,EAAO7hB,YAAYge,KACzC3a,IACA,GAEE0e,GACF1lB,EAAE0lB,GAAe1f,YAAYd,IAGK,QAAhCsgB,EAAO1kB,aAAa,SACtB0kB,EAAO1d,aAAa,iBAAiB,GAezC,GAXA9H,EAAEY,GAASwN,SAASlJ,IACiB,QAAjCtE,EAAQE,aAAa,SACvBF,EAAQkH,aAAa,iBAAiB,GAGxC5H,EAAKyB,OAAOf,GAERA,EAAQ6G,UAAUC,SAASxC,KAC7BtE,EAAQ6G,UAAUsF,IAAI7H,IAGpBtE,EAAQ+C,YAAc3D,EAAEY,EAAQ+C,YAAYsC,SAASf,IAA0B,CACjF,IAAMygB,EAAkB3lB,EAAEY,GAASkF,QAAQkB,IAAmB,GAE9D,GAAI2e,EAAiB,CACnB,IAAMC,EAAqB,GAAG1Y,MAAMvK,KAAKgjB,EAAgB9Y,iBAAiB7F,KAE1EhH,EAAE4lB,GAAoBxX,SAASlJ,IAGjCtE,EAAQkH,aAAa,iBAAiB,GAGpCiQ,GACFA,OAMG1R,iBAAP,SAAwBhE,GACtB,OAAOvC,KAAKwG,KAAK,WACf,IAAMyL,EAAQ/R,EAAEF,MACZ0G,EAAOuL,EAAMvL,KAAK7B,IAOtB,GALK6B,IACHA,EAAO,IAAI0e,EAAIplB,MACfiS,EAAMvL,KAAK7B,GAAU6B,IAGD,iBAAXnE,EAAqB,CAC9B,GAA4B,oBAAjBmE,EAAKnE,GACd,MAAM,IAAI4M,UAAJ,oBAAkC5M,EAAlC,KAERmE,EAAKnE,iDArKT,MA9CuB,iBA+N3BrC,EAAES,UACCmG,GAAG9B,GAAMG,eAAgB+B,GAAsB,SAAUjD,GACxDA,EAAM4C,iBACNue,GAAI7e,iBAAiB1D,KAAK3C,EAAEF,MAAO,UASvCE,EAAE6D,GAAF,IAAaqhB,GAAI7e,iBACjBrG,EAAE6D,GAAF,IAAWgD,YAAcqe,GACzBllB,EAAE6D,GAAF,IAAWiD,WAAa,WAEtB,OADA9G,EAAE6D,GAAF,IAAagB,GACNqgB,GAAI7e,kBChPb,IAAM3B,GAAqB,QAErBC,GAAqB,WACrBC,GAAS,IAAgBD,GACzBE,GAAqB7E,EAAE6D,GAAGa,IAE1BI,GAAQ,CACZ2Q,cAAa,gBAAmB7Q,GAChC+K,KAAI,OAAmB/K,GACvBgL,OAAM,SAAmBhL,GACzB6K,KAAI,OAAmB7K,GACvB8K,MAAK,QAAmB9K,IAGpBM,GACM,OADNA,GAEM,OAFNA,GAGM,OAHNA,GAIM,UAGNsD,GAAc,CAClBuV,UAAY,UACZ8H,SAAY,UACZ3H,MAAY,UAGRjW,GAAU,CACd8V,WAAY,EACZ8H,UAAY,EACZ3H,MAAY,KAGRlX,GACW,yBASX8e,cACJ,SAAAA,EAAYllB,EAASyB,GACnBvC,KAAKsF,SAAWxE,EAChBd,KAAKoK,QAAWpK,KAAKqK,WAAW9H,GAChCvC,KAAKof,SAAW,KAChBpf,KAAKwf,2CAmBPzO,KAAA,WAAO,IAAAhR,EAAAC,KACLE,EAAEF,KAAKsF,UAAUvD,QAAQiD,GAAM2K,MAE3B3P,KAAKoK,QAAQ6T,WACfje,KAAKsF,SAASqC,UAAUsF,IAAI7H,IAG9B,IAAM+b,EAAW,WACfphB,EAAKuF,SAASqC,UAAUrB,OAAOlB,IAC/BrF,EAAKuF,SAASqC,UAAUsF,IAAI7H,IAE5BlF,EAAEH,EAAKuF,UAAUvD,QAAQiD,GAAM4K,OAE3B7P,EAAKqK,QAAQ2b,UACfhmB,EAAK+Q,QAMT,GAFA9Q,KAAKsF,SAASqC,UAAUrB,OAAOlB,IAC/BpF,KAAKsF,SAASqC,UAAUsF,IAAI7H,IACxBpF,KAAKoK,QAAQ6T,UAAW,CAC1B,IAAM3c,EAAqBlB,EAAKiB,iCAAiCrB,KAAKsF,UAEtEpF,EAAEF,KAAKsF,UACJnF,IAAIC,EAAKR,eAAgBuhB,GACzBnd,qBAAqB1C,QAExB6f,OAIJrQ,KAAA,SAAKmV,GAAgB,IAAA7Z,EAAApM,KACdA,KAAKsF,SAASqC,UAAUC,SAASxC,MAItClF,EAAEF,KAAKsF,UAAUvD,QAAQiD,GAAM6K,MAE3BoW,EACFjmB,KAAKkmB,SAELlmB,KAAKof,SAAW/e,WAAW,WACzB+L,EAAK8Z,UACJlmB,KAAKoK,QAAQgU,WAIpBvY,QAAA,WACEiH,aAAa9M,KAAKof,UAClBpf,KAAKof,SAAW,KAEZpf,KAAKsF,SAASqC,UAAUC,SAASxC,KACnCpF,KAAKsF,SAASqC,UAAUrB,OAAOlB,IAGjClF,EAAEF,KAAKsF,UAAUyG,IAAI/G,GAAM2Q,eAE3BzV,EAAE4F,WAAW9F,KAAKsF,SAAUT,IAC5B7E,KAAKsF,SAAW,KAChBtF,KAAKoK,QAAW,QAKlBC,WAAA,SAAW9H,GAaT,OAZAA,EAAMyJ,EAAA,GACD7D,GACAjI,EAAEF,KAAKsF,UAAUoB,OACC,iBAAXnE,GAAuBA,EAASA,EAAS,IAGrDnC,EAAKiC,gBACHuC,GACArC,EACAvC,KAAKsU,YAAY5L,aAGZnG,KAGTid,cAAA,WAAgB,IAAAjT,EAAAvM,KACdE,EAAEF,KAAKsF,UAAUwB,GACf9B,GAAM2Q,cACNzO,GACA,WAAA,OAAMqF,EAAKuE,MAAK,QAIpBoV,OAAA,WAAS,IAAAzX,EAAAzO,KACDmhB,EAAW,WACf1S,EAAKnJ,SAASqC,UAAUsF,IAAI7H,IAC5BlF,EAAEuO,EAAKnJ,UAAUvD,QAAQiD,GAAM8K,SAIjC,GADA9P,KAAKsF,SAASqC,UAAUrB,OAAOlB,IAC3BpF,KAAKoK,QAAQ6T,UAAW,CAC1B,IAAM3c,EAAqBlB,EAAKiB,iCAAiCrB,KAAKsF,UAEtEpF,EAAEF,KAAKsF,UACJnF,IAAIC,EAAKR,eAAgBuhB,GACzBnd,qBAAqB1C,QAExB6f,OAMG5a,iBAAP,SAAwBhE,GACtB,OAAOvC,KAAKwG,KAAK,WACf,IAAMC,EAAWvG,EAAEF,MACf0G,EAAaD,EAASC,KAAK7B,IAQ/B,GALK6B,IACHA,EAAO,IAAIsf,EAAMhmB,KAHgB,iBAAXuC,GAAuBA,GAI7CkE,EAASC,KAAK7B,GAAU6B,IAGJ,iBAAXnE,EAAqB,CAC9B,GAA4B,oBAAjBmE,EAAKnE,GACd,MAAM,IAAI4M,UAAJ,oBAAkC5M,EAAlC,KAGRmE,EAAKnE,GAAQvC,kDAzIjB,MArDuB,4CAyDvB,OAAO0I,mCAIP,OAAOP,YA6IXjI,EAAE6D,GAAGa,IAAoBohB,GAAMzf,iBAC/BrG,EAAE6D,GAAGa,IAAMmC,YAAcif,GACzB9lB,EAAE6D,GAAGa,IAAMoC,WAAc,WAEvB,OADA9G,EAAE6D,GAAGa,IAAQG,GACNihB,GAAMzf,kBC1Mf,WACE,GAAiB,oBAANrG,EACT,MAAM,IAAIiP,UAAU,kGAGtB,IAAMgX,EAAUjmB,EAAE6D,GAAG8N,OAAOjQ,MAAM,KAAK,GAAGA,MAAM,KAOhD,GAAIukB,EAAQ,GALI,GAKYA,EAAQ,GAJnB,GAFA,IAMoCA,EAAQ,IAJ5C,IAI+DA,EAAQ,IAAmBA,EAAQ,GAHlG,GACA,GAEmHA,EAAQ,GAC1I,MAAM,IAAI7iB,MAAM,+EAbpB","sourcesContent":["/**\n * --------------------------------------------------------------------------\n * Bootstrap (v4.3.1): util.js\n * Licensed under MIT (://github.com/twbs/bootstrap/blob/master/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nimport $ from 'jquery'\n\n/**\n * ------------------------------------------------------------------------\n * Private TransitionEnd Helpers\n * ------------------------------------------------------------------------\n */\n\nconst TRANSITION_END = 'transitionend'\nconst MAX_UID = 1000000\nconst MILLISECONDS_MULTIPLIER = 1000\n\n// Shoutout AngusCroll (://goo.gl/pxwQGp)\nfunction toType(obj) {\n return {}.toString.call(obj).match(/\\s([a-z]+)/i)[1].toLowerCase()\n}\n\nfunction getSpecialTransitionEndEvent() {\n return {\n bindType: TRANSITION_END,\n delegateType: TRANSITION_END,\n handle(event) {\n if ($(event.target).is(this)) {\n return event.handleObj.handler.apply(this, arguments) // eslint-disable-line prefer-rest-params\n }\n return undefined // eslint-disable-line no-undefined\n }\n }\n}\n\nfunction transitionEndEmulator(duration) {\n let called = false\n\n $(this).one(Util.TRANSITION_END, () => {\n called = true\n })\n\n setTimeout(() => {\n if (!called) {\n Util.triggerTransitionEnd(this)\n }\n }, duration)\n\n return this\n}\n\nfunction setTransitionEndSupport() {\n $.fn.emulateTransitionEnd = transitionEndEmulator\n $.event.special[Util.TRANSITION_END] = getSpecialTransitionEndEvent()\n}\n\n/**\n * --------------------------------------------------------------------------\n * Public Util Api\n * --------------------------------------------------------------------------\n */\n\nconst Util = {\n\n TRANSITION_END: 'bsTransitionEnd',\n\n getUID(prefix) {\n do {\n // eslint-disable-next-line no-bitwise\n prefix += ~~(Math.random() * MAX_UID) // \"~~\" acts like a faster Math.floor() here\n } while (document.getElementById(prefix))\n return prefix\n },\n\n getSelectorFromElement(element) {\n let selector = element.getAttribute('data-target')\n\n if (!selector || selector === '#') {\n const hrefAttr = element.getAttribute('href')\n selector = hrefAttr && hrefAttr !== '#' ? hrefAttr.trim() : ''\n }\n\n try {\n return document.querySelector(selector) ? selector : null\n } catch (err) {\n return null\n }\n },\n\n getTransitionDurationFromElement(element) {\n if (!element) {\n return 0\n }\n\n // Get transition-duration of the element\n let transitionDuration = $(element).css('transition-duration')\n let transitionDelay = $(element).css('transition-delay')\n\n const floatTransitionDuration = parseFloat(transitionDuration)\n const floatTransitionDelay = parseFloat(transitionDelay)\n\n // Return 0 if element or transition duration is not found\n if (!floatTransitionDuration && !floatTransitionDelay) {\n return 0\n }\n\n // If multiple durations are defined, take the first\n transitionDuration = transitionDuration.split(',')[0]\n transitionDelay = transitionDelay.split(',')[0]\n\n return (parseFloat(transitionDuration) + parseFloat(transitionDelay)) * MILLISECONDS_MULTIPLIER\n },\n\n reflow(element) {\n return element.offsetHeight\n },\n\n triggerTransitionEnd(element) {\n $(element).trigger(TRANSITION_END)\n },\n\n // TODO: Remove in v5\n supportsTransitionEnd() {\n return Boolean(TRANSITION_END)\n },\n\n isElement(obj) {\n return (obj[0] || obj).nodeType\n },\n\n typeCheckConfig(componentName, config, configTypes) {\n for (const property in configTypes) {\n if (Object.prototype.hasOwnProperty.call(configTypes, property)) {\n const expectedTypes = configTypes[property]\n const value = config[property]\n const valueType = value && Util.isElement(value)\n ? 'element' : toType(value)\n\n if (!new RegExp(expectedTypes).test(valueType)) {\n throw new Error(\n `${componentName.toUpperCase()}: ` +\n `Option \"${property}\" provided type \"${valueType}\" ` +\n `but expected type \"${expectedTypes}\".`)\n }\n }\n }\n },\n\n findShadowRoot(element) {\n if (!document.documentElement.attachShadow) {\n return null\n }\n\n // Can find the shadow root otherwise it'll return the document\n if (typeof element.getRootNode === 'function') {\n const root = element.getRootNode()\n return root instanceof ShadowRoot ? root : null\n }\n\n if (element instanceof ShadowRoot) {\n return element\n }\n\n // when we don't find a shadow root\n if (!element.parentNode) {\n return null\n }\n\n return Util.findShadowRoot(element.parentNode)\n }\n}\n\nsetTransitionEndSupport()\n\nexport default Util\n","/**\n * --------------------------------------------------------------------------\n * Bootstrap (v4.3.1): alert.js\n * Licensed under MIT (://github.com/twbs/bootstrap/blob/master/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nimport $ from 'jquery'\nimport Util from './util'\n\n/**\n * ------------------------------------------------------------------------\n * Constants\n * ------------------------------------------------------------------------\n */\n\nconst NAME = 'alert'\nconst VERSION = '4.3.1'\nconst DATA_KEY = 'bs.alert'\nconst EVENT_KEY = `.${DATA_KEY}`\nconst DATA_API_KEY = '.data-api'\nconst JQUERY_NO_CONFLICT = $.fn[NAME]\n\nconst Selector = {\n DISMISS : '[data-dismiss=\"alert\"]'\n}\n\nconst Event = {\n CLOSE : `close${EVENT_KEY}`,\n CLOSED : `closed${EVENT_KEY}`,\n CLICK_DATA_API : `click${EVENT_KEY}${DATA_API_KEY}`\n}\n\nconst ClassName = {\n ALERT : 'alert',\n FADE : 'fade',\n SHOW : 'show'\n}\n\n/**\n * ------------------------------------------------------------------------\n * Class Definition\n * ------------------------------------------------------------------------\n */\n\nclass Alert {\n constructor(element) {\n this._element = element\n }\n\n // Getters\n\n static get VERSION() {\n return VERSION\n }\n\n // Public\n\n close(element) {\n let rootElement = this._element\n if (element) {\n rootElement = this._getRootElement(element)\n }\n\n const customEvent = this._triggerCloseEvent(rootElement)\n\n if (customEvent.isDefaultPrevented()) {\n return\n }\n\n this._removeElement(rootElement)\n }\n\n dispose() {\n $.removeData(this._element, DATA_KEY)\n this._element = null\n }\n\n // Private\n\n _getRootElement(element) {\n const selector = Util.getSelectorFromElement(element)\n let parent = false\n\n if (selector) {\n parent = document.querySelector(selector)\n }\n\n if (!parent) {\n parent = $(element).closest(`.${ClassName.ALERT}`)[0]\n }\n\n return parent\n }\n\n _triggerCloseEvent(element) {\n const closeEvent = $.Event(Event.CLOSE)\n\n $(element).trigger(closeEvent)\n return closeEvent\n }\n\n _removeElement(element) {\n $(element).removeClass(ClassName.SHOW)\n\n if (!$(element).hasClass(ClassName.FADE)) {\n this._destroyElement(element)\n return\n }\n\n const transitionDuration = Util.getTransitionDurationFromElement(element)\n\n $(element)\n .one(Util.TRANSITION_END, (event) => this._destroyElement(element, event))\n .emulateTransitionEnd(transitionDuration)\n }\n\n _destroyElement(element) {\n $(element)\n .detach()\n .trigger(Event.CLOSED)\n .remove()\n }\n\n // Static\n\n static _jQueryInterface(config) {\n return this.each(function () {\n const $element = $(this)\n let data = $element.data(DATA_KEY)\n\n if (!data) {\n data = new Alert(this)\n $element.data(DATA_KEY, data)\n }\n\n if (config === 'close') {\n data[config](this)\n }\n })\n }\n\n static _handleDismiss(alertInstance) {\n return function (event) {\n if (event) {\n event.preventDefault()\n }\n\n alertInstance.close(this)\n }\n }\n}\n\n/**\n * ------------------------------------------------------------------------\n * Data Api implementation\n * ------------------------------------------------------------------------\n */\n\n$(document).on(\n Event.CLICK_DATA_API,\n Selector.DISMISS,\n Alert._handleDismiss(new Alert())\n)\n\n/**\n * ------------------------------------------------------------------------\n * jQuery\n * ------------------------------------------------------------------------\n */\n\n$.fn[NAME] = Alert._jQueryInterface\n$.fn[NAME].Constructor = Alert\n$.fn[NAME].noConflict = () => {\n $.fn[NAME] = JQUERY_NO_CONFLICT\n return Alert._jQueryInterface\n}\n\nexport default Alert\n","/**\n * --------------------------------------------------------------------------\n * Bootstrap (v4.3.1): button.js\n * Licensed under MIT (://github.com/twbs/bootstrap/blob/master/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nimport $ from 'jquery'\n\n/**\n * ------------------------------------------------------------------------\n * Constants\n * ------------------------------------------------------------------------\n */\n\nconst NAME = 'button'\nconst VERSION = '4.3.1'\nconst DATA_KEY = 'bs.button'\nconst EVENT_KEY = `.${DATA_KEY}`\nconst DATA_API_KEY = '.data-api'\nconst JQUERY_NO_CONFLICT = $.fn[NAME]\n\nconst ClassName = {\n ACTIVE : 'active',\n BUTTON : 'btn',\n FOCUS : 'focus'\n}\n\nconst Selector = {\n DATA_TOGGLE_CARROT : '[data-toggle^=\"button\"]',\n DATA_TOGGLE : '[data-toggle=\"buttons\"]',\n INPUT : 'input:not([type=\"hidden\"])',\n ACTIVE : '.active',\n BUTTON : '.btn'\n}\n\nconst Event = {\n CLICK_DATA_API : `click${EVENT_KEY}${DATA_API_KEY}`,\n FOCUS_BLUR_DATA_API : `focus${EVENT_KEY}${DATA_API_KEY} ` +\n `blur${EVENT_KEY}${DATA_API_KEY}`\n}\n\n/**\n * ------------------------------------------------------------------------\n * Class Definition\n * ------------------------------------------------------------------------\n */\n\nclass Button {\n constructor(element) {\n this._element = element\n }\n\n // Getters\n\n static get VERSION() {\n return VERSION\n }\n\n // Public\n\n toggle() {\n let triggerChangeEvent = true\n let addAriaPressed = true\n const rootElement = $(this._element).closest(\n Selector.DATA_TOGGLE\n )[0]\n\n if (rootElement) {\n const input = this._element.querySelector(Selector.INPUT)\n\n if (input) {\n if (input.type === 'radio') {\n if (input.checked &&\n this._element.classList.contains(ClassName.ACTIVE)) {\n triggerChangeEvent = false\n } else {\n const activeElement = rootElement.querySelector(Selector.ACTIVE)\n\n if (activeElement) {\n $(activeElement).removeClass(ClassName.ACTIVE)\n }\n }\n }\n\n if (triggerChangeEvent) {\n if (input.hasAttribute('disabled') ||\n rootElement.hasAttribute('disabled') ||\n input.classList.contains('disabled') ||\n rootElement.classList.contains('disabled')) {\n return\n }\n input.checked = !this._element.classList.contains(ClassName.ACTIVE)\n $(input).trigger('change')\n }\n\n input.focus()\n addAriaPressed = false\n }\n }\n\n if (addAriaPressed) {\n this._element.setAttribute('aria-pressed',\n !this._element.classList.contains(ClassName.ACTIVE))\n }\n\n if (triggerChangeEvent) {\n $(this._element).toggleClass(ClassName.ACTIVE)\n }\n }\n\n dispose() {\n $.removeData(this._element, DATA_KEY)\n this._element = null\n }\n\n // Static\n\n static _jQueryInterface(config) {\n return this.each(function () {\n let data = $(this).data(DATA_KEY)\n\n if (!data) {\n data = new Button(this)\n $(this).data(DATA_KEY, data)\n }\n\n if (config === 'toggle') {\n data[config]()\n }\n })\n }\n}\n\n/**\n * ------------------------------------------------------------------------\n * Data Api implementation\n * ------------------------------------------------------------------------\n */\n\n$(document)\n .on(Event.CLICK_DATA_API, Selector.DATA_TOGGLE_CARROT, (event) => {\n event.preventDefault()\n\n let button = event.target\n\n if (!$(button).hasClass(ClassName.BUTTON)) {\n button = $(button).closest(Selector.BUTTON)\n }\n\n Button._jQueryInterface.call($(button), 'toggle')\n })\n .on(Event.FOCUS_BLUR_DATA_API, Selector.DATA_TOGGLE_CARROT, (event) => {\n const button = $(event.target).closest(Selector.BUTTON)[0]\n $(button).toggleClass(ClassName.FOCUS, /^focus(in)?$/.test(event.type))\n })\n\n/**\n * ------------------------------------------------------------------------\n * jQuery\n * ------------------------------------------------------------------------\n */\n\n$.fn[NAME] = Button._jQueryInterface\n$.fn[NAME].Constructor = Button\n$.fn[NAME].noConflict = () => {\n $.fn[NAME] = JQUERY_NO_CONFLICT\n return Button._jQueryInterface\n}\n\nexport default Button\n","/**\n * --------------------------------------------------------------------------\n * Bootstrap (v4.3.1): carousel.js\n * Licensed under MIT (://github.com/twbs/bootstrap/blob/master/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nimport $ from 'jquery'\nimport Util from './util'\n\n/**\n * ------------------------------------------------------------------------\n * Constants\n * ------------------------------------------------------------------------\n */\n\nconst NAME = 'carousel'\nconst VERSION = '4.3.1'\nconst DATA_KEY = 'bs.carousel'\nconst EVENT_KEY = `.${DATA_KEY}`\nconst DATA_API_KEY = '.data-api'\nconst JQUERY_NO_CONFLICT = $.fn[NAME]\nconst ARROW_LEFT_KEYCODE = 37 // KeyboardEvent.which value for left arrow key\nconst ARROW_RIGHT_KEYCODE = 39 // KeyboardEvent.which value for right arrow key\nconst TOUCHEVENT_COMPAT_WAIT = 500 // Time for mouse compat events to fire after touch\nconst SWIPE_THRESHOLD = 40\n\nconst Default = {\n interval : 5000,\n keyboard : true,\n slide : false,\n pause : 'hover',\n wrap : true,\n touch : true\n}\n\nconst DefaultType = {\n interval : '(number|boolean)',\n keyboard : 'boolean',\n slide : '(boolean|string)',\n pause : '(string|boolean)',\n wrap : 'boolean',\n touch : 'boolean'\n}\n\nconst Direction = {\n NEXT : 'next',\n PREV : 'prev',\n LEFT : 'left',\n RIGHT : 'right'\n}\n\nconst Event = {\n SLIDE : `slide${EVENT_KEY}`,\n SLID : `slid${EVENT_KEY}`,\n KEYDOWN : `keydown${EVENT_KEY}`,\n MOUSEENTER : `mouseenter${EVENT_KEY}`,\n MOUSELEAVE : `mouseleave${EVENT_KEY}`,\n TOUCHSTART : `touchstart${EVENT_KEY}`,\n TOUCHMOVE : `touchmove${EVENT_KEY}`,\n TOUCHEND : `touchend${EVENT_KEY}`,\n POINTERDOWN : `pointerdown${EVENT_KEY}`,\n POINTERUP : `pointerup${EVENT_KEY}`,\n DRAG_START : `dragstart${EVENT_KEY}`,\n LOAD_DATA_API : `load${EVENT_KEY}${DATA_API_KEY}`,\n CLICK_DATA_API : `click${EVENT_KEY}${DATA_API_KEY}`\n}\n\nconst ClassName = {\n CAROUSEL : 'carousel',\n ACTIVE : 'active',\n SLIDE : 'slide',\n RIGHT : 'carousel-item-right',\n LEFT : 'carousel-item-left',\n NEXT : 'carousel-item-next',\n PREV : 'carousel-item-prev',\n ITEM : 'carousel-item',\n POINTER_EVENT : 'pointer-event'\n}\n\nconst Selector = {\n ACTIVE : '.active',\n ACTIVE_ITEM : '.active.carousel-item',\n ITEM : '.carousel-item',\n ITEM_IMG : '.carousel-item img',\n NEXT_PREV : '.carousel-item-next, .carousel-item-prev',\n INDICATORS : '.carousel-indicators',\n DATA_SLIDE : '[data-slide], [data-slide-to]',\n DATA_RIDE : '[data-ride=\"carousel\"]'\n}\n\nconst PointerType = {\n TOUCH : 'touch',\n PEN : 'pen'\n}\n\n/**\n * ------------------------------------------------------------------------\n * Class Definition\n * ------------------------------------------------------------------------\n */\nclass Carousel {\n constructor(element, config) {\n this._items = null\n this._interval = null\n this._activeElement = null\n this._isPaused = false\n this._isSliding = false\n this.touchTimeout = null\n this.touchStartX = 0\n this.touchDeltaX = 0\n\n this._config = this._getConfig(config)\n this._element = element\n this._indicatorsElement = this._element.querySelector(Selector.INDICATORS)\n this._touchSupported = 'ontouchstart' in document.documentElement || navigator.maxTouchPoints > 0\n this._pointerEvent = Boolean(window.PointerEvent || window.MSPointerEvent)\n\n this._addEventListeners()\n }\n\n // Getters\n\n static get VERSION() {\n return VERSION\n }\n\n static get Default() {\n return Default\n }\n\n // Public\n\n next() {\n if (!this._isSliding) {\n this._slide(Direction.NEXT)\n }\n }\n\n nextWhenVisible() {\n // Don't call next when the page isn't visible\n // or the carousel or its parent isn't visible\n if (!document.hidden &&\n ($(this._element).is(':visible') && $(this._element).css('visibility') !== 'hidden')) {\n this.next()\n }\n }\n\n prev() {\n if (!this._isSliding) {\n this._slide(Direction.PREV)\n }\n }\n\n pause(event) {\n if (!event) {\n this._isPaused = true\n }\n\n if (this._element.querySelector(Selector.NEXT_PREV)) {\n Util.triggerTransitionEnd(this._element)\n this.cycle(true)\n }\n\n clearInterval(this._interval)\n this._interval = null\n }\n\n cycle(event) {\n if (!event) {\n this._isPaused = false\n }\n\n if (this._interval) {\n clearInterval(this._interval)\n this._interval = null\n }\n\n if (this._config.interval && !this._isPaused) {\n this._interval = setInterval(\n (document.visibilityState ? this.nextWhenVisible : this.next).bind(this),\n this._config.interval\n )\n }\n }\n\n to(index) {\n this._activeElement = this._element.querySelector(Selector.ACTIVE_ITEM)\n\n const activeIndex = this._getItemIndex(this._activeElement)\n\n if (index > this._items.length - 1 || index < 0) {\n return\n }\n\n if (this._isSliding) {\n $(this._element).one(Event.SLID, () => this.to(index))\n return\n }\n\n if (activeIndex === index) {\n this.pause()\n this.cycle()\n return\n }\n\n const direction = index > activeIndex\n ? Direction.NEXT\n : Direction.PREV\n\n this._slide(direction, this._items[index])\n }\n\n dispose() {\n $(this._element).off(EVENT_KEY)\n $.removeData(this._element, DATA_KEY)\n\n this._items = null\n this._config = null\n this._element = null\n this._interval = null\n this._isPaused = null\n this._isSliding = null\n this._activeElement = null\n this._indicatorsElement = null\n }\n\n // Private\n\n _getConfig(config) {\n config = {\n ...Default,\n ...config\n }\n Util.typeCheckConfig(NAME, config, DefaultType)\n return config\n }\n\n _handleSwipe() {\n const absDeltax = Math.abs(this.touchDeltaX)\n\n if (absDeltax <= SWIPE_THRESHOLD) {\n return\n }\n\n const direction = absDeltax / this.touchDeltaX\n\n // swipe left\n if (direction > 0) {\n this.prev()\n }\n\n // swipe right\n if (direction < 0) {\n this.next()\n }\n }\n\n _addEventListeners() {\n if (this._config.keyboard) {\n $(this._element)\n .on(Event.KEYDOWN, (event) => this._keydown(event))\n }\n\n if (this._config.pause === 'hover') {\n $(this._element)\n .on(Event.MOUSEENTER, (event) => this.pause(event))\n .on(Event.MOUSELEAVE, (event) => this.cycle(event))\n }\n\n if (this._config.touch) {\n this._addTouchEventListeners()\n }\n }\n\n _addTouchEventListeners() {\n if (!this._touchSupported) {\n return\n }\n\n const start = (event) => {\n if (this._pointerEvent && PointerType[event.originalEvent.pointerType.toUpperCase()]) {\n this.touchStartX = event.originalEvent.clientX\n } else if (!this._pointerEvent) {\n this.touchStartX = event.originalEvent.touches[0].clientX\n }\n }\n\n const move = (event) => {\n // ensure swiping with one touch and not pinching\n if (event.originalEvent.touches && event.originalEvent.touches.length > 1) {\n this.touchDeltaX = 0\n } else {\n this.touchDeltaX = event.originalEvent.touches[0].clientX - this.touchStartX\n }\n }\n\n const end = (event) => {\n if (this._pointerEvent && PointerType[event.originalEvent.pointerType.toUpperCase()]) {\n this.touchDeltaX = event.originalEvent.clientX - this.touchStartX\n }\n\n this._handleSwipe()\n if (this._config.pause === 'hover') {\n // If it's a touch-enabled device, mouseenter/leave are fired as\n // part of the mouse compatibility events on first tap - the carousel\n // would stop cycling until user tapped out of it;\n // here, we listen for touchend, explicitly pause the carousel\n // (as if it's the second time we tap on it, mouseenter compat event\n // is NOT fired) and after a timeout (to allow for mouse compatibility\n // events to fire) we explicitly restart cycling\n\n this.pause()\n if (this.touchTimeout) {\n clearTimeout(this.touchTimeout)\n }\n this.touchTimeout = setTimeout((event) => this.cycle(event), TOUCHEVENT_COMPAT_WAIT + this._config.interval)\n }\n }\n\n $(this._element.querySelectorAll(Selector.ITEM_IMG)).on(Event.DRAG_START, (e) => e.preventDefault())\n if (this._pointerEvent) {\n $(this._element).on(Event.POINTERDOWN, (event) => start(event))\n $(this._element).on(Event.POINTERUP, (event) => end(event))\n\n this._element.classList.add(ClassName.POINTER_EVENT)\n } else {\n $(this._element).on(Event.TOUCHSTART, (event) => start(event))\n $(this._element).on(Event.TOUCHMOVE, (event) => move(event))\n $(this._element).on(Event.TOUCHEND, (event) => end(event))\n }\n }\n\n _keydown(event) {\n if (/input|textarea/i.test(event.target.tagName)) {\n return\n }\n\n switch (event.which) {\n case ARROW_LEFT_KEYCODE:\n event.preventDefault()\n this.prev()\n break\n case ARROW_RIGHT_KEYCODE:\n event.preventDefault()\n this.next()\n break\n default:\n }\n }\n\n _getItemIndex(element) {\n this._items = element && element.parentNode\n ? [].slice.call(element.parentNode.querySelectorAll(Selector.ITEM))\n : []\n return this._items.indexOf(element)\n }\n\n _getItemByDirection(direction, activeElement) {\n const isNextDirection = direction === Direction.NEXT\n const isPrevDirection = direction === Direction.PREV\n const activeIndex = this._getItemIndex(activeElement)\n const lastItemIndex = this._items.length - 1\n const isGoingToWrap = isPrevDirection && activeIndex === 0 ||\n isNextDirection && activeIndex === lastItemIndex\n\n if (isGoingToWrap && !this._config.wrap) {\n return activeElement\n }\n\n const delta = direction === Direction.PREV ? -1 : 1\n const itemIndex = (activeIndex + delta) % this._items.length\n\n return itemIndex === -1\n ? this._items[this._items.length - 1] : this._items[itemIndex]\n }\n\n _triggerSlideEvent(relatedTarget, eventDirectionName) {\n const targetIndex = this._getItemIndex(relatedTarget)\n const fromIndex = this._getItemIndex(this._element.querySelector(Selector.ACTIVE_ITEM))\n const slideEvent = $.Event(Event.SLIDE, {\n relatedTarget,\n direction: eventDirectionName,\n from: fromIndex,\n to: targetIndex\n })\n\n $(this._element).trigger(slideEvent)\n\n return slideEvent\n }\n\n _setActiveIndicatorElement(element) {\n if (this._indicatorsElement) {\n const indicators = [].slice.call(this._indicatorsElement.querySelectorAll(Selector.ACTIVE))\n $(indicators)\n .removeClass(ClassName.ACTIVE)\n\n const nextIndicator = this._indicatorsElement.children[\n this._getItemIndex(element)\n ]\n\n if (nextIndicator) {\n $(nextIndicator).addClass(ClassName.ACTIVE)\n }\n }\n }\n\n _slide(direction, element) {\n const activeElement = this._element.querySelector(Selector.ACTIVE_ITEM)\n const activeElementIndex = this._getItemIndex(activeElement)\n const nextElement = element || activeElement &&\n this._getItemByDirection(direction, activeElement)\n const nextElementIndex = this._getItemIndex(nextElement)\n const isCycling = Boolean(this._interval)\n\n let directionalClassName\n let orderClassName\n let eventDirectionName\n\n if (direction === Direction.NEXT) {\n directionalClassName = ClassName.LEFT\n orderClassName = ClassName.NEXT\n eventDirectionName = Direction.LEFT\n } else {\n directionalClassName = ClassName.RIGHT\n orderClassName = ClassName.PREV\n eventDirectionName = Direction.RIGHT\n }\n\n if (nextElement && $(nextElement).hasClass(ClassName.ACTIVE)) {\n this._isSliding = false\n return\n }\n\n const slideEvent = this._triggerSlideEvent(nextElement, eventDirectionName)\n if (slideEvent.isDefaultPrevented()) {\n return\n }\n\n if (!activeElement || !nextElement) {\n // Some weirdness is happening, so we bail\n return\n }\n\n this._isSliding = true\n\n if (isCycling) {\n this.pause()\n }\n\n this._setActiveIndicatorElement(nextElement)\n\n const slidEvent = $.Event(Event.SLID, {\n relatedTarget: nextElement,\n direction: eventDirectionName,\n from: activeElementIndex,\n to: nextElementIndex\n })\n\n if ($(this._element).hasClass(ClassName.SLIDE)) {\n $(nextElement).addClass(orderClassName)\n\n Util.reflow(nextElement)\n\n $(activeElement).addClass(directionalClassName)\n $(nextElement).addClass(directionalClassName)\n\n const nextElementInterval = parseInt(nextElement.getAttribute('data-interval'), 10)\n if (nextElementInterval) {\n this._config.defaultInterval = this._config.defaultInterval || this._config.interval\n this._config.interval = nextElementInterval\n } else {\n this._config.interval = this._config.defaultInterval || this._config.interval\n }\n\n const transitionDuration = Util.getTransitionDurationFromElement(activeElement)\n\n $(activeElement)\n .one(Util.TRANSITION_END, () => {\n $(nextElement)\n .removeClass(`${directionalClassName} ${orderClassName}`)\n .addClass(ClassName.ACTIVE)\n\n $(activeElement).removeClass(`${ClassName.ACTIVE} ${orderClassName} ${directionalClassName}`)\n\n this._isSliding = false\n\n setTimeout(() => $(this._element).trigger(slidEvent), 0)\n })\n .emulateTransitionEnd(transitionDuration)\n } else {\n $(activeElement).removeClass(ClassName.ACTIVE)\n $(nextElement).addClass(ClassName.ACTIVE)\n\n this._isSliding = false\n $(this._element).trigger(slidEvent)\n }\n\n if (isCycling) {\n this.cycle()\n }\n }\n\n // Static\n\n static _jQueryInterface(config) {\n return this.each(function () {\n let data = $(this).data(DATA_KEY)\n let _config = {\n ...Default,\n ...$(this).data()\n }\n\n if (typeof config === 'object') {\n _config = {\n ..._config,\n ...config\n }\n }\n\n const action = typeof config === 'string' ? config : _config.slide\n\n if (!data) {\n data = new Carousel(this, _config)\n $(this).data(DATA_KEY, data)\n }\n\n if (typeof config === 'number') {\n data.to(config)\n } else if (typeof action === 'string') {\n if (typeof data[action] === 'undefined') {\n throw new TypeError(`No method named \"${action}\"`)\n }\n data[action]()\n } else if (_config.interval && _config.ride) {\n data.pause()\n data.cycle()\n }\n })\n }\n\n static _dataApiClickHandler(event) {\n const selector = Util.getSelectorFromElement(this)\n\n if (!selector) {\n return\n }\n\n const target = $(selector)[0]\n\n if (!target || !$(target).hasClass(ClassName.CAROUSEL)) {\n return\n }\n\n const config = {\n ...$(target).data(),\n ...$(this).data()\n }\n const slideIndex = this.getAttribute('data-slide-to')\n\n if (slideIndex) {\n config.interval = false\n }\n\n Carousel._jQueryInterface.call($(target), config)\n\n if (slideIndex) {\n $(target).data(DATA_KEY).to(slideIndex)\n }\n\n event.preventDefault()\n }\n}\n\n/**\n * ------------------------------------------------------------------------\n * Data Api implementation\n * ------------------------------------------------------------------------\n */\n\n$(document)\n .on(Event.CLICK_DATA_API, Selector.DATA_SLIDE, Carousel._dataApiClickHandler)\n\n$(window).on(Event.LOAD_DATA_API, () => {\n const carousels = [].slice.call(document.querySelectorAll(Selector.DATA_RIDE))\n for (let i = 0, len = carousels.length; i < len; i++) {\n const $carousel = $(carousels[i])\n Carousel._jQueryInterface.call($carousel, $carousel.data())\n }\n})\n\n/**\n * ------------------------------------------------------------------------\n * jQuery\n * ------------------------------------------------------------------------\n */\n\n$.fn[NAME] = Carousel._jQueryInterface\n$.fn[NAME].Constructor = Carousel\n$.fn[NAME].noConflict = () => {\n $.fn[NAME] = JQUERY_NO_CONFLICT\n return Carousel._jQueryInterface\n}\n\nexport default Carousel\n","/**\n * --------------------------------------------------------------------------\n * Bootstrap (v4.3.1): collapse.js\n * Licensed under MIT (://github.com/twbs/bootstrap/blob/master/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nimport $ from 'jquery'\nimport Util from './util'\n\n/**\n * ------------------------------------------------------------------------\n * Constants\n * ------------------------------------------------------------------------\n */\n\nconst NAME = 'collapse'\nconst VERSION = '4.3.1'\nconst DATA_KEY = 'bs.collapse'\nconst EVENT_KEY = `.${DATA_KEY}`\nconst DATA_API_KEY = '.data-api'\nconst JQUERY_NO_CONFLICT = $.fn[NAME]\n\nconst Default = {\n toggle : true,\n parent : ''\n}\n\nconst DefaultType = {\n toggle : 'boolean',\n parent : '(string|element)'\n}\n\nconst Event = {\n SHOW : `show${EVENT_KEY}`,\n SHOWN : `shown${EVENT_KEY}`,\n HIDE : `hide${EVENT_KEY}`,\n HIDDEN : `hidden${EVENT_KEY}`,\n CLICK_DATA_API : `click${EVENT_KEY}${DATA_API_KEY}`\n}\n\nconst ClassName = {\n SHOW : 'show',\n COLLAPSE : 'collapse',\n COLLAPSING : 'collapsing',\n COLLAPSED : 'collapsed'\n}\n\nconst Dimension = {\n WIDTH : 'width',\n HEIGHT : 'height'\n}\n\nconst Selector = {\n ACTIVES : '.show, .collapsing',\n DATA_TOGGLE : '[data-toggle=\"collapse\"]'\n}\n\n/**\n * ------------------------------------------------------------------------\n * Class Definition\n * ------------------------------------------------------------------------\n */\n\nclass Collapse {\n constructor(element, config) {\n this._isTransitioning = false\n this._element = element\n this._config = this._getConfig(config)\n this._triggerArray = [].slice.call(document.querySelectorAll(\n `[data-toggle=\"collapse\"][href=\"#${element.id}\"],` +\n `[data-toggle=\"collapse\"][data-target=\"#${element.id}\"]`\n ))\n\n const toggleList = [].slice.call(document.querySelectorAll(Selector.DATA_TOGGLE))\n for (let i = 0, len = toggleList.length; i < len; i++) {\n const elem = toggleList[i]\n const selector = Util.getSelectorFromElement(elem)\n const filterElement = [].slice.call(document.querySelectorAll(selector))\n .filter((foundElem) => foundElem === element)\n\n if (selector !== null && filterElement.length > 0) {\n this._selector = selector\n this._triggerArray.push(elem)\n }\n }\n\n this._parent = this._config.parent ? this._getParent() : null\n\n if (!this._config.parent) {\n this._addAriaAndCollapsedClass(this._element, this._triggerArray)\n }\n\n if (this._config.toggle) {\n this.toggle()\n }\n }\n\n // Getters\n\n static get VERSION() {\n return VERSION\n }\n\n static get Default() {\n return Default\n }\n\n // Public\n\n toggle() {\n if ($(this._element).hasClass(ClassName.SHOW)) {\n this.hide()\n } else {\n this.show()\n }\n }\n\n show() {\n if (this._isTransitioning ||\n $(this._element).hasClass(ClassName.SHOW)) {\n return\n }\n\n let actives\n let activesData\n\n if (this._parent) {\n actives = [].slice.call(this._parent.querySelectorAll(Selector.ACTIVES))\n .filter((elem) => {\n if (typeof this._config.parent === 'string') {\n return elem.getAttribute('data-parent') === this._config.parent\n }\n\n return elem.classList.contains(ClassName.COLLAPSE)\n })\n\n if (actives.length === 0) {\n actives = null\n }\n }\n\n if (actives) {\n activesData = $(actives).not(this._selector).data(DATA_KEY)\n if (activesData && activesData._isTransitioning) {\n return\n }\n }\n\n const startEvent = $.Event(Event.SHOW)\n $(this._element).trigger(startEvent)\n if (startEvent.isDefaultPrevented()) {\n return\n }\n\n if (actives) {\n Collapse._jQueryInterface.call($(actives).not(this._selector), 'hide')\n if (!activesData) {\n $(actives).data(DATA_KEY, null)\n }\n }\n\n const dimension = this._getDimension()\n\n $(this._element)\n .removeClass(ClassName.COLLAPSE)\n .addClass(ClassName.COLLAPSING)\n\n this._element.style[dimension] = 0\n\n if (this._triggerArray.length) {\n $(this._triggerArray)\n .removeClass(ClassName.COLLAPSED)\n .attr('aria-expanded', true)\n }\n\n this.setTransitioning(true)\n\n const complete = () => {\n $(this._element)\n .removeClass(ClassName.COLLAPSING)\n .addClass(ClassName.COLLAPSE)\n .addClass(ClassName.SHOW)\n\n this._element.style[dimension] = ''\n\n this.setTransitioning(false)\n\n $(this._element).trigger(Event.SHOWN)\n }\n\n const capitalizedDimension = dimension[0].toUpperCase() + dimension.slice(1)\n const scrollSize = `scroll${capitalizedDimension}`\n const transitionDuration = Util.getTransitionDurationFromElement(this._element)\n\n $(this._element)\n .one(Util.TRANSITION_END, complete)\n .emulateTransitionEnd(transitionDuration)\n\n this._element.style[dimension] = `${this._element[scrollSize]}px`\n }\n\n hide() {\n if (this._isTransitioning ||\n !$(this._element).hasClass(ClassName.SHOW)) {\n return\n }\n\n const startEvent = $.Event(Event.HIDE)\n $(this._element).trigger(startEvent)\n if (startEvent.isDefaultPrevented()) {\n return\n }\n\n const dimension = this._getDimension()\n\n this._element.style[dimension] = `${this._element.getBoundingClientRect()[dimension]}px`\n\n Util.reflow(this._element)\n\n $(this._element)\n .addClass(ClassName.COLLAPSING)\n .removeClass(ClassName.COLLAPSE)\n .removeClass(ClassName.SHOW)\n\n const triggerArrayLength = this._triggerArray.length\n if (triggerArrayLength > 0) {\n for (let i = 0; i < triggerArrayLength; i++) {\n const trigger = this._triggerArray[i]\n const selector = Util.getSelectorFromElement(trigger)\n\n if (selector !== null) {\n const $elem = $([].slice.call(document.querySelectorAll(selector)))\n if (!$elem.hasClass(ClassName.SHOW)) {\n $(trigger).addClass(ClassName.COLLAPSED)\n .attr('aria-expanded', false)\n }\n }\n }\n }\n\n this.setTransitioning(true)\n\n const complete = () => {\n this.setTransitioning(false)\n $(this._element)\n .removeClass(ClassName.COLLAPSING)\n .addClass(ClassName.COLLAPSE)\n .trigger(Event.HIDDEN)\n }\n\n this._element.style[dimension] = ''\n const transitionDuration = Util.getTransitionDurationFromElement(this._element)\n\n $(this._element)\n .one(Util.TRANSITION_END, complete)\n .emulateTransitionEnd(transitionDuration)\n }\n\n setTransitioning(isTransitioning) {\n this._isTransitioning = isTransitioning\n }\n\n dispose() {\n $.removeData(this._element, DATA_KEY)\n\n this._config = null\n this._parent = null\n this._element = null\n this._triggerArray = null\n this._isTransitioning = null\n }\n\n // Private\n\n _getConfig(config) {\n config = {\n ...Default,\n ...config\n }\n config.toggle = Boolean(config.toggle) // Coerce string values\n Util.typeCheckConfig(NAME, config, DefaultType)\n return config\n }\n\n _getDimension() {\n const hasWidth = $(this._element).hasClass(Dimension.WIDTH)\n return hasWidth ? Dimension.WIDTH : Dimension.HEIGHT\n }\n\n _getParent() {\n let parent\n\n if (Util.isElement(this._config.parent)) {\n parent = this._config.parent\n\n // It's a jQuery object\n if (typeof this._config.parent.jquery !== 'undefined') {\n parent = this._config.parent[0]\n }\n } else {\n parent = document.querySelector(this._config.parent)\n }\n\n const selector =\n `[data-toggle=\"collapse\"][data-parent=\"${this._config.parent}\"]`\n\n const children = [].slice.call(parent.querySelectorAll(selector))\n $(children).each((i, element) => {\n this._addAriaAndCollapsedClass(\n Collapse._getTargetFromElement(element),\n [element]\n )\n })\n\n return parent\n }\n\n _addAriaAndCollapsedClass(element, triggerArray) {\n const isOpen = $(element).hasClass(ClassName.SHOW)\n\n if (triggerArray.length) {\n $(triggerArray)\n .toggleClass(ClassName.COLLAPSED, !isOpen)\n .attr('aria-expanded', isOpen)\n }\n }\n\n // Static\n\n static _getTargetFromElement(element) {\n const selector = Util.getSelectorFromElement(element)\n return selector ? document.querySelector(selector) : null\n }\n\n static _jQueryInterface(config) {\n return this.each(function () {\n const $this = $(this)\n let data = $this.data(DATA_KEY)\n const _config = {\n ...Default,\n ...$this.data(),\n ...typeof config === 'object' && config ? config : {}\n }\n\n if (!data && _config.toggle && /show|hide/.test(config)) {\n _config.toggle = false\n }\n\n if (!data) {\n data = new Collapse(this, _config)\n $this.data(DATA_KEY, data)\n }\n\n if (typeof config === 'string') {\n if (typeof data[config] === 'undefined') {\n throw new TypeError(`No method named \"${config}\"`)\n }\n data[config]()\n }\n })\n }\n}\n\n/**\n * ------------------------------------------------------------------------\n * Data Api implementation\n * ------------------------------------------------------------------------\n */\n\n$(document).on(Event.CLICK_DATA_API, Selector.DATA_TOGGLE, function (event) {\n // preventDefault only for <a> elements (which change the URL) not inside the collapsible element\n if (event.currentTarget.tagName === 'A') {\n event.preventDefault()\n }\n\n const $trigger = $(this)\n const selector = Util.getSelectorFromElement(this)\n const selectors = [].slice.call(document.querySelectorAll(selector))\n\n $(selectors).each(function () {\n const $target = $(this)\n const data = $target.data(DATA_KEY)\n const config = data ? 'toggle' : $trigger.data()\n Collapse._jQueryInterface.call($target, config)\n })\n})\n\n/**\n * ------------------------------------------------------------------------\n * jQuery\n * ------------------------------------------------------------------------\n */\n\n$.fn[NAME] = Collapse._jQueryInterface\n$.fn[NAME].Constructor = Collapse\n$.fn[NAME].noConflict = () => {\n $.fn[NAME] = JQUERY_NO_CONFLICT\n return Collapse._jQueryInterface\n}\n\nexport default Collapse\n","/**\n * --------------------------------------------------------------------------\n * Bootstrap (v4.3.1): dropdown.js\n * Licensed under MIT (://github.com/twbs/bootstrap/blob/master/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nimport $ from 'jquery'\nimport Popper from 'popper.js'\nimport Util from './util'\n\n/**\n * ------------------------------------------------------------------------\n * Constants\n * ------------------------------------------------------------------------\n */\n\nconst NAME = 'dropdown'\nconst VERSION = '4.3.1'\nconst DATA_KEY = 'bs.dropdown'\nconst EVENT_KEY = `.${DATA_KEY}`\nconst DATA_API_KEY = '.data-api'\nconst JQUERY_NO_CONFLICT = $.fn[NAME]\nconst ESCAPE_KEYCODE = 27 // KeyboardEvent.which value for Escape (Esc) key\nconst SPACE_KEYCODE = 32 // KeyboardEvent.which value for space key\nconst TAB_KEYCODE = 9 // KeyboardEvent.which value for tab key\nconst ARROW_UP_KEYCODE = 38 // KeyboardEvent.which value for up arrow key\nconst ARROW_DOWN_KEYCODE = 40 // KeyboardEvent.which value for down arrow key\nconst RIGHT_MOUSE_BUTTON_WHICH = 3 // MouseEvent.which value for the right button (assuming a right-handed mouse)\nconst REGEXP_KEYDOWN = new RegExp(`${ARROW_UP_KEYCODE}|${ARROW_DOWN_KEYCODE}|${ESCAPE_KEYCODE}`)\n\nconst Event = {\n HIDE : `hide${EVENT_KEY}`,\n HIDDEN : `hidden${EVENT_KEY}`,\n SHOW : `show${EVENT_KEY}`,\n SHOWN : `shown${EVENT_KEY}`,\n CLICK : `click${EVENT_KEY}`,\n CLICK_DATA_API : `click${EVENT_KEY}${DATA_API_KEY}`,\n KEYDOWN_DATA_API : `keydown${EVENT_KEY}${DATA_API_KEY}`,\n KEYUP_DATA_API : `keyup${EVENT_KEY}${DATA_API_KEY}`\n}\n\nconst ClassName = {\n DISABLED : 'disabled',\n SHOW : 'show',\n DROPUP : 'dropup',\n DROPRIGHT : 'dropright',\n DROPLEFT : 'dropleft',\n MENURIGHT : 'dropdown-menu-right',\n MENULEFT : 'dropdown-menu-left',\n POSITION_STATIC : 'position-static'\n}\n\nconst Selector = {\n DATA_TOGGLE : '[data-toggle=\"dropdown\"]',\n FORM_CHILD : '.dropdown form',\n MENU : '.dropdown-menu',\n NAVBAR_NAV : '.navbar-nav',\n VISIBLE_ITEMS : '.dropdown-menu .dropdown-item:not(.disabled):not(:disabled)'\n}\n\nconst AttachmentMap = {\n TOP : 'top-start',\n TOPEND : 'top-end',\n BOTTOM : 'bottom-start',\n BOTTOMEND : 'bottom-end',\n RIGHT : 'right-start',\n RIGHTEND : 'right-end',\n LEFT : 'left-start',\n LEFTEND : 'left-end'\n}\n\nconst Default = {\n offset : 0,\n flip : true,\n boundary : 'scrollParent',\n reference : 'toggle',\n display : 'dynamic'\n}\n\nconst DefaultType = {\n offset : '(number|string|function)',\n flip : 'boolean',\n boundary : '(string|element)',\n reference : '(string|element)',\n display : 'string'\n}\n\n/**\n * ------------------------------------------------------------------------\n * Class Definition\n * ------------------------------------------------------------------------\n */\n\nclass Dropdown {\n constructor(element, config) {\n this._element = element\n this._popper = null\n this._config = this._getConfig(config)\n this._menu = this._getMenuElement()\n this._inNavbar = this._detectNavbar()\n\n this._addEventListeners()\n }\n\n // Getters\n\n static get VERSION() {\n return VERSION\n }\n\n static get Default() {\n return Default\n }\n\n static get DefaultType() {\n return DefaultType\n }\n\n // Public\n\n toggle() {\n if (this._element.disabled || $(this._element).hasClass(ClassName.DISABLED)) {\n return\n }\n\n const parent = Dropdown._getParentFromElement(this._element)\n const isActive = $(this._menu).hasClass(ClassName.SHOW)\n\n Dropdown._clearMenus()\n\n if (isActive) {\n return\n }\n\n const relatedTarget = {\n relatedTarget: this._element\n }\n const showEvent = $.Event(Event.SHOW, relatedTarget)\n\n $(parent).trigger(showEvent)\n\n if (showEvent.isDefaultPrevented()) {\n return\n }\n\n // Disable totally Popper.js for Dropdown in Navbar\n if (!this._inNavbar) {\n /**\n * Check for Popper dependency\n * Popper - ://popper.js.org\n */\n if (typeof Popper === 'undefined') {\n throw new TypeError('Bootstrap\\'s dropdowns require Popper.js (://popper.js.org/)')\n }\n\n let referenceElement = this._element\n\n if (this._config.reference === 'parent') {\n referenceElement = parent\n } else if (Util.isElement(this._config.reference)) {\n referenceElement = this._config.reference\n\n // Check if it's jQuery element\n if (typeof this._config.reference.jquery !== 'undefined') {\n referenceElement = this._config.reference[0]\n }\n }\n\n // If boundary is not `scrollParent`, then set position to `static`\n // to allow the menu to \"escape\" the scroll parent's boundaries\n // ://github.com/twbs/bootstrap/issues/24251\n if (this._config.boundary !== 'scrollParent') {\n $(parent).addClass(ClassName.POSITION_STATIC)\n }\n this._popper = new Popper(referenceElement, this._menu, this._getPopperConfig())\n }\n\n // If this is a touch-enabled device we add extra\n // empty mouseover listeners to the body's immediate children;\n // only needed because of broken event delegation on iOS\n // ://www.quirksmode.org/blog/archives/2014/02/mouse_event_bub.html\n if ('ontouchstart' in document.documentElement &&\n $(parent).closest(Selector.NAVBAR_NAV).length === 0) {\n $(document.body).children().on('mouseover', null, $.noop)\n }\n\n this._element.focus()\n this._element.setAttribute('aria-expanded', true)\n\n $(this._menu).toggleClass(ClassName.SHOW)\n $(parent)\n .toggleClass(ClassName.SHOW)\n .trigger($.Event(Event.SHOWN, relatedTarget))\n }\n\n show() {\n if (this._element.disabled || $(this._element).hasClass(ClassName.DISABLED) || $(this._menu).hasClass(ClassName.SHOW)) {\n return\n }\n\n const relatedTarget = {\n relatedTarget: this._element\n }\n const showEvent = $.Event(Event.SHOW, relatedTarget)\n const parent = Dropdown._getParentFromElement(this._element)\n\n $(parent).trigger(showEvent)\n\n if (showEvent.isDefaultPrevented()) {\n return\n }\n\n $(this._menu).toggleClass(ClassName.SHOW)\n $(parent)\n .toggleClass(ClassName.SHOW)\n .trigger($.Event(Event.SHOWN, relatedTarget))\n }\n\n hide() {\n if (this._element.disabled || $(this._element).hasClass(ClassName.DISABLED) || !$(this._menu).hasClass(ClassName.SHOW)) {\n return\n }\n\n const relatedTarget = {\n relatedTarget: this._element\n }\n const hideEvent = $.Event(Event.HIDE, relatedTarget)\n const parent = Dropdown._getParentFromElement(this._element)\n\n $(parent).trigger(hideEvent)\n\n if (hideEvent.isDefaultPrevented()) {\n return\n }\n\n $(this._menu).toggleClass(ClassName.SHOW)\n $(parent)\n .toggleClass(ClassName.SHOW)\n .trigger($.Event(Event.HIDDEN, relatedTarget))\n }\n\n dispose() {\n $.removeData(this._element, DATA_KEY)\n $(this._element).off(EVENT_KEY)\n this._element = null\n this._menu = null\n if (this._popper !== null) {\n this._popper.destroy()\n this._popper = null\n }\n }\n\n update() {\n this._inNavbar = this._detectNavbar()\n if (this._popper !== null) {\n this._popper.scheduleUpdate()\n }\n }\n\n // Private\n\n _addEventListeners() {\n $(this._element).on(Event.CLICK, (event) => {\n event.preventDefault()\n event.stopPropagation()\n this.toggle()\n })\n }\n\n _getConfig(config) {\n config = {\n ...this.constructor.Default,\n ...$(this._element).data(),\n ...config\n }\n\n Util.typeCheckConfig(\n NAME,\n config,\n this.constructor.DefaultType\n )\n\n return config\n }\n\n _getMenuElement() {\n if (!this._menu) {\n const parent = Dropdown._getParentFromElement(this._element)\n\n if (parent) {\n this._menu = parent.querySelector(Selector.MENU)\n }\n }\n return this._menu\n }\n\n _getPlacement() {\n const $parentDropdown = $(this._element.parentNode)\n let placement = AttachmentMap.BOTTOM\n\n // Handle dropup\n if ($parentDropdown.hasClass(ClassName.DROPUP)) {\n placement = AttachmentMap.TOP\n if ($(this._menu).hasClass(ClassName.MENURIGHT)) {\n placement = AttachmentMap.TOPEND\n }\n } else if ($parentDropdown.hasClass(ClassName.DROPRIGHT)) {\n placement = AttachmentMap.RIGHT\n } else if ($parentDropdown.hasClass(ClassName.DROPLEFT)) {\n placement = AttachmentMap.LEFT\n } else if ($(this._menu).hasClass(ClassName.MENURIGHT)) {\n placement = AttachmentMap.BOTTOMEND\n }\n return placement\n }\n\n _detectNavbar() {\n return $(this._element).closest('.navbar').length > 0\n }\n\n _getOffset() {\n const offset = {}\n\n if (typeof this._config.offset === 'function') {\n offset.fn = (data) => {\n data.offsets = {\n ...data.offsets,\n ...this._config.offset(data.offsets, this._element) || {}\n }\n\n return data\n }\n } else {\n offset.offset = this._config.offset\n }\n\n return offset\n }\n\n _getPopperConfig() {\n const popperConfig = {\n placement: this._getPlacement(),\n modifiers: {\n offset: this._getOffset(),\n flip: {\n enabled: this._config.flip\n },\n preventOverflow: {\n boundariesElement: this._config.boundary\n }\n }\n }\n\n // Disable Popper.js if we have a static display\n if (this._config.display === 'static') {\n popperConfig.modifiers.applyStyle = {\n enabled: false\n }\n }\n\n return popperConfig\n }\n\n // Static\n\n static _jQueryInterface(config) {\n return this.each(function () {\n let data = $(this).data(DATA_KEY)\n const _config = typeof config === 'object' ? config : null\n\n if (!data) {\n data = new Dropdown(this, _config)\n $(this).data(DATA_KEY, data)\n }\n\n if (typeof config === 'string') {\n if (typeof data[config] === 'undefined') {\n throw new TypeError(`No method named \"${config}\"`)\n }\n data[config]()\n }\n })\n }\n\n static _clearMenus(event) {\n if (event && (event.which === RIGHT_MOUSE_BUTTON_WHICH ||\n event.type === 'keyup' && event.which !== TAB_KEYCODE)) {\n return\n }\n\n const toggles = [].slice.call(document.querySelectorAll(Selector.DATA_TOGGLE))\n\n for (let i = 0, len = toggles.length; i < len; i++) {\n const parent = Dropdown._getParentFromElement(toggles[i])\n const lowgo = $(toggles[i]).data(DATA_KEY)\n const relatedTarget = {\n relatedTarget: toggles[i]\n }\n\n if (event && event.type === 'click') {\n relatedTarget.clickEvent = event\n }\n\n if (!lowgo) {\n continue\n }\n\n const dropdownMenu = lowgo._menu\n if (!$(parent).hasClass(ClassName.SHOW)) {\n continue\n }\n\n if (event && (event.type === 'click' &&\n /input|textarea/i.test(event.target.tagName) || event.type === 'keyup' && event.which === TAB_KEYCODE) &&\n $.contains(parent, event.target)) {\n continue\n }\n\n const hideEvent = $.Event(Event.HIDE, relatedTarget)\n $(parent).trigger(hideEvent)\n if (hideEvent.isDefaultPrevented()) {\n continue\n }\n\n // If this is a touch-enabled device we remove the extra\n // empty mouseover listeners we added for iOS support\n if ('ontouchstart' in document.documentElement) {\n $(document.body).children().off('mouseover', null, $.noop)\n }\n\n toggles[i].setAttribute('aria-expanded', 'false')\n\n $(dropdownMenu).removeClass(ClassName.SHOW)\n $(parent)\n .removeClass(ClassName.SHOW)\n .trigger($.Event(Event.HIDDEN, relatedTarget))\n }\n }\n\n static _getParentFromElement(element) {\n let parent\n const selector = Util.getSelectorFromElement(element)\n\n if (selector) {\n parent = document.querySelector(selector)\n }\n\n return parent || element.parentNode\n }\n\n // eslint-disable-next-line complexity\n static _dataApiKeydownHandler(event) {\n // If not input/textarea:\n // - And not a key in REGEXP_KEYDOWN => not a dropdown command\n // If input/textarea:\n // - If space key => not a dropdown command\n // - If key is other than escape\n // - If key is not up or down => not a dropdown command\n // - If trigger inside the menu => not a dropdown command\n if (/input|textarea/i.test(event.target.tagName)\n ? event.which === SPACE_KEYCODE || event.which !== ESCAPE_KEYCODE &&\n (event.which !== ARROW_DOWN_KEYCODE && event.which !== ARROW_UP_KEYCODE ||\n $(event.target).closest(Selector.MENU).length) : !REGEXP_KEYDOWN.test(event.which)) {\n return\n }\n\n event.preventDefault()\n event.stopPropagation()\n\n if (this.disabled || $(this).hasClass(ClassName.DISABLED)) {\n return\n }\n\n const parent = Dropdown._getParentFromElement(this)\n const isActive = $(parent).hasClass(ClassName.SHOW)\n\n if (!isActive || isActive && (event.which === ESCAPE_KEYCODE || event.which === SPACE_KEYCODE)) {\n if (event.which === ESCAPE_KEYCODE) {\n const toggle = parent.querySelector(Selector.DATA_TOGGLE)\n $(toggle).trigger('focus')\n }\n\n $(this).trigger('click')\n return\n }\n\n const items = [].slice.call(parent.querySelectorAll(Selector.VISIBLE_ITEMS))\n\n if (items.length === 0) {\n return\n }\n\n let index = items.indexOf(event.target)\n\n if (event.which === ARROW_UP_KEYCODE && index > 0) { // Up\n index--\n }\n\n if (event.which === ARROW_DOWN_KEYCODE && index < items.length - 1) { // Down\n index++\n }\n\n if (index < 0) {\n index = 0\n }\n\n items[index].focus()\n }\n}\n\n/**\n * ------------------------------------------------------------------------\n * Data Api implementation\n * ------------------------------------------------------------------------\n */\n\n$(document)\n .on(Event.KEYDOWN_DATA_API, Selector.DATA_TOGGLE, Dropdown._dataApiKeydownHandler)\n .on(Event.KEYDOWN_DATA_API, Selector.MENU, Dropdown._dataApiKeydownHandler)\n .on(`${Event.CLICK_DATA_API} ${Event.KEYUP_DATA_API}`, Dropdown._clearMenus)\n .on(Event.CLICK_DATA_API, Selector.DATA_TOGGLE, function (event) {\n event.preventDefault()\n event.stopPropagation()\n Dropdown._jQueryInterface.call($(this), 'toggle')\n })\n .on(Event.CLICK_DATA_API, Selector.FORM_CHILD, (e) => {\n e.stopPropagation()\n })\n\n/**\n * ------------------------------------------------------------------------\n * jQuery\n * ------------------------------------------------------------------------\n */\n\n$.fn[NAME] = Dropdown._jQueryInterface\n$.fn[NAME].Constructor = Dropdown\n$.fn[NAME].noConflict = () => {\n $.fn[NAME] = JQUERY_NO_CONFLICT\n return Dropdown._jQueryInterface\n}\n\n\nexport default Dropdown\n","/**\n * --------------------------------------------------------------------------\n * Bootstrap (v4.3.1): modal.js\n * Licensed under MIT (://github.com/twbs/bootstrap/blob/master/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nimport $ from 'jquery'\nimport Util from './util'\n\n/**\n * ------------------------------------------------------------------------\n * Constants\n * ------------------------------------------------------------------------\n */\n\nconst NAME = 'modal'\nconst VERSION = '4.3.1'\nconst DATA_KEY = 'bs.modal'\nconst EVENT_KEY = `.${DATA_KEY}`\nconst DATA_API_KEY = '.data-api'\nconst JQUERY_NO_CONFLICT = $.fn[NAME]\nconst ESCAPE_KEYCODE = 27 // KeyboardEvent.which value for Escape (Esc) key\n\nconst Default = {\n backdrop : true,\n keyboard : true,\n focus : true,\n show : true\n}\n\nconst DefaultType = {\n backdrop : '(boolean|string)',\n keyboard : 'boolean',\n focus : 'boolean',\n show : 'boolean'\n}\n\nconst Event = {\n HIDE : `hide${EVENT_KEY}`,\n HIDDEN : `hidden${EVENT_KEY}`,\n SHOW : `show${EVENT_KEY}`,\n SHOWN : `shown${EVENT_KEY}`,\n FOCUSIN : `focusin${EVENT_KEY}`,\n RESIZE : `resize${EVENT_KEY}`,\n CLICK_DISMISS : `click.dismiss${EVENT_KEY}`,\n KEYDOWN_DISMISS : `keydown.dismiss${EVENT_KEY}`,\n MOUSEUP_DISMISS : `mouseup.dismiss${EVENT_KEY}`,\n MOUSEDOWN_DISMISS : `mousedown.dismiss${EVENT_KEY}`,\n CLICK_DATA_API : `click${EVENT_KEY}${DATA_API_KEY}`\n}\n\nconst ClassName = {\n SCROLLABLE : 'modal-dialog-scrollable',\n SCROLLBAR_MEASURER : 'modal-scrollbar-measure',\n BACKDROP : 'modal-backdrop',\n OPEN : 'modal-open',\n FADE : 'fade',\n SHOW : 'show'\n}\n\nconst Selector = {\n DIALOG : '.modal-dialog',\n MODAL_BODY : '.modal-body',\n DATA_TOGGLE : '[data-toggle=\"modal\"]',\n DATA_DISMISS : '[data-dismiss=\"modal\"]',\n FIXED_CONTENT : '.fixed-top, .fixed-bottom, .is-fixed, .sticky-top',\n STICKY_CONTENT : '.sticky-top'\n}\n\n/**\n * ------------------------------------------------------------------------\n * Class Definition\n * ------------------------------------------------------------------------\n */\n\nclass Modal {\n constructor(element, config) {\n this._config = this._getConfig(config)\n this._element = element\n this._dialog = element.querySelector(Selector.DIALOG)\n this._backdrop = null\n this._isShown = false\n this._isBodyOverflowing = false\n this._ignoreBackdropClick = false\n this._isTransitioning = false\n this._scrollbarWidth = 0\n }\n\n // Getters\n\n static get VERSION() {\n return VERSION\n }\n\n static get Default() {\n return Default\n }\n\n // Public\n\n toggle(relatedTarget) {\n return this._isShown ? this.hide() : this.show(relatedTarget)\n }\n\n show(relatedTarget) {\n if (this._isShown || this._isTransitioning) {\n return\n }\n\n if ($(this._element).hasClass(ClassName.FADE)) {\n this._isTransitioning = true\n }\n\n const showEvent = $.Event(Event.SHOW, {\n relatedTarget\n })\n\n $(this._element).trigger(showEvent)\n\n if (this._isShown || showEvent.isDefaultPrevented()) {\n return\n }\n\n this._isShown = true\n\n this._checkScrollbar()\n this._setScrollbar()\n\n this._adjustDialog()\n\n this._setEscapeEvent()\n this._setResizeEvent()\n\n $(this._element).on(\n Event.CLICK_DISMISS,\n Selector.DATA_DISMISS,\n (event) => this.hide(event)\n )\n\n $(this._dialog).on(Event.MOUSEDOWN_DISMISS, () => {\n $(this._element).one(Event.MOUSEUP_DISMISS, (event) => {\n if ($(event.target).is(this._element)) {\n this._ignoreBackdropClick = true\n }\n })\n })\n\n this._showBackdrop(() => this._showElement(relatedTarget))\n }\n\n hide(event) {\n if (event) {\n event.preventDefault()\n }\n\n if (!this._isShown || this._isTransitioning) {\n return\n }\n\n const hideEvent = $.Event(Event.HIDE)\n\n $(this._element).trigger(hideEvent)\n\n if (!this._isShown || hideEvent.isDefaultPrevented()) {\n return\n }\n\n this._isShown = false\n const transition = $(this._element).hasClass(ClassName.FADE)\n\n if (transition) {\n this._isTransitioning = true\n }\n\n this._setEscapeEvent()\n this._setResizeEvent()\n\n $(document).off(Event.FOCUSIN)\n\n $(this._element).removeClass(ClassName.SHOW)\n\n $(this._element).off(Event.CLICK_DISMISS)\n $(this._dialog).off(Event.MOUSEDOWN_DISMISS)\n\n\n if (transition) {\n const transitionDuration = Util.getTransitionDurationFromElement(this._element)\n\n $(this._element)\n .one(Util.TRANSITION_END, (event) => this._hideModal(event))\n .emulateTransitionEnd(transitionDuration)\n } else {\n this._hideModal()\n }\n }\n\n dispose() {\n [window, this._element, this._dialog]\n .forEach((htmlElement) => $(htmlElement).off(EVENT_KEY))\n\n /**\n * `document` has 2 events `Event.FOCUSIN` and `Event.CLICK_DATA_API`\n * Do not move `document` in `htmlElements` array\n * It will remove `Event.CLICK_DATA_API` event that should remain\n */\n $(document).off(Event.FOCUSIN)\n\n $.removeData(this._element, DATA_KEY)\n\n this._config = null\n this._element = null\n this._dialog = null\n this._backdrop = null\n this._isShown = null\n this._isBodyOverflowing = null\n this._ignoreBackdropClick = null\n this._isTransitioning = null\n this._scrollbarWidth = null\n }\n\n handleUpdate() {\n this._adjustDialog()\n }\n\n // Private\n\n _getConfig(config) {\n config = {\n ...Default,\n ...config\n }\n Util.typeCheckConfig(NAME, config, DefaultType)\n return config\n }\n\n _showElement(relatedTarget) {\n const transition = $(this._element).hasClass(ClassName.FADE)\n\n if (!this._element.parentNode ||\n this._element.parentNode.nodeType !== Node.ELEMENT_NODE) {\n // Don't move modal's DOM position\n document.body.appendChild(this._element)\n }\n\n this._element.style.display = 'block'\n this._element.removeAttribute('aria-hidden')\n this._element.setAttribute('aria-modal', true)\n\n if ($(this._dialog).hasClass(ClassName.SCROLLABLE)) {\n this._dialog.querySelector(Selector.MODAL_BODY).scrollTop = 0\n } else {\n this._element.scrollTop = 0\n }\n\n if (transition) {\n Util.reflow(this._element)\n }\n\n $(this._element).addClass(ClassName.SHOW)\n\n if (this._config.focus) {\n this._enforceFocus()\n }\n\n const shownEvent = $.Event(Event.SHOWN, {\n relatedTarget\n })\n\n const transitionComplete = () => {\n if (this._config.focus) {\n this._element.focus()\n }\n this._isTransitioning = false\n $(this._element).trigger(shownEvent)\n }\n\n if (transition) {\n const transitionDuration = Util.getTransitionDurationFromElement(this._dialog)\n\n $(this._dialog)\n .one(Util.TRANSITION_END, transitionComplete)\n .emulateTransitionEnd(transitionDuration)\n } else {\n transitionComplete()\n }\n }\n\n _enforceFocus() {\n $(document)\n .off(Event.FOCUSIN) // Guard against infinite focus loop\n .on(Event.FOCUSIN, (event) => {\n if (document !== event.target &&\n this._element !== event.target &&\n $(this._element).has(event.target).length === 0) {\n this._element.focus()\n }\n })\n }\n\n _setEscapeEvent() {\n if (this._isShown && this._config.keyboard) {\n $(this._element).on(Event.KEYDOWN_DISMISS, (event) => {\n if (event.which === ESCAPE_KEYCODE) {\n event.preventDefault()\n this.hide()\n }\n })\n } else if (!this._isShown) {\n $(this._element).off(Event.KEYDOWN_DISMISS)\n }\n }\n\n _setResizeEvent() {\n if (this._isShown) {\n $(window).on(Event.RESIZE, (event) => this.handleUpdate(event))\n } else {\n $(window).off(Event.RESIZE)\n }\n }\n\n _hideModal() {\n this._element.style.display = 'none'\n this._element.setAttribute('aria-hidden', true)\n this._element.removeAttribute('aria-modal')\n this._isTransitioning = false\n this._showBackdrop(() => {\n $(document.body).removeClass(ClassName.OPEN)\n this._resetAdjustments()\n this._resetScrollbar()\n $(this._element).trigger(Event.HIDDEN)\n })\n }\n\n _removeBackdrop() {\n if (this._backdrop) {\n $(this._backdrop).remove()\n this._backdrop = null\n }\n }\n\n _showBackdrop(callback) {\n const animate = $(this._element).hasClass(ClassName.FADE)\n ? ClassName.FADE : ''\n\n if (this._isShown && this._config.backdrop) {\n this._backdrop = document.createElement('div')\n this._backdrop.className = ClassName.BACKDROP\n\n if (animate) {\n this._backdrop.classList.add(animate)\n }\n\n $(this._backdrop).appendTo(document.body)\n\n $(this._element).on(Event.CLICK_DISMISS, (event) => {\n if (this._ignoreBackdropClick) {\n this._ignoreBackdropClick = false\n return\n }\n if (event.target !== event.currentTarget) {\n return\n }\n if (this._config.backdrop === 'static') {\n this._element.focus()\n } else {\n this.hide()\n }\n })\n\n if (animate) {\n Util.reflow(this._backdrop)\n }\n\n $(this._backdrop).addClass(ClassName.SHOW)\n\n if (!callback) {\n return\n }\n\n if (!animate) {\n callback()\n return\n }\n\n const backdropTransitionDuration = Util.getTransitionDurationFromElement(this._backdrop)\n\n $(this._backdrop)\n .one(Util.TRANSITION_END, callback)\n .emulateTransitionEnd(backdropTransitionDuration)\n } else if (!this._isShown && this._backdrop) {\n $(this._backdrop).removeClass(ClassName.SHOW)\n\n const callbackRemove = () => {\n this._removeBackdrop()\n if (callback) {\n callback()\n }\n }\n\n if ($(this._element).hasClass(ClassName.FADE)) {\n const backdropTransitionDuration = Util.getTransitionDurationFromElement(this._backdrop)\n\n $(this._backdrop)\n .one(Util.TRANSITION_END, callbackRemove)\n .emulateTransitionEnd(backdropTransitionDuration)\n } else {\n callbackRemove()\n }\n } else if (callback) {\n callback()\n }\n }\n\n // ----------------------------------------------------------------------\n // the following methods are used to handle overflowing modals\n // todo (fat): these should probably be refactored out of modal.js\n // ----------------------------------------------------------------------\n\n _adjustDialog() {\n const isModalOverflowing =\n this._element.scrollHeight > document.documentElement.clientHeight\n\n if (!this._isBodyOverflowing && isModalOverflowing) {\n this._element.style.paddingLeft = `${this._scrollbarWidth}px`\n }\n\n if (this._isBodyOverflowing && !isModalOverflowing) {\n this._element.style.paddingRight = `${this._scrollbarWidth}px`\n }\n }\n\n _resetAdjustments() {\n this._element.style.paddingLeft = ''\n this._element.style.paddingRight = ''\n }\n\n _checkScrollbar() {\n const rect = document.body.getBoundingClientRect()\n this._isBodyOverflowing = rect.left + rect.right < window.innerWidth\n this._scrollbarWidth = this._getScrollbarWidth()\n }\n\n _setScrollbar() {\n if (this._isBodyOverflowing) {\n // Note: DOMNode.style.paddingRight returns the actual value or '' if not set\n // while $(DOMNode).css('padding-right') returns the calculated value or 0 if not set\n const fixedContent = [].slice.call(document.querySelectorAll(Selector.FIXED_CONTENT))\n const stickyContent = [].slice.call(document.querySelectorAll(Selector.STICKY_CONTENT))\n\n // Adjust fixed content padding\n $(fixedContent).each((index, element) => {\n const actualPadding = element.style.paddingRight\n const calculatedPadding = $(element).css('padding-right')\n $(element)\n .data('padding-right', actualPadding)\n .css('padding-right', `${parseFloat(calculatedPadding) + this._scrollbarWidth}px`)\n })\n\n // Adjust sticky content margin\n $(stickyContent).each((index, element) => {\n const actualMargin = element.style.marginRight\n const calculatedMargin = $(element).css('margin-right')\n $(element)\n .data('margin-right', actualMargin)\n .css('margin-right', `${parseFloat(calculatedMargin) - this._scrollbarWidth}px`)\n })\n\n // Adjust body padding\n const actualPadding = document.body.style.paddingRight\n const calculatedPadding = $(document.body).css('padding-right')\n $(document.body)\n .data('padding-right', actualPadding)\n .css('padding-right', `${parseFloat(calculatedPadding) + this._scrollbarWidth}px`)\n }\n\n $(document.body).addClass(ClassName.OPEN)\n }\n\n _resetScrollbar() {\n // Restore fixed content padding\n const fixedContent = [].slice.call(document.querySelectorAll(Selector.FIXED_CONTENT))\n $(fixedContent).each((index, element) => {\n const padding = $(element).data('padding-right')\n $(element).removeData('padding-right')\n element.style.paddingRight = padding ? padding : ''\n })\n\n // Restore sticky content\n const elements = [].slice.call(document.querySelectorAll(`${Selector.STICKY_CONTENT}`))\n $(elements).each((index, element) => {\n const margin = $(element).data('margin-right')\n if (typeof margin !== 'undefined') {\n $(element).css('margin-right', margin).removeData('margin-right')\n }\n })\n\n // Restore body padding\n const padding = $(document.body).data('padding-right')\n $(document.body).removeData('padding-right')\n document.body.style.paddingRight = padding ? padding : ''\n }\n\n _getScrollbarWidth() { // thx d.walsh\n const scrollDiv = document.createElement('div')\n scrollDiv.className = ClassName.SCROLLBAR_MEASURER\n document.body.appendChild(scrollDiv)\n const scrollbarWidth = scrollDiv.getBoundingClientRect().width - scrollDiv.clientWidth\n document.body.removeChild(scrollDiv)\n return scrollbarWidth\n }\n\n // Static\n\n static _jQueryInterface(config, relatedTarget) {\n return this.each(function () {\n let data = $(this).data(DATA_KEY)\n const _config = {\n ...Default,\n ...$(this).data(),\n ...typeof config === 'object' && config ? config : {}\n }\n\n if (!data) {\n data = new Modal(this, _config)\n $(this).data(DATA_KEY, data)\n }\n\n if (typeof config === 'string') {\n if (typeof data[config] === 'undefined') {\n throw new TypeError(`No method named \"${config}\"`)\n }\n data[config](relatedTarget)\n } else if (_config.show) {\n data.show(relatedTarget)\n }\n })\n }\n}\n\n/**\n * ------------------------------------------------------------------------\n * Data Api implementation\n * ------------------------------------------------------------------------\n */\n\n$(document).on(Event.CLICK_DATA_API, Selector.DATA_TOGGLE, function (event) {\n let target\n const selector = Util.getSelectorFromElement(this)\n\n if (selector) {\n target = document.querySelector(selector)\n }\n\n const config = $(target).data(DATA_KEY)\n ? 'toggle' : {\n ...$(target).data(),\n ...$(this).data()\n }\n\n if (this.tagName === 'A' || this.tagName === 'AREA') {\n event.preventDefault()\n }\n\n const $target = $(target).one(Event.SHOW, (showEvent) => {\n if (showEvent.isDefaultPrevented()) {\n // Only register focus restorer if modal will actually get shown\n return\n }\n\n $target.one(Event.HIDDEN, () => {\n if ($(this).is(':visible')) {\n this.focus()\n }\n })\n })\n\n Modal._jQueryInterface.call($(target), config, this)\n})\n\n/**\n * ------------------------------------------------------------------------\n * jQuery\n * ------------------------------------------------------------------------\n */\n\n$.fn[NAME] = Modal._jQueryInterface\n$.fn[NAME].Constructor = Modal\n$.fn[NAME].noConflict = () => {\n $.fn[NAME] = JQUERY_NO_CONFLICT\n return Modal._jQueryInterface\n}\n\nexport default Modal\n","/**\n * --------------------------------------------------------------------------\n * Bootstrap (v4.3.1): tools/sanitizer.js\n * Licensed under MIT (://github.com/twbs/bootstrap/blob/master/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nconst uriAttrs = [\n 'background',\n 'cite',\n 'href',\n 'itemtype',\n 'longdesc',\n 'poster',\n 'src',\n 'xlink:href'\n]\n\nconst ARIA_ATTRIBUTE_PATTERN = /^aria-[\\w-]*$/i\n\nexport const DefaultWhitelist = {\n // Global attributes allowed on any supplied element below.\n '*': ['class', 'dir', 'id', 'lang', 'role', ARIA_ATTRIBUTE_PATTERN],\n a: ['target', 'href', 'title', 'rel'],\n area: [],\n b: [],\n br: [],\n col: [],\n code: [],\n div: [],\n em: [],\n hr: [],\n h1: [],\n h2: [],\n h3: [],\n h4: [],\n h5: [],\n h6: [],\n i: [],\n img: ['src', 'alt', 'title', 'width', 'height'],\n li: [],\n ol: [],\n p: [],\n pre: [],\n s: [],\n small: [],\n span: [],\n sub: [],\n sup: [],\n strong: [],\n u: [],\n ul: []\n}\n\n/**\n * A pattern that recognizes a commonly useful subset of URLs that are safe.\n *\n * Shoutout to Angular 7 ://github.com/angular/angular/blob/7.2.4/packages/core/src/sanitization/url_sanitizer.ts\n */\nconst SAFE_URL_PATTERN = /^(?:(?:?|mailto|ftp|tel|file):|[^&:/?#]*(?:[/?#]|$))/gi\n\n/**\n * A pattern that matches safe data URLs. Only matches image, video and audio types.\n *\n * Shoutout to Angular 7 ://github.com/angular/angular/blob/7.2.4/packages/core/src/sanitization/url_sanitizer.ts\n */\nconst DATA_URL_PATTERN = /^data:(?:image\\/(?:bmp|gif|jpeg|jpg|png|tiff|webp)|video\\/(?:mpeg|mp4|ogg|webm)|audio\\/(?:mp3|oga|ogg|opus));base64,[a-z0-9+/]+=*$/i\n\nfunction allowedAttribute(attr, allowedAttributeList) {\n const attrName = attr.nodeName.toLowerCase()\n\n if (allowedAttributeList.indexOf(attrName) !== -1) {\n if (uriAttrs.indexOf(attrName) !== -1) {\n return Boolean(attr.nodeValue.match(SAFE_URL_PATTERN) || attr.nodeValue.match(DATA_URL_PATTERN))\n }\n\n return true\n }\n\n const regExp = allowedAttributeList.filter((attrRegex) => attrRegex instanceof RegExp)\n\n // Check if a regular expression validates the attribute.\n for (let i = 0, l = regExp.length; i < l; i++) {\n if (attrName.match(regExp[i])) {\n return true\n }\n }\n\n return false\n}\n\nexport function sanitizeHtml(unsafeHtml, whiteList, sanitizeFn) {\n if (unsafeHtml.length === 0) {\n return unsafeHtml\n }\n\n if (sanitizeFn && typeof sanitizeFn === 'function') {\n return sanitizeFn(unsafeHtml)\n }\n\n const domParser = new window.DOMParser()\n const createdDocument = domParser.parseFromString(unsafeHtml, 'text/html')\n const whitelistKeys = Object.keys(whiteList)\n const elements = [].slice.call(createdDocument.body.querySelectorAll('*'))\n\n for (let i = 0, len = elements.length; i < len; i++) {\n const el = elements[i]\n const elName = el.nodeName.toLowerCase()\n\n if (whitelistKeys.indexOf(el.nodeName.toLowerCase()) === -1) {\n el.parentNode.removeChild(el)\n\n continue\n }\n\n const attributeList = [].slice.call(el.attributes)\n const whitelistedAttributes = [].concat(whiteList['*'] || [], whiteList[elName] || [])\n\n attributeList.forEach((attr) => {\n if (!allowedAttribute(attr, whitelistedAttributes)) {\n el.removeAttribute(attr.nodeName)\n }\n })\n }\n\n return createdDocument.body.innerHTML\n}\n","/**\n * --------------------------------------------------------------------------\n * Bootstrap (v4.3.1): tooltip.js\n * Licensed under MIT (://github.com/twbs/bootstrap/blob/master/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nimport {\n DefaultWhitelist,\n sanitizeHtml\n} from './tools/sanitizer'\nimport $ from 'jquery'\nimport Popper from 'popper.js'\nimport Util from './util'\n\n/**\n * ------------------------------------------------------------------------\n * Constants\n * ------------------------------------------------------------------------\n */\n\nconst NAME = 'tooltip'\nconst VERSION = '4.3.1'\nconst DATA_KEY = 'bs.tooltip'\nconst EVENT_KEY = `.${DATA_KEY}`\nconst JQUERY_NO_CONFLICT = $.fn[NAME]\nconst CLASS_PREFIX = 'bs-tooltip'\nconst BSCLS_PREFIX_REGEX = new RegExp(`(^|\\\\s)${CLASS_PREFIX}\\\\S+`, 'g')\nconst DISALLOWED_ATTRIBUTES = ['sanitize', 'whiteList', 'sanitizeFn']\n\nconst DefaultType = {\n animation : 'boolean',\n template : 'string',\n title : '(string|element|function)',\n trigger : 'string',\n delay : '(number|object)',\n html : 'boolean',\n selector : '(string|boolean)',\n placement : '(string|function)',\n offset : '(number|string|function)',\n container : '(string|element|boolean)',\n fallbackPlacement : '(string|array)',\n boundary : '(string|element)',\n sanitize : 'boolean',\n sanitizeFn : '(null|function)',\n whiteList : 'object'\n}\n\nconst AttachmentMap = {\n AUTO : 'auto',\n TOP : 'top',\n RIGHT : 'right',\n BOTTOM : 'bottom',\n LEFT : 'left'\n}\n\nconst Default = {\n animation : true,\n template : '<div class=\"tooltip\" role=\"tooltip\">' +\n '<div class=\"arrow\"></div>' +\n '<div class=\"tooltip-inner\"></div></div>',\n trigger : 'hover focus',\n title : '',\n delay : 0,\n html : false,\n selector : false,\n placement : 'top',\n offset : 0,\n container : false,\n fallbackPlacement : 'flip',\n boundary : 'scrollParent',\n sanitize : true,\n sanitizeFn : null,\n whiteList : DefaultWhitelist\n}\n\nconst HoverState = {\n SHOW : 'show',\n OUT : 'out'\n}\n\nconst Event = {\n HIDE : `hide${EVENT_KEY}`,\n HIDDEN : `hidden${EVENT_KEY}`,\n SHOW : `show${EVENT_KEY}`,\n SHOWN : `shown${EVENT_KEY}`,\n INSERTED : `inserted${EVENT_KEY}`,\n CLICK : `click${EVENT_KEY}`,\n FOCUSIN : `focusin${EVENT_KEY}`,\n FOCUSOUT : `focusout${EVENT_KEY}`,\n MOUSEENTER : `mouseenter${EVENT_KEY}`,\n MOUSELEAVE : `mouseleave${EVENT_KEY}`\n}\n\nconst ClassName = {\n FADE : 'fade',\n SHOW : 'show'\n}\n\nconst Selector = {\n TOOLTIP : '.tooltip',\n TOOLTIP_INNER : '.tooltip-inner',\n ARROW : '.arrow'\n}\n\nconst Trigger = {\n HOVER : 'hover',\n FOCUS : 'focus',\n CLICK : 'click',\n MANUAL : 'manual'\n}\n\n\n/**\n * ------------------------------------------------------------------------\n * Class Definition\n * ------------------------------------------------------------------------\n */\n\nclass Tooltip {\n constructor(element, config) {\n /**\n * Check for Popper dependency\n * Popper - ://popper.js.org\n */\n if (typeof Popper === 'undefined') {\n throw new TypeError('Bootstrap\\'s tooltips require Popper.js (://popper.js.org/)')\n }\n\n // private\n this._isEnabled = true\n this._timeout = 0\n this._hoverState = ''\n this._activeTrigger = {}\n this._popper = null\n\n // Protected\n this.element = element\n this.config = this._getConfig(config)\n this.tip = null\n\n this._setListeners()\n }\n\n // Getters\n\n static get VERSION() {\n return VERSION\n }\n\n static get Default() {\n return Default\n }\n\n static get NAME() {\n return NAME\n }\n\n static get DATA_KEY() {\n return DATA_KEY\n }\n\n static get Event() {\n return Event\n }\n\n static get EVENT_KEY() {\n return EVENT_KEY\n }\n\n static get DefaultType() {\n return DefaultType\n }\n\n // Public\n\n enable() {\n this._isEnabled = true\n }\n\n disable() {\n this._isEnabled = false\n }\n\n toggleEnabled() {\n this._isEnabled = !this._isEnabled\n }\n\n toggle(event) {\n if (!this._isEnabled) {\n return\n }\n\n if (event) {\n const dataKey = this.constructor.DATA_KEY\n let lowgo = $(event.currentTarget).data(dataKey)\n\n if (!lowgo) {\n lowgo = new this.constructor(\n event.currentTarget,\n this._getDelegateConfig()\n )\n $(event.currentTarget).data(dataKey, lowgo)\n }\n\n lowgo._activeTrigger.click = !lowgo._activeTrigger.click\n\n if (lowgo._isWithActiveTrigger()) {\n lowgo._enter(null, lowgo)\n } else {\n lowgo._leave(null, lowgo)\n }\n } else {\n if ($(this.getTipElement()).hasClass(ClassName.SHOW)) {\n this._leave(null, this)\n return\n }\n\n this._enter(null, this)\n }\n }\n\n dispose() {\n clearTimeout(this._timeout)\n\n $.removeData(this.element, this.constructor.DATA_KEY)\n\n $(this.element).off(this.constructor.EVENT_KEY)\n $(this.element).closest('.modal').off('hide.bs.modal')\n\n if (this.tip) {\n $(this.tip).remove()\n }\n\n this._isEnabled = null\n this._timeout = null\n this._hoverState = null\n this._activeTrigger = null\n if (this._popper !== null) {\n this._popper.destroy()\n }\n\n this._popper = null\n this.element = null\n this.config = null\n this.tip = null\n }\n\n show() {\n if ($(this.element).css('display') === 'none') {\n throw new Error('Please use show on visible elements')\n }\n\n const showEvent = $.Event(this.constructor.Event.SHOW)\n if (this.isWithContent() && this._isEnabled) {\n $(this.element).trigger(showEvent)\n\n const shadowRoot = Util.findShadowRoot(this.element)\n const isInTheDom = $.contains(\n shadowRoot !== null ? shadowRoot : this.element.ownerDocument.documentElement,\n this.element\n )\n\n if (showEvent.isDefaultPrevented() || !isInTheDom) {\n return\n }\n\n const tip = this.getTipElement()\n const tipId = Util.getUID(this.constructor.NAME)\n\n tip.setAttribute('id', tipId)\n this.element.setAttribute('aria-describedby', tipId)\n\n this.setContent()\n\n if (this.config.animation) {\n $(tip).addClass(ClassName.FADE)\n }\n\n const placement = typeof this.config.placement === 'function'\n ? this.config.placement.call(this, tip, this.element)\n : this.config.placement\n\n const attachment = this._getAttachment(placement)\n this.addAttachmentClass(attachment)\n\n const container = this._getContainer()\n $(tip).data(this.constructor.DATA_KEY, this)\n\n if (!$.contains(this.element.ownerDocument.documentElement, this.tip)) {\n $(tip).appendTo(container)\n }\n\n $(this.element).trigger(this.constructor.Event.INSERTED)\n\n this._popper = new Popper(this.element, tip, {\n placement: attachment,\n modifiers: {\n offset: this._getOffset(),\n flip: {\n behavior: this.config.fallbackPlacement\n },\n arrow: {\n element: Selector.ARROW\n },\n preventOverflow: {\n boundariesElement: this.config.boundary\n }\n },\n onCreate: (data) => {\n if (data.originalPlacement !== data.placement) {\n this._handlePopperPlacementChange(data)\n }\n },\n onUpdate: (data) => this._handlePopperPlacementChange(data)\n })\n\n $(tip).addClass(ClassName.SHOW)\n\n // If this is a touch-enabled device we add extra\n // empty mouseover listeners to the body's immediate children;\n // only needed because of broken event delegation on iOS\n // ://www.quirksmode.org/blog/archives/2014/02/mouse_event_bub.html\n if ('ontouchstart' in document.documentElement) {\n $(document.body).children().on('mouseover', null, $.noop)\n }\n\n const complete = () => {\n if (this.config.animation) {\n this._fixTransition()\n }\n const prevHoverState = this._hoverState\n this._hoverState = null\n\n $(this.element).trigger(this.constructor.Event.SHOWN)\n\n if (prevHoverState === HoverState.OUT) {\n this._leave(null, this)\n }\n }\n\n if ($(this.tip).hasClass(ClassName.FADE)) {\n const transitionDuration = Util.getTransitionDurationFromElement(this.tip)\n\n $(this.tip)\n .one(Util.TRANSITION_END, complete)\n .emulateTransitionEnd(transitionDuration)\n } else {\n complete()\n }\n }\n }\n\n hide(callback) {\n const tip = this.getTipElement()\n const hideEvent = $.Event(this.constructor.Event.HIDE)\n const complete = () => {\n if (this._hoverState !== HoverState.SHOW && tip.parentNode) {\n tip.parentNode.removeChild(tip)\n }\n\n this._cleanTipClass()\n this.element.removeAttribute('aria-describedby')\n $(this.element).trigger(this.constructor.Event.HIDDEN)\n if (this._popper !== null) {\n this._popper.destroy()\n }\n\n if (callback) {\n callback()\n }\n }\n\n $(this.element).trigger(hideEvent)\n\n if (hideEvent.isDefaultPrevented()) {\n return\n }\n\n $(tip).removeClass(ClassName.SHOW)\n\n // If this is a touch-enabled device we remove the extra\n // empty mouseover listeners we added for iOS support\n if ('ontouchstart' in document.documentElement) {\n $(document.body).children().off('mouseover', null, $.noop)\n }\n\n this._activeTrigger[Trigger.CLICK] = false\n this._activeTrigger[Trigger.FOCUS] = false\n this._activeTrigger[Trigger.HOVER] = false\n\n if ($(this.tip).hasClass(ClassName.FADE)) {\n const transitionDuration = Util.getTransitionDurationFromElement(tip)\n\n $(tip)\n .one(Util.TRANSITION_END, complete)\n .emulateTransitionEnd(transitionDuration)\n } else {\n complete()\n }\n\n this._hoverState = ''\n }\n\n update() {\n if (this._popper !== null) {\n this._popper.scheduleUpdate()\n }\n }\n\n // Protected\n\n isWithContent() {\n return Boolean(this.getTitle())\n }\n\n addAttachmentClass(attachment) {\n $(this.getTipElement()).addClass(`${CLASS_PREFIX}-${attachment}`)\n }\n\n getTipElement() {\n this.tip = this.tip || $(this.config.template)[0]\n return this.tip\n }\n\n setContent() {\n const tip = this.getTipElement()\n this.setElementContent($(tip.querySelectorAll(Selector.TOOLTIP_INNER)), this.getTitle())\n $(tip).removeClass(`${ClassName.FADE} ${ClassName.SHOW}`)\n }\n\n setElementContent($element, content) {\n if (typeof content === 'object' && (content.nodeType || content.jquery)) {\n // Content is a DOM node or a jQuery\n if (this.config.html) {\n if (!$(content).parent().is($element)) {\n $element.empty().append(content)\n }\n } else {\n $element.text($(content).text())\n }\n\n return\n }\n\n if (this.config.html) {\n if (this.config.sanitize) {\n content = sanitizeHtml(content, this.config.whiteList, this.config.sanitizeFn)\n }\n\n $element.html(content)\n } else {\n $element.text(content)\n }\n }\n\n getTitle() {\n let title = this.element.getAttribute('data-original-title')\n\n if (!title) {\n title = typeof this.config.title === 'function'\n ? this.config.title.call(this.element)\n : this.config.title\n }\n\n return title\n }\n\n // Private\n\n _getOffset() {\n const offset = {}\n\n if (typeof this.config.offset === 'function') {\n offset.fn = (data) => {\n data.offsets = {\n ...data.offsets,\n ...this.config.offset(data.offsets, this.element) || {}\n }\n\n return data\n }\n } else {\n offset.offset = this.config.offset\n }\n\n return offset\n }\n\n _getContainer() {\n if (this.config.container === false) {\n return document.body\n }\n\n if (Util.isElement(this.config.container)) {\n return $(this.config.container)\n }\n\n return $(document).find(this.config.container)\n }\n\n _getAttachment(placement) {\n return AttachmentMap[placement.toUpperCase()]\n }\n\n _setListeners() {\n const triggers = this.config.trigger.split(' ')\n\n triggers.forEach((trigger) => {\n if (trigger === 'click') {\n $(this.element).on(\n this.constructor.Event.CLICK,\n this.config.selector,\n (event) => this.toggle(event)\n )\n } else if (trigger !== Trigger.MANUAL) {\n const eventIn = trigger === Trigger.HOVER\n ? this.constructor.Event.MOUSEENTER\n : this.constructor.Event.FOCUSIN\n const eventOut = trigger === Trigger.HOVER\n ? this.constructor.Event.MOUSELEAVE\n : this.constructor.Event.FOCUSOUT\n\n $(this.element)\n .on(\n eventIn,\n this.config.selector,\n (event) => this._enter(event)\n )\n .on(\n eventOut,\n this.config.selector,\n (event) => this._leave(event)\n )\n }\n })\n\n $(this.element).closest('.modal').on(\n 'hide.bs.modal',\n () => {\n if (this.element) {\n this.hide()\n }\n }\n )\n\n if (this.config.selector) {\n this.config = {\n ...this.config,\n trigger: 'manual',\n selector: ''\n }\n } else {\n this._fixTitle()\n }\n }\n\n _fixTitle() {\n const titleType = typeof this.element.getAttribute('data-original-title')\n\n if (this.element.getAttribute('title') || titleType !== 'string') {\n this.element.setAttribute(\n 'data-original-title',\n this.element.getAttribute('title') || ''\n )\n\n this.element.setAttribute('title', '')\n }\n }\n\n _enter(event, lowgo) {\n const dataKey = this.constructor.DATA_KEY\n lowgo = lowgo || $(event.currentTarget).data(dataKey)\n\n if (!lowgo) {\n lowgo = new this.constructor(\n event.currentTarget,\n this._getDelegateConfig()\n )\n $(event.currentTarget).data(dataKey, lowgo)\n }\n\n if (event) {\n lowgo._activeTrigger[\n event.type === 'focusin' ? Trigger.FOCUS : Trigger.HOVER\n ] = true\n }\n\n if ($(lowgo.getTipElement()).hasClass(ClassName.SHOW) || lowgo._hoverState === HoverState.SHOW) {\n lowgo._hoverState = HoverState.SHOW\n return\n }\n\n clearTimeout(lowgo._timeout)\n\n lowgo._hoverState = HoverState.SHOW\n\n if (!lowgo.config.delay || !lowgo.config.delay.show) {\n lowgo.show()\n return\n }\n\n lowgo._timeout = setTimeout(() => {\n if (lowgo._hoverState === HoverState.SHOW) {\n lowgo.show()\n }\n }, lowgo.config.delay.show)\n }\n\n _leave(event, lowgo) {\n const dataKey = this.constructor.DATA_KEY\n lowgo = lowgo || $(event.currentTarget).data(dataKey)\n\n if (!lowgo) {\n lowgo = new this.constructor(\n event.currentTarget,\n this._getDelegateConfig()\n )\n $(event.currentTarget).data(dataKey, lowgo)\n }\n\n if (event) {\n lowgo._activeTrigger[\n event.type === 'focusout' ? Trigger.FOCUS : Trigger.HOVER\n ] = false\n }\n\n if (lowgo._isWithActiveTrigger()) {\n return\n }\n\n clearTimeout(lowgo._timeout)\n\n lowgo._hoverState = HoverState.OUT\n\n if (!lowgo.config.delay || !lowgo.config.delay.hide) {\n lowgo.hide()\n return\n }\n\n lowgo._timeout = setTimeout(() => {\n if (lowgo._hoverState === HoverState.OUT) {\n lowgo.hide()\n }\n }, lowgo.config.delay.hide)\n }\n\n _isWithActiveTrigger() {\n for (const trigger in this._activeTrigger) {\n if (this._activeTrigger[trigger]) {\n return true\n }\n }\n\n return false\n }\n\n _getConfig(config) {\n const dataAttributes = $(this.element).data()\n\n Object.keys(dataAttributes)\n .forEach((dataAttr) => {\n if (DISALLOWED_ATTRIBUTES.indexOf(dataAttr) !== -1) {\n delete dataAttributes[dataAttr]\n }\n })\n\n config = {\n ...this.constructor.Default,\n ...dataAttributes,\n ...typeof config === 'object' && config ? config : {}\n }\n\n if (typeof config.delay === 'number') {\n config.delay = {\n show: config.delay,\n hide: config.delay\n }\n }\n\n if (typeof config.title === 'number') {\n config.title = config.title.toString()\n }\n\n if (typeof config.content === 'number') {\n config.content = config.content.toString()\n }\n\n Util.typeCheckConfig(\n NAME,\n config,\n this.constructor.DefaultType\n )\n\n if (config.sanitize) {\n config.template = sanitizeHtml(config.template, config.whiteList, config.sanitizeFn)\n }\n\n return config\n }\n\n _getDelegateConfig() {\n const config = {}\n\n if (this.config) {\n for (const key in this.config) {\n if (this.constructor.Default[key] !== this.config[key]) {\n config[key] = this.config[key]\n }\n }\n }\n\n return config\n }\n\n _cleanTipClass() {\n const $tip = $(this.getTipElement())\n const tabClass = $tip.attr('class').match(BSCLS_PREFIX_REGEX)\n if (tabClass !== null && tabClass.length) {\n $tip.removeClass(tabClass.join(''))\n }\n }\n\n _handlePopperPlacementChange(popperData) {\n const popperInstance = popperData.instance\n this.tip = popperInstance.popper\n this._cleanTipClass()\n this.addAttachmentClass(this._getAttachment(popperData.placement))\n }\n\n _fixTransition() {\n const tip = this.getTipElement()\n const initConfigAnimation = this.config.animation\n\n if (tip.getAttribute('x-placement') !== null) {\n return\n }\n\n $(tip).removeClass(ClassName.FADE)\n this.config.animation = false\n this.hide()\n this.show()\n this.config.animation = initConfigAnimation\n }\n\n // Static\n\n static _jQueryInterface(config) {\n return this.each(function () {\n let data = $(this).data(DATA_KEY)\n const _config = typeof config === 'object' && config\n\n if (!data && /dispose|hide/.test(config)) {\n return\n }\n\n if (!data) {\n data = new Tooltip(this, _config)\n $(this).data(DATA_KEY, data)\n }\n\n if (typeof config === 'string') {\n if (typeof data[config] === 'undefined') {\n throw new TypeError(`No method named \"${config}\"`)\n }\n data[config]()\n }\n })\n }\n}\n\n/**\n * ------------------------------------------------------------------------\n * jQuery\n * ------------------------------------------------------------------------\n */\n\n$.fn[NAME] = Tooltip._jQueryInterface\n$.fn[NAME].Constructor = Tooltip\n$.fn[NAME].noConflict = () => {\n $.fn[NAME] = JQUERY_NO_CONFLICT\n return Tooltip._jQueryInterface\n}\n\nexport default Tooltip\n","/**\n * --------------------------------------------------------------------------\n * Bootstrap (v4.3.1): popover.js\n * Licensed under MIT (://github.com/twbs/bootstrap/blob/master/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nimport $ from 'jquery'\nimport Tooltip from './tooltip'\n\n/**\n * ------------------------------------------------------------------------\n * Constants\n * ------------------------------------------------------------------------\n */\n\nconst NAME = 'popover'\nconst VERSION = '4.3.1'\nconst DATA_KEY = 'bs.popover'\nconst EVENT_KEY = `.${DATA_KEY}`\nconst JQUERY_NO_CONFLICT = $.fn[NAME]\nconst CLASS_PREFIX = 'bs-popover'\nconst BSCLS_PREFIX_REGEX = new RegExp(`(^|\\\\s)${CLASS_PREFIX}\\\\S+`, 'g')\n\nconst Default = {\n ...Tooltip.Default,\n placement : 'right',\n trigger : 'click',\n content : '',\n template : '<div class=\"popover\" role=\"tooltip\">' +\n '<div class=\"arrow\"></div>' +\n '<h3 class=\"popover-header\"></h3>' +\n '<div class=\"popover-body\"></div></div>'\n}\n\nconst DefaultType = {\n ...Tooltip.DefaultType,\n content : '(string|element|function)'\n}\n\nconst ClassName = {\n FADE : 'fade',\n SHOW : 'show'\n}\n\nconst Selector = {\n TITLE : '.popover-header',\n CONTENT : '.popover-body'\n}\n\nconst Event = {\n HIDE : `hide${EVENT_KEY}`,\n HIDDEN : `hidden${EVENT_KEY}`,\n SHOW : `show${EVENT_KEY}`,\n SHOWN : `shown${EVENT_KEY}`,\n INSERTED : `inserted${EVENT_KEY}`,\n CLICK : `click${EVENT_KEY}`,\n FOCUSIN : `focusin${EVENT_KEY}`,\n FOCUSOUT : `focusout${EVENT_KEY}`,\n MOUSEENTER : `mouseenter${EVENT_KEY}`,\n MOUSELEAVE : `mouseleave${EVENT_KEY}`\n}\n\n/**\n * ------------------------------------------------------------------------\n * Class Definition\n * ------------------------------------------------------------------------\n */\n\nclass Popover extends Tooltip {\n // Getters\n\n static get VERSION() {\n return VERSION\n }\n\n static get Default() {\n return Default\n }\n\n static get NAME() {\n return NAME\n }\n\n static get DATA_KEY() {\n return DATA_KEY\n }\n\n static get Event() {\n return Event\n }\n\n static get EVENT_KEY() {\n return EVENT_KEY\n }\n\n static get DefaultType() {\n return DefaultType\n }\n\n // Overrides\n\n isWithContent() {\n return this.getTitle() || this._getContent()\n }\n\n addAttachmentClass(attachment) {\n $(this.getTipElement()).addClass(`${CLASS_PREFIX}-${attachment}`)\n }\n\n getTipElement() {\n this.tip = this.tip || $(this.config.template)[0]\n return this.tip\n }\n\n setContent() {\n const $tip = $(this.getTipElement())\n\n // We use append for html objects to maintain js events\n this.setElementContent($tip.find(Selector.TITLE), this.getTitle())\n let content = this._getContent()\n if (typeof content === 'function') {\n content = content.call(this.element)\n }\n this.setElementContent($tip.find(Selector.CONTENT), content)\n\n $tip.removeClass(`${ClassName.FADE} ${ClassName.SHOW}`)\n }\n\n // Private\n\n _getContent() {\n return this.element.getAttribute('data-content') ||\n this.config.content\n }\n\n _cleanTipClass() {\n const $tip = $(this.getTipElement())\n const tabClass = $tip.attr('class').match(BSCLS_PREFIX_REGEX)\n if (tabClass !== null && tabClass.length > 0) {\n $tip.removeClass(tabClass.join(''))\n }\n }\n\n // Static\n\n static _jQueryInterface(config) {\n return this.each(function () {\n let data = $(this).data(DATA_KEY)\n const _config = typeof config === 'object' ? config : null\n\n if (!data && /dispose|hide/.test(config)) {\n return\n }\n\n if (!data) {\n data = new Popover(this, _config)\n $(this).data(DATA_KEY, data)\n }\n\n if (typeof config === 'string') {\n if (typeof data[config] === 'undefined') {\n throw new TypeError(`No method named \"${config}\"`)\n }\n data[config]()\n }\n })\n }\n}\n\n/**\n * ------------------------------------------------------------------------\n * jQuery\n * ------------------------------------------------------------------------\n */\n\n$.fn[NAME] = Popover._jQueryInterface\n$.fn[NAME].Constructor = Popover\n$.fn[NAME].noConflict = () => {\n $.fn[NAME] = JQUERY_NO_CONFLICT\n return Popover._jQueryInterface\n}\n\nexport default Popover\n","/**\n * --------------------------------------------------------------------------\n * Bootstrap (v4.3.1): scrollspy.js\n * Licensed under MIT (://github.com/twbs/bootstrap/blob/master/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nimport $ from 'jquery'\nimport Util from './util'\n\n/**\n * ------------------------------------------------------------------------\n * Constants\n * ------------------------------------------------------------------------\n */\n\nconst NAME = 'scrollspy'\nconst VERSION = '4.3.1'\nconst DATA_KEY = 'bs.scrollspy'\nconst EVENT_KEY = `.${DATA_KEY}`\nconst DATA_API_KEY = '.data-api'\nconst JQUERY_NO_CONFLICT = $.fn[NAME]\n\nconst Default = {\n offset : 10,\n method : 'auto',\n target : ''\n}\n\nconst DefaultType = {\n offset : 'number',\n method : 'string',\n target : '(string|element)'\n}\n\nconst Event = {\n ACTIVATE : `activate${EVENT_KEY}`,\n SCROLL : `scroll${EVENT_KEY}`,\n LOAD_DATA_API : `load${EVENT_KEY}${DATA_API_KEY}`\n}\n\nconst ClassName = {\n DROPDOWN_ITEM : 'dropdown-item',\n DROPDOWN_MENU : 'dropdown-menu',\n ACTIVE : 'active'\n}\n\nconst Selector = {\n DATA_SPY : '[data-spy=\"scroll\"]',\n ACTIVE : '.active',\n NAV_LIST_GROUP : '.nav, .list-group',\n NAV_LINKS : '.nav-link',\n NAV_ITEMS : '.nav-item',\n LIST_ITEMS : '.list-group-item',\n DROPDOWN : '.dropdown',\n DROPDOWN_ITEMS : '.dropdown-item',\n DROPDOWN_TOGGLE : '.dropdown-toggle'\n}\n\nconst OffsetMethod = {\n OFFSET : 'offset',\n POSITION : 'position'\n}\n\n/**\n * ------------------------------------------------------------------------\n * Class Definition\n * ------------------------------------------------------------------------\n */\n\nclass ScrollSpy {\n constructor(element, config) {\n this._element = element\n this._scrollElement = element.tagName === 'BODY' ? window : element\n this._config = this._getConfig(config)\n this._selector = `${this._config.target} ${Selector.NAV_LINKS},` +\n `${this._config.target} ${Selector.LIST_ITEMS},` +\n `${this._config.target} ${Selector.DROPDOWN_ITEMS}`\n this._offsets = []\n this._targets = []\n this._activeTarget = null\n this._scrollHeight = 0\n\n $(this._scrollElement).on(Event.SCROLL, (event) => this._process(event))\n\n this.refresh()\n this._process()\n }\n\n // Getters\n\n static get VERSION() {\n return VERSION\n }\n\n static get Default() {\n return Default\n }\n\n // Public\n\n refresh() {\n const autoMethod = this._scrollElement === this._scrollElement.window\n ? OffsetMethod.OFFSET : OffsetMethod.POSITION\n\n const offsetMethod = this._config.method === 'auto'\n ? autoMethod : this._config.method\n\n const offsetBase = offsetMethod === OffsetMethod.POSITION\n ? this._getScrollTop() : 0\n\n this._offsets = []\n this._targets = []\n\n this._scrollHeight = this._getScrollHeight()\n\n const targets = [].slice.call(document.querySelectorAll(this._selector))\n\n targets\n .map((element) => {\n let target\n const targetSelector = Util.getSelectorFromElement(element)\n\n if (targetSelector) {\n target = document.querySelector(targetSelector)\n }\n\n if (target) {\n const targetBCR = target.getBoundingClientRect()\n if (targetBCR.width || targetBCR.height) {\n // TODO (fat): remove sketch reliance on jQuery position/offset\n return [\n $(target)[offsetMethod]().top + offsetBase,\n targetSelector\n ]\n }\n }\n return null\n })\n .filter((item) => item)\n .sort((a, b) => a[0] - b[0])\n .forEach((item) => {\n this._offsets.push(item[0])\n this._targets.push(item[1])\n })\n }\n\n dispose() {\n $.removeData(this._element, DATA_KEY)\n $(this._scrollElement).off(EVENT_KEY)\n\n this._element = null\n this._scrollElement = null\n this._config = null\n this._selector = null\n this._offsets = null\n this._targets = null\n this._activeTarget = null\n this._scrollHeight = null\n }\n\n // Private\n\n _getConfig(config) {\n config = {\n ...Default,\n ...typeof config === 'object' && config ? config : {}\n }\n\n if (typeof config.target !== 'string') {\n let id = $(config.target).attr('id')\n if (!id) {\n id = Util.getUID(NAME)\n $(config.target).attr('id', id)\n }\n config.target = `#${id}`\n }\n\n Util.typeCheckConfig(NAME, config, DefaultType)\n\n return config\n }\n\n _getScrollTop() {\n return this._scrollElement === window\n ? this._scrollElement.pageYOffset : this._scrollElement.scrollTop\n }\n\n _getScrollHeight() {\n return this._scrollElement.scrollHeight || Math.max(\n document.body.scrollHeight,\n document.documentElement.scrollHeight\n )\n }\n\n _getOffsetHeight() {\n return this._scrollElement === window\n ? window.innerHeight : this._scrollElement.getBoundingClientRect().height\n }\n\n _process() {\n const scrollTop = this._getScrollTop() + this._config.offset\n const scrollHeight = this._getScrollHeight()\n const maxScroll = this._config.offset +\n scrollHeight -\n this._getOffsetHeight()\n\n if (this._scrollHeight !== scrollHeight) {\n this.refresh()\n }\n\n if (scrollTop >= maxScroll) {\n const target = this._targets[this._targets.length - 1]\n\n if (this._activeTarget !== target) {\n this._activate(target)\n }\n return\n }\n\n if (this._activeTarget && scrollTop < this._offsets[0] && this._offsets[0] > 0) {\n this._activeTarget = null\n this._clear()\n return\n }\n\n const offsetLength = this._offsets.length\n for (let i = offsetLength; i--;) {\n const isActiveTarget = this._activeTarget !== this._targets[i] &&\n scrollTop >= this._offsets[i] &&\n (typeof this._offsets[i + 1] === 'undefined' ||\n scrollTop < this._offsets[i + 1])\n\n if (isActiveTarget) {\n this._activate(this._targets[i])\n }\n }\n }\n\n _activate(target) {\n this._activeTarget = target\n\n this._clear()\n\n const queries = this._selector\n .split(',')\n .map((selector) => `${selector}[data-target=\"${target}\"],${selector}[href=\"${target}\"]`)\n\n const $link = $([].slice.call(document.querySelectorAll(queries.join(','))))\n\n if ($link.hasClass(ClassName.DROPDOWN_ITEM)) {\n $link.closest(Selector.DROPDOWN).find(Selector.DROPDOWN_TOGGLE).addClass(ClassName.ACTIVE)\n $link.addClass(ClassName.ACTIVE)\n } else {\n // Set triggered link as active\n $link.addClass(ClassName.ACTIVE)\n // Set triggered links parents as active\n // With both <ul> and <nav> markup a parent is the previous sibling of any nav ancestor\n $link.parents(Selector.NAV_LIST_GROUP).prev(`${Selector.NAV_LINKS}, ${Selector.LIST_ITEMS}`).addClass(ClassName.ACTIVE)\n // Handle special case when .nav-link is inside .nav-item\n $link.parents(Selector.NAV_LIST_GROUP).prev(Selector.NAV_ITEMS).children(Selector.NAV_LINKS).addClass(ClassName.ACTIVE)\n }\n\n $(this._scrollElement).trigger(Event.ACTIVATE, {\n relatedTarget: target\n })\n }\n\n _clear() {\n [].slice.call(document.querySelectorAll(this._selector))\n .filter((node) => node.classList.contains(ClassName.ACTIVE))\n .forEach((node) => node.classList.remove(ClassName.ACTIVE))\n }\n\n // Static\n\n static _jQueryInterface(config) {\n return this.each(function () {\n let data = $(this).data(DATA_KEY)\n const _config = typeof config === 'object' && config\n\n if (!data) {\n data = new ScrollSpy(this, _config)\n $(this).data(DATA_KEY, data)\n }\n\n if (typeof config === 'string') {\n if (typeof data[config] === 'undefined') {\n throw new TypeError(`No method named \"${config}\"`)\n }\n data[config]()\n }\n })\n }\n}\n\n/**\n * ------------------------------------------------------------------------\n * Data Api implementation\n * ------------------------------------------------------------------------\n */\n\n$(window).on(Event.LOAD_DATA_API, () => {\n const scrollSpys = [].slice.call(document.querySelectorAll(Selector.DATA_SPY))\n const scrollSpysLength = scrollSpys.length\n\n for (let i = scrollSpysLength; i--;) {\n const $spy = $(scrollSpys[i])\n ScrollSpy._jQueryInterface.call($spy, $spy.data())\n }\n})\n\n/**\n * ------------------------------------------------------------------------\n * jQuery\n * ------------------------------------------------------------------------\n */\n\n$.fn[NAME] = ScrollSpy._jQueryInterface\n$.fn[NAME].Constructor = ScrollSpy\n$.fn[NAME].noConflict = () => {\n $.fn[NAME] = JQUERY_NO_CONFLICT\n return ScrollSpy._jQueryInterface\n}\n\nexport default ScrollSpy\n","/**\n * --------------------------------------------------------------------------\n * Bootstrap (v4.3.1): tab.js\n * Licensed under MIT (://github.com/twbs/bootstrap/blob/master/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nimport $ from 'jquery'\nimport Util from './util'\n\n/**\n * ------------------------------------------------------------------------\n * Constants\n * ------------------------------------------------------------------------\n */\n\nconst NAME = 'tab'\nconst VERSION = '4.3.1'\nconst DATA_KEY = 'bs.tab'\nconst EVENT_KEY = `.${DATA_KEY}`\nconst DATA_API_KEY = '.data-api'\nconst JQUERY_NO_CONFLICT = $.fn[NAME]\n\nconst Event = {\n HIDE : `hide${EVENT_KEY}`,\n HIDDEN : `hidden${EVENT_KEY}`,\n SHOW : `show${EVENT_KEY}`,\n SHOWN : `shown${EVENT_KEY}`,\n CLICK_DATA_API : `click${EVENT_KEY}${DATA_API_KEY}`\n}\n\nconst ClassName = {\n DROPDOWN_MENU : 'dropdown-menu',\n ACTIVE : 'active',\n DISABLED : 'disabled',\n FADE : 'fade',\n SHOW : 'show'\n}\n\nconst Selector = {\n DROPDOWN : '.dropdown',\n NAV_LIST_GROUP : '.nav, .list-group',\n ACTIVE : '.active',\n ACTIVE_UL : '> li > .active',\n DATA_TOGGLE : '[data-toggle=\"tab\"], [data-toggle=\"pill\"], [data-toggle=\"list\"]',\n DROPDOWN_TOGGLE : '.dropdown-toggle',\n DROPDOWN_ACTIVE_CHILD : '> .dropdown-menu .active'\n}\n\n/**\n * ------------------------------------------------------------------------\n * Class Definition\n * ------------------------------------------------------------------------\n */\n\nclass Tab {\n constructor(element) {\n this._element = element\n }\n\n // Getters\n\n static get VERSION() {\n return VERSION\n }\n\n // Public\n\n show() {\n if (this._element.parentNode &&\n this._element.parentNode.nodeType === Node.ELEMENT_NODE &&\n $(this._element).hasClass(ClassName.ACTIVE) ||\n $(this._element).hasClass(ClassName.DISABLED)) {\n return\n }\n\n let target\n let previous\n const listElement = $(this._element).closest(Selector.NAV_LIST_GROUP)[0]\n const selector = Util.getSelectorFromElement(this._element)\n\n if (listElement) {\n const itemSelector = listElement.nodeName === 'UL' || listElement.nodeName === 'OL' ? Selector.ACTIVE_UL : Selector.ACTIVE\n previous = $.makeArray($(listElement).find(itemSelector))\n previous = previous[previous.length - 1]\n }\n\n const hideEvent = $.Event(Event.HIDE, {\n relatedTarget: this._element\n })\n\n const showEvent = $.Event(Event.SHOW, {\n relatedTarget: previous\n })\n\n if (previous) {\n $(previous).trigger(hideEvent)\n }\n\n $(this._element).trigger(showEvent)\n\n if (showEvent.isDefaultPrevented() ||\n hideEvent.isDefaultPrevented()) {\n return\n }\n\n if (selector) {\n target = document.querySelector(selector)\n }\n\n this._activate(\n this._element,\n listElement\n )\n\n const complete = () => {\n const hiddenEvent = $.Event(Event.HIDDEN, {\n relatedTarget: this._element\n })\n\n const shownEvent = $.Event(Event.SHOWN, {\n relatedTarget: previous\n })\n\n $(previous).trigger(hiddenEvent)\n $(this._element).trigger(shownEvent)\n }\n\n if (target) {\n this._activate(target, target.parentNode, complete)\n } else {\n complete()\n }\n }\n\n dispose() {\n $.removeData(this._element, DATA_KEY)\n this._element = null\n }\n\n // Private\n\n _activate(element, container, callback) {\n const activeElements = container && (container.nodeName === 'UL' || container.nodeName === 'OL')\n ? $(container).find(Selector.ACTIVE_UL)\n : $(container).children(Selector.ACTIVE)\n\n const active = activeElements[0]\n const isTransitioning = callback && (active && $(active).hasClass(ClassName.FADE))\n const complete = () => this._transitionComplete(\n element,\n active,\n callback\n )\n\n if (active && isTransitioning) {\n const transitionDuration = Util.getTransitionDurationFromElement(active)\n\n $(active)\n .removeClass(ClassName.SHOW)\n .one(Util.TRANSITION_END, complete)\n .emulateTransitionEnd(transitionDuration)\n } else {\n complete()\n }\n }\n\n _transitionComplete(element, active, callback) {\n if (active) {\n $(active).removeClass(ClassName.ACTIVE)\n\n const dropdownChild = $(active.parentNode).find(\n Selector.DROPDOWN_ACTIVE_CHILD\n )[0]\n\n if (dropdownChild) {\n $(dropdownChild).removeClass(ClassName.ACTIVE)\n }\n\n if (active.getAttribute('role') === 'tab') {\n active.setAttribute('aria-selected', false)\n }\n }\n\n $(element).addClass(ClassName.ACTIVE)\n if (element.getAttribute('role') === 'tab') {\n element.setAttribute('aria-selected', true)\n }\n\n Util.reflow(element)\n\n if (element.classList.contains(ClassName.FADE)) {\n element.classList.add(ClassName.SHOW)\n }\n\n if (element.parentNode && $(element.parentNode).hasClass(ClassName.DROPDOWN_MENU)) {\n const dropdownElement = $(element).closest(Selector.DROPDOWN)[0]\n\n if (dropdownElement) {\n const dropdownToggleList = [].slice.call(dropdownElement.querySelectorAll(Selector.DROPDOWN_TOGGLE))\n\n $(dropdownToggleList).addClass(ClassName.ACTIVE)\n }\n\n element.setAttribute('aria-expanded', true)\n }\n\n if (callback) {\n callback()\n }\n }\n\n // Static\n\n static _jQueryInterface(config) {\n return this.each(function () {\n const $this = $(this)\n let data = $this.data(DATA_KEY)\n\n if (!data) {\n data = new Tab(this)\n $this.data(DATA_KEY, data)\n }\n\n if (typeof config === 'string') {\n if (typeof data[config] === 'undefined') {\n throw new TypeError(`No method named \"${config}\"`)\n }\n data[config]()\n }\n })\n }\n}\n\n/**\n * ------------------------------------------------------------------------\n * Data Api implementation\n * ------------------------------------------------------------------------\n */\n\n$(document)\n .on(Event.CLICK_DATA_API, Selector.DATA_TOGGLE, function (event) {\n event.preventDefault()\n Tab._jQueryInterface.call($(this), 'show')\n })\n\n/**\n * ------------------------------------------------------------------------\n * jQuery\n * ------------------------------------------------------------------------\n */\n\n$.fn[NAME] = Tab._jQueryInterface\n$.fn[NAME].Constructor = Tab\n$.fn[NAME].noConflict = () => {\n $.fn[NAME] = JQUERY_NO_CONFLICT\n return Tab._jQueryInterface\n}\n\nexport default Tab\n","/**\n * --------------------------------------------------------------------------\n * Bootstrap (v4.3.1): toast.js\n * Licensed under MIT (://github.com/twbs/bootstrap/blob/master/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nimport $ from 'jquery'\nimport Util from './util'\n\n/**\n * ------------------------------------------------------------------------\n * Constants\n * ------------------------------------------------------------------------\n */\n\nconst NAME = 'toast'\nconst VERSION = '4.3.1'\nconst DATA_KEY = 'bs.toast'\nconst EVENT_KEY = `.${DATA_KEY}`\nconst JQUERY_NO_CONFLICT = $.fn[NAME]\n\nconst Event = {\n CLICK_DISMISS : `click.dismiss${EVENT_KEY}`,\n HIDE : `hide${EVENT_KEY}`,\n HIDDEN : `hidden${EVENT_KEY}`,\n SHOW : `show${EVENT_KEY}`,\n SHOWN : `shown${EVENT_KEY}`\n}\n\nconst ClassName = {\n FADE : 'fade',\n HIDE : 'hide',\n SHOW : 'show',\n SHOWING : 'showing'\n}\n\nconst DefaultType = {\n animation : 'boolean',\n autohide : 'boolean',\n delay : 'number'\n}\n\nconst Default = {\n animation : true,\n autohide : true,\n delay : 500\n}\n\nconst Selector = {\n DATA_DISMISS : '[data-dismiss=\"toast\"]'\n}\n\n/**\n * ------------------------------------------------------------------------\n * Class Definition\n * ------------------------------------------------------------------------\n */\n\nclass Toast {\n constructor(element, config) {\n this._element = element\n this._config = this._getConfig(config)\n this._timeout = null\n this._setListeners()\n }\n\n // Getters\n\n static get VERSION() {\n return VERSION\n }\n\n static get DefaultType() {\n return DefaultType\n }\n\n static get Default() {\n return Default\n }\n\n // Public\n\n show() {\n $(this._element).trigger(Event.SHOW)\n\n if (this._config.animation) {\n this._element.classList.add(ClassName.FADE)\n }\n\n const complete = () => {\n this._element.classList.remove(ClassName.SHOWING)\n this._element.classList.add(ClassName.SHOW)\n\n $(this._element).trigger(Event.SHOWN)\n\n if (this._config.autohide) {\n this.hide()\n }\n }\n\n this._element.classList.remove(ClassName.HIDE)\n this._element.classList.add(ClassName.SHOWING)\n if (this._config.animation) {\n const transitionDuration = Util.getTransitionDurationFromElement(this._element)\n\n $(this._element)\n .one(Util.TRANSITION_END, complete)\n .emulateTransitionEnd(transitionDuration)\n } else {\n complete()\n }\n }\n\n hide(withoutTimeout) {\n if (!this._element.classList.contains(ClassName.SHOW)) {\n return\n }\n\n $(this._element).trigger(Event.HIDE)\n\n if (withoutTimeout) {\n this._close()\n } else {\n this._timeout = setTimeout(() => {\n this._close()\n }, this._config.delay)\n }\n }\n\n dispose() {\n clearTimeout(this._timeout)\n this._timeout = null\n\n if (this._element.classList.contains(ClassName.SHOW)) {\n this._element.classList.remove(ClassName.SHOW)\n }\n\n $(this._element).off(Event.CLICK_DISMISS)\n\n $.removeData(this._element, DATA_KEY)\n this._element = null\n this._config = null\n }\n\n // Private\n\n _getConfig(config) {\n config = {\n ...Default,\n ...$(this._element).data(),\n ...typeof config === 'object' && config ? config : {}\n }\n\n Util.typeCheckConfig(\n NAME,\n config,\n this.constructor.DefaultType\n )\n\n return config\n }\n\n _setListeners() {\n $(this._element).on(\n Event.CLICK_DISMISS,\n Selector.DATA_DISMISS,\n () => this.hide(true)\n )\n }\n\n _close() {\n const complete = () => {\n this._element.classList.add(ClassName.HIDE)\n $(this._element).trigger(Event.HIDDEN)\n }\n\n this._element.classList.remove(ClassName.SHOW)\n if (this._config.animation) {\n const transitionDuration = Util.getTransitionDurationFromElement(this._element)\n\n $(this._element)\n .one(Util.TRANSITION_END, complete)\n .emulateTransitionEnd(transitionDuration)\n } else {\n complete()\n }\n }\n\n // Static\n\n static _jQueryInterface(config) {\n return this.each(function () {\n const $element = $(this)\n let data = $element.data(DATA_KEY)\n const _config = typeof config === 'object' && config\n\n if (!data) {\n data = new Toast(this, _config)\n $element.data(DATA_KEY, data)\n }\n\n if (typeof config === 'string') {\n if (typeof data[config] === 'undefined') {\n throw new TypeError(`No method named \"${config}\"`)\n }\n\n data[config](this)\n }\n })\n }\n}\n\n/**\n * ------------------------------------------------------------------------\n * jQuery\n * ------------------------------------------------------------------------\n */\n\n$.fn[NAME] = Toast._jQueryInterface\n$.fn[NAME].Constructor = Toast\n$.fn[NAME].noConflict = () => {\n $.fn[NAME] = JQUERY_NO_CONFLICT\n return Toast._jQueryInterface\n}\n\nexport default Toast\n","import $ from 'jquery'\nimport Alert from './alert'\nimport Button from './button'\nimport Carousel from './carousel'\nimport Collapse from './collapse'\nimport Dropdown from './dropdown'\nimport Modal from './modal'\nimport Popover from './popover'\nimport Scrollspy from './scrollspy'\nimport Tab from './tab'\nimport Toast from './toast'\nimport Tooltip from './tooltip'\nimport Util from './util'\n\n/**\n * --------------------------------------------------------------------------\n * Bootstrap (v4.3.1): index.js\n * Licensed under MIT (://github.com/twbs/bootstrap/blob/master/LICENSE)\n * --------------------------------------------------------------------------\n */\n\n(() => {\n if (typeof $ === 'undefined') {\n throw new TypeError('Bootstrap\\'s JavaScript requires jQuery. jQuery must be included before Bootstrap\\'s JavaScript.')\n }\n\n const version = $.fn.jquery.split(' ')[0].split('.')\n const minMajor = 1\n const ltMajor = 2\n const minMinor = 9\n const minPatch = 1\n const maxMajor = 4\n\n if (version[0] < ltMajor && version[1] < minMinor || version[0] === minMajor && version[1] === minMinor && version[2] < minPatch || version[0] >= maxMajor) {\n throw new Error('Bootstrap\\'s JavaScript requires at least jQuery v1.9.1 but less than v4.0.0')\n }\n})()\n\nexport {\n Util,\n Alert,\n Button,\n Carousel,\n Collapse,\n Dropdown,\n Modal,\n Popover,\n Scrollspy,\n Tab,\n Toast,\n Tooltip\n}\n"]}
\ No newline at end of file
diff --git a/public/static/home/assets/js/customizer.js b/public/static/home/assets/js/customizer.js
new file mode 100644
index 0000000..d8c1ea8
--- /dev/null
+++ b/public/static/home/assets/js/customizer.js
@@ -0,0 +1,43 @@
+/**
+ * File customizer.js.
+ *
+ * Theme Customizer enhancements for a better user experience.
+ *
+ * Contains handlers to make Theme Customizer preview reload changes asynchronously.
+ */
+
+( function( $ ) {
+ 'use strict';
+
+ // Site title and description.
+ wp.customize( 'blogname', function( value ) {
+ value.bind( function( to ) {
+ $( '.site-title a' ).text( to );
+ } );
+ } );
+ wp.customize( 'blogdescription', function( value ) {
+ value.bind( function( to ) {
+ $( '.site-description' ).text( to );
+ } );
+ } );
+
+ // Header text color.
+ wp.customize( 'header_textcolor', function( value ) {
+ value.bind( function( to ) {
+ if ( 'blank' === to ) {
+ $( '.site-title a, .site-description' ).css( {
+ 'clip': 'rect(1px, 1px, 1px, 1px)',
+ 'position': 'absolute'
+ } );
+ } else {
+ $( '.site-title a, .site-description' ).css( {
+ 'clip': 'auto',
+ 'position': 'relative'
+ } );
+ $( '.site-title a, .site-description' ).css( {
+ 'color': to
+ } );
+ }
+ } );
+ } );
+} )( jQuery );
diff --git a/public/static/home/assets/js/imagesloaded.pkgd.min.js b/public/static/home/assets/js/imagesloaded.pkgd.min.js
new file mode 100644
index 0000000..e443a77
--- /dev/null
+++ b/public/static/home/assets/js/imagesloaded.pkgd.min.js
@@ -0,0 +1,7 @@
+/*!
+ * imagesLoaded PACKAGED v4.1.4
+ * JavaScript is all like "You images are done yet or what?"
+ * MIT License
+ */
+
+!function(e,t){"function"==typeof define&&define.amd?define("ev-emitter/ev-emitter",t):"object"==typeof module&&module.exports?module.exports=t():e.EvEmitter=t()}("undefined"!=typeof window?window:this,function(){function e(){}var t=e.prototype;return t.on=function(e,t){if(e&&t){var i=this._events=this._events||{},n=i[e]=i[e]||[];return n.indexOf(t)==-1&&n.push(t),this}},t.once=function(e,t){if(e&&t){this.on(e,t);var i=this._onceEvents=this._onceEvents||{},n=i[e]=i[e]||{};return n[t]=!0,this}},t.off=function(e,t){var i=this._events&&this._events[e];if(i&&i.length){var n=i.indexOf(t);return n!=-1&&i.splice(n,1),this}},t.emitEvent=function(e,t){var i=this._events&&this._events[e];if(i&&i.length){i=i.slice(0),t=t||[];for(var n=this._onceEvents&&this._onceEvents[e],o=0;o<i.length;o++){var r=i[o],s=n&&n[r];s&&(this.off(e,r),delete n[r]),r.apply(this,t)}return this}},t.allOff=function(){delete this._events,delete this._onceEvents},e}),function(e,t){"use strict";"function"==typeof define&&define.amd?define(["ev-emitter/ev-emitter"],function(i){return t(e,i)}):"object"==typeof module&&module.exports?module.exports=t(e,require("ev-emitter")):e.imagesLoaded=t(e,e.EvEmitter)}("undefined"!=typeof window?window:this,function(e,t){function i(e,t){for(var i in t)e[i]=t[i];return e}function n(e){if(Array.isArray(e))return e;var t="object"==typeof e&&"number"==typeof e.length;return t?d.call(e):[e]}function o(e,t,r){if(!(this instanceof o))return new o(e,t,r);var s=e;return"string"==typeof e&&(s=document.querySelectorAll(e)),s?(this.elements=n(s),this.options=i({},this.options),"function"==typeof t?r=t:i(this.options,t),r&&this.on("always",r),this.getImages(),h&&(this.jqDeferred=new h.Deferred),void setTimeout(this.check.bind(this))):void a.error("Bad element for imagesLoaded "+(s||e))}function r(e){this.img=e}function s(e,t){this.url=e,this.element=t,this.img=new Image}var h=e.jQuery,a=e.console,d=Array.prototype.slice;o.prototype=Object.create(t.prototype),o.prototype.options={},o.prototype.getImages=function(){this.images=[],this.elements.forEach(this.addElementImages,this)},o.prototype.addElementImages=function(e){"IMG"==e.nodeName&&this.addImage(e),this.options.background===!0&&this.addElementBackgroundImages(e);var t=e.nodeType;if(t&&u[t]){for(var i=e.querySelectorAll("img"),n=0;n<i.length;n++){var o=i[n];this.addImage(o)}if("string"==typeof this.options.background){var r=e.querySelectorAll(this.options.background);for(n=0;n<r.length;n++){var s=r[n];this.addElementBackgroundImages(s)}}}};var u={1:!0,9:!0,11:!0};return o.prototype.addElementBackgroundImages=function(e){var t=getComputedStyle(e);if(t)for(var i=/url\((['"])?(.*?)\1\)/gi,n=i.exec(t.backgroundImage);null!==n;){var o=n&&n[2];o&&this.addBackground(o,e),n=i.exec(t.backgroundImage)}},o.prototype.addImage=function(e){var t=new r(e);this.images.push(t)},o.prototype.addBackground=function(e,t){var i=new s(e,t);this.images.push(i)},o.prototype.check=function(){function e(e,i,n){setTimeout(function(){t.progress(e,i,n)})}var t=this;return this.progressedCount=0,this.hasAnyBroken=!1,this.images.length?void this.images.forEach(function(t){t.once("progress",e),t.check()}):void this.complete()},o.prototype.progress=function(e,t,i){this.progressedCount++,this.hasAnyBroken=this.hasAnyBroken||!e.isLoaded,this.emitEvent("progress",[this,e,t]),this.jqDeferred&&this.jqDeferred.notify&&this.jqDeferred.notify(this,e),this.progressedCount==this.images.length&&this.complete(),this.options.debug&&a&&a.log("progress: "+i,e,t)},o.prototype.complete=function(){var e=this.hasAnyBroken?"fail":"done";if(this.isComplete=!0,this.emitEvent(e,[this]),this.emitEvent("always",[this]),this.jqDeferred){var t=this.hasAnyBroken?"reject":"resolve";this.jqDeferred[t](this)}},r.prototype=Object.create(t.prototype),r.prototype.check=function(){var e=this.getIsImageComplete();return e?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))},r.prototype.getIsImageComplete=function(){return this.img.complete&&this.img.naturalWidth},r.prototype.confirm=function(e,t){this.isLoaded=e,this.emitEvent("progress",[this,this.img,t])},r.prototype.handleEvent=function(e){var t="on"+e.type;this[t]&&this[t](e)},r.prototype.onload=function(){this.confirm(!0,"onload"),this.unbindEvents()},r.prototype.onerror=function(){this.confirm(!1,"onerror"),this.unbindEvents()},r.prototype.unbindEvents=function(){this.proxyImage.removeEventListener("load",this),this.proxyImage.removeEventListener("error",this),this.img.removeEventListener("load",this),this.img.removeEventListener("error",this)},s.prototype=Object.create(r.prototype),s.prototype.check=function(){this.img.addEventListener("load",this),this.img.addEventListener("error",this),this.img.src=this.url;var e=this.getIsImageComplete();e&&(this.confirm(0!==this.img.naturalWidth,"naturalWidth"),this.unbindEvents())},s.prototype.unbindEvents=function(){this.img.removeEventListener("load",this),this.img.removeEventListener("error",this)},s.prototype.confirm=function(e,t){this.isLoaded=e,this.emitEvent("progress",[this,this.element,t])},o.makeJQueryPlugin=function(t){t=t||e.jQuery,t&&(h=t,h.fn.imagesLoaded=function(e,t){var i=new o(this,e,t);return i.jqDeferred.promise(h(this))})},o.makeJQueryPlugin(),o});
\ No newline at end of file
diff --git a/public/static/home/assets/js/isotope.pkgd.min.js b/public/static/home/assets/js/isotope.pkgd.min.js
new file mode 100644
index 0000000..1935b4e
--- /dev/null
+++ b/public/static/home/assets/js/isotope.pkgd.min.js
@@ -0,0 +1,12 @@
+/*!
+ * Isotope PACKAGED v3.0.0
+ *
+ * Licensed GPLv3 for open source use
+ * or Isotope Commercial License for commercial use
+ *
+ * http://isotope.metafizzy.co
+ * Copyright 2016 Metafizzy
+ */
+
+!function(t,e){"use strict";"function"==typeof define&&define.amd?define("jquery-bridget/jquery-bridget",["jquery"],function(i){e(t,i)}):"object"==typeof module&&module.exports?module.exports=e(t,require("jquery")):t.jQueryBridget=e(t,t.jQuery)}(window,function(t,e){"use strict";function i(i,r,a){function u(t,e,n){var o,r="$()."+i+'("'+e+'")';return t.each(function(t,u){var h=a.data(u,i);if(!h)return void s(i+" not initialized. Cannot call methods, i.e. "+r);var d=h[e];if(!d||"_"==e.charAt(0))return void s(r+" is not a valid method");var l=d.apply(h,n);o=void 0===o?l:o}),void 0!==o?o:t}function h(t,e){t.each(function(t,n){var o=a.data(n,i);o?(o.option(e),o._init()):(o=new r(n,e),a.data(n,i,o))})}a=a||e||t.jQuery,a&&(r.prototype.option||(r.prototype.option=function(t){a.isPlainObject(t)&&(this.options=a.extend(!0,this.options,t))}),a.fn[i]=function(t){if("string"==typeof t){var e=o.call(arguments,1);return u(this,t,e)}return h(this,t),this},n(a))}function n(t){!t||t&&t.bridget||(t.bridget=i)}var o=Array.prototype.slice,r=t.console,s="undefined"==typeof r?function(){}:function(t){r.error(t)};return n(e||t.jQuery),i}),function(t,e){"function"==typeof define&&define.amd?define("ev-emitter/ev-emitter",e):"object"==typeof module&&module.exports?module.exports=e():t.EvEmitter=e()}(this,function(){function t(){}var e=t.prototype;return e.on=function(t,e){if(t&&e){var i=this._events=this._events||{},n=i[t]=i[t]||[];return-1==n.indexOf(e)&&n.push(e),this}},e.once=function(t,e){if(t&&e){this.on(t,e);var i=this._onceEvents=this._onceEvents||{},n=i[t]=i[t]||{};return n[e]=!0,this}},e.off=function(t,e){var i=this._events&&this._events[t];if(i&&i.length){var n=i.indexOf(e);return-1!=n&&i.splice(n,1),this}},e.emitEvent=function(t,e){var i=this._events&&this._events[t];if(i&&i.length){var n=0,o=i[n];e=e||[];for(var r=this._onceEvents&&this._onceEvents[t];o;){var s=r&&r[o];s&&(this.off(t,o),delete r[o]),o.apply(this,e),n+=s?0:1,o=i[n]}return this}},t}),function(t,e){"use strict";"function"==typeof define&&define.amd?define("get-size/get-size",[],function(){return e()}):"object"==typeof module&&module.exports?module.exports=e():t.getSize=e()}(window,function(){"use strict";function t(t){var e=parseFloat(t),i=-1==t.indexOf("%")&&!isNaN(e);return i&&e}function e(){}function i(){for(var t={width:0,height:0,innerWidth:0,innerHeight:0,outerWidth:0,outerHeight:0},e=0;h>e;e++){var i=u[e];t[i]=0}return t}function n(t){var e=getComputedStyle(t);return e||a("Style returned "+e+". Are you running this code in a hidden iframe on Firefox? See http://bit.ly/getsizebug1"),e}function o(){if(!d){d=!0;var e=document.createElement("div");e.style.width="200px",e.style.padding="1px 2px 3px 4px",e.style.borderStyle="solid",e.style.borderWidth="1px 2px 3px 4px",e.style.boxSizing="border-box";var i=document.body||document.documentElement;i.appendChild(e);var o=n(e);r.isBoxSizeOuter=s=200==t(o.width),i.removeChild(e)}}function r(e){if(o(),"string"==typeof e&&(e=document.querySelector(e)),e&&"object"==typeof e&&e.nodeType){var r=n(e);if("none"==r.display)return i();var a={};a.width=e.offsetWidth,a.height=e.offsetHeight;for(var d=a.isBorderBox="border-box"==r.boxSizing,l=0;h>l;l++){var f=u[l],c=r[f],m=parseFloat(c);a[f]=isNaN(m)?0:m}var p=a.paddingLeft+a.paddingRight,y=a.paddingTop+a.paddingBottom,g=a.marginLeft+a.marginRight,v=a.marginTop+a.marginBottom,_=a.borderLeftWidth+a.borderRightWidth,I=a.borderTopWidth+a.borderBottomWidth,z=d&&s,x=t(r.width);x!==!1&&(a.width=x+(z?0:p+_));var S=t(r.height);return S!==!1&&(a.height=S+(z?0:y+I)),a.innerWidth=a.width-(p+_),a.innerHeight=a.height-(y+I),a.outerWidth=a.width+g,a.outerHeight=a.height+v,a}}var s,a="undefined"==typeof console?e:function(t){console.error(t)},u=["paddingLeft","paddingRight","paddingTop","paddingBottom","marginLeft","marginRight","marginTop","marginBottom","borderLeftWidth","borderRightWidth","borderTopWidth","borderBottomWidth"],h=u.length,d=!1;return r}),function(t,e){"use strict";"function"==typeof define&&define.amd?define("desandro-matches-selector/matches-selector",e):"object"==typeof module&&module.exports?module.exports=e():t.matchesSelector=e()}(window,function(){"use strict";var t=function(){var t=Element.prototype;if(t.matches)return"matches";if(t.matchesSelector)return"matchesSelector";for(var e=["webkit","moz","ms","o"],i=0;i<e.length;i++){var n=e[i],o=n+"MatchesSelector";if(t[o])return o}}();return function(e,i){return e[t](i)}}),function(t,e){"function"==typeof define&&define.amd?define("fizzy-ui-utils/utils",["desandro-matches-selector/matches-selector"],function(i){return e(t,i)}):"object"==typeof module&&module.exports?module.exports=e(t,require("desandro-matches-selector")):t.fizzyUIUtils=e(t,t.matchesSelector)}(window,function(t,e){var i={};i.extend=function(t,e){for(var i in e)t[i]=e[i];return t},i.modulo=function(t,e){return(t%e+e)%e},i.makeArray=function(t){var e=[];if(Array.isArray(t))e=t;else if(t&&"number"==typeof t.length)for(var i=0;i<t.length;i++)e.push(t[i]);else e.push(t);return e},i.removeFrom=function(t,e){var i=t.indexOf(e);-1!=i&&t.splice(i,1)},i.getParent=function(t,i){for(;t!=document.body;)if(t=t.parentNode,e(t,i))return t},i.getQueryElement=function(t){return"string"==typeof t?document.querySelector(t):t},i.handleEvent=function(t){var e="on"+t.type;this[e]&&this[e](t)},i.filterFindElements=function(t,n){t=i.makeArray(t);var o=[];return t.forEach(function(t){if(t instanceof HTMLElement){if(!n)return void o.push(t);e(t,n)&&o.push(t);for(var i=t.querySelectorAll(n),r=0;r<i.length;r++)o.push(i[r])}}),o},i.debounceMethod=function(t,e,i){var n=t.prototype[e],o=e+"Timeout";t.prototype[e]=function(){var t=this[o];t&&clearTimeout(t);var e=arguments,r=this;this[o]=setTimeout(function(){n.apply(r,e),delete r[o]},i||100)}},i.docReady=function(t){"complete"==document.readyState?t():document.addEventListener("DOMContentLoaded",t)},i.toDashed=function(t){return t.replace(/(.)([A-Z])/g,function(t,e,i){return e+"-"+i}).toLowerCase()};var n=t.console;return i.htmlInit=function(e,o){i.docReady(function(){var r=i.toDashed(o),s="data-"+r,a=document.querySelectorAll("["+s+"]"),u=document.querySelectorAll(".js-"+r),h=i.makeArray(a).concat(i.makeArray(u)),d=s+"-options",l=t.jQuery;h.forEach(function(t){var i,r=t.getAttribute(s)||t.getAttribute(d);try{i=r&&JSON.parse(r)}catch(a){return void(n&&n.error("Error parsing "+s+" on "+t.className+": "+a))}var u=new e(t,i);l&&l.data(t,o,u)})})},i}),function(t,e){"function"==typeof define&&define.amd?define("outlayer/item",["ev-emitter/ev-emitter","get-size/get-size"],e):"object"==typeof module&&module.exports?module.exports=e(require("ev-emitter"),require("get-size")):(t.Outlayer={},t.Outlayer.Item=e(t.EvEmitter,t.getSize))}(window,function(t,e){"use strict";function i(t){for(var e in t)return!1;return e=null,!0}function n(t,e){t&&(this.element=t,this.layout=e,this.position={x:0,y:0},this._create())}function o(t){return t.replace(/([A-Z])/g,function(t){return"-"+t.toLowerCase()})}var r=document.documentElement.style,s="string"==typeof r.transition?"transition":"WebkitTransition",a="string"==typeof r.transform?"transform":"WebkitTransform",u={WebkitTransition:"webkitTransitionEnd",transition:"transitionend"}[s],h={transform:a,transition:s,transitionDuration:s+"Duration",transitionProperty:s+"Property",transitionDelay:s+"Delay"},d=n.prototype=Object.create(t.prototype);d.constructor=n,d._create=function(){this._transn={ingProperties:{},clean:{},onEnd:{}},this.css({position:"absolute"})},d.handleEvent=function(t){var e="on"+t.type;this[e]&&this[e](t)},d.getSize=function(){this.size=e(this.element)},d.css=function(t){var e=this.element.style;for(var i in t){var n=h[i]||i;e[n]=t[i]}},d.getPosition=function(){var t=getComputedStyle(this.element),e=this.layout._getOption("originLeft"),i=this.layout._getOption("originTop"),n=t[e?"left":"right"],o=t[i?"top":"bottom"],r=this.layout.size,s=-1!=n.indexOf("%")?parseFloat(n)/100*r.width:parseInt(n,10),a=-1!=o.indexOf("%")?parseFloat(o)/100*r.height:parseInt(o,10);s=isNaN(s)?0:s,a=isNaN(a)?0:a,s-=e?r.paddingLeft:r.paddingRight,a-=i?r.paddingTop:r.paddingBottom,this.position.x=s,this.position.y=a},d.layoutPosition=function(){var t=this.layout.size,e={},i=this.layout._getOption("originLeft"),n=this.layout._getOption("originTop"),o=i?"paddingLeft":"paddingRight",r=i?"left":"right",s=i?"right":"left",a=this.position.x+t[o];e[r]=this.getXValue(a),e[s]="";var u=n?"paddingTop":"paddingBottom",h=n?"top":"bottom",d=n?"bottom":"top",l=this.position.y+t[u];e[h]=this.getYValue(l),e[d]="",this.css(e),this.emitEvent("layout",[this])},d.getXValue=function(t){var e=this.layout._getOption("horizontal");return this.layout.options.percentPosition&&!e?t/this.layout.size.width*100+"%":t+"px"},d.getYValue=function(t){var e=this.layout._getOption("horizontal");return this.layout.options.percentPosition&&e?t/this.layout.size.height*100+"%":t+"px"},d._transitionTo=function(t,e){this.getPosition();var i=this.position.x,n=this.position.y,o=parseInt(t,10),r=parseInt(e,10),s=o===this.position.x&&r===this.position.y;if(this.setPosition(t,e),s&&!this.isTransitioning)return void this.layoutPosition();var a=t-i,u=e-n,h={};h.transform=this.getTranslate(a,u),this.transition({to:h,onTransitionEnd:{transform:this.layoutPosition},isCleaning:!0})},d.getTranslate=function(t,e){var i=this.layout._getOption("originLeft"),n=this.layout._getOption("originTop");return t=i?t:-t,e=n?e:-e,"translate3d("+t+"px, "+e+"px, 0)"},d.goTo=function(t,e){this.setPosition(t,e),this.layoutPosition()},d.moveTo=d._transitionTo,d.setPosition=function(t,e){this.position.x=parseInt(t,10),this.position.y=parseInt(e,10)},d._nonTransition=function(t){this.css(t.to),t.isCleaning&&this._removeStyles(t.to);for(var e in t.onTransitionEnd)t.onTransitionEnd[e].call(this)},d.transition=function(t){if(!parseFloat(this.layout.options.transitionDuration))return void this._nonTransition(t);var e=this._transn;for(var i in t.onTransitionEnd)e.onEnd[i]=t.onTransitionEnd[i];for(i in t.to)e.ingProperties[i]=!0,t.isCleaning&&(e.clean[i]=!0);if(t.from){this.css(t.from);var n=this.element.offsetHeight;n=null}this.enableTransition(t.to),this.css(t.to),this.isTransitioning=!0};var l="opacity,"+o(a);d.enableTransition=function(){if(!this.isTransitioning){var t=this.layout.options.transitionDuration;t="number"==typeof t?t+"ms":t,this.css({transitionProperty:l,transitionDuration:t,transitionDelay:this.staggerDelay||0}),this.element.addEventListener(u,this,!1)}},d.onwebkitTransitionEnd=function(t){this.ontransitionend(t)},d.onotransitionend=function(t){this.ontransitionend(t)};var f={"-webkit-transform":"transform"};d.ontransitionend=function(t){if(t.target===this.element){var e=this._transn,n=f[t.propertyName]||t.propertyName;if(delete e.ingProperties[n],i(e.ingProperties)&&this.disableTransition(),n in e.clean&&(this.element.style[t.propertyName]="",delete e.clean[n]),n in e.onEnd){var o=e.onEnd[n];o.call(this),delete e.onEnd[n]}this.emitEvent("transitionEnd",[this])}},d.disableTransition=function(){this.removeTransitionStyles(),this.element.removeEventListener(u,this,!1),this.isTransitioning=!1},d._removeStyles=function(t){var e={};for(var i in t)e[i]="";this.css(e)};var c={transitionProperty:"",transitionDuration:"",transitionDelay:""};return d.removeTransitionStyles=function(){this.css(c)},d.stagger=function(t){t=isNaN(t)?0:t,this.staggerDelay=t+"ms"},d.removeElem=function(){this.element.parentNode.removeChild(this.element),this.css({display:""}),this.emitEvent("remove",[this])},d.remove=function(){return s&&parseFloat(this.layout.options.transitionDuration)?(this.once("transitionEnd",function(){this.removeElem()}),void this.hide()):void this.removeElem()},d.reveal=function(){delete this.isHidden,this.css({display:""});var t=this.layout.options,e={},i=this.getHideRevealTransitionEndProperty("visibleStyle");e[i]=this.onRevealTransitionEnd,this.transition({from:t.hiddenStyle,to:t.visibleStyle,isCleaning:!0,onTransitionEnd:e})},d.onRevealTransitionEnd=function(){this.isHidden||this.emitEvent("reveal")},d.getHideRevealTransitionEndProperty=function(t){var e=this.layout.options[t];if(e.opacity)return"opacity";for(var i in e)return i},d.hide=function(){this.isHidden=!0,this.css({display:""});var t=this.layout.options,e={},i=this.getHideRevealTransitionEndProperty("hiddenStyle");e[i]=this.onHideTransitionEnd,this.transition({from:t.visibleStyle,to:t.hiddenStyle,isCleaning:!0,onTransitionEnd:e})},d.onHideTransitionEnd=function(){this.isHidden&&(this.css({display:"none"}),this.emitEvent("hide"))},d.destroy=function(){this.css({position:"",left:"",right:"",top:"",bottom:"",transition:"",transform:""})},n}),function(t,e){"use strict";"function"==typeof define&&define.amd?define("outlayer/outlayer",["ev-emitter/ev-emitter","get-size/get-size","fizzy-ui-utils/utils","./item"],function(i,n,o,r){return e(t,i,n,o,r)}):"object"==typeof module&&module.exports?module.exports=e(t,require("ev-emitter"),require("get-size"),require("fizzy-ui-utils"),require("./item")):t.Outlayer=e(t,t.EvEmitter,t.getSize,t.fizzyUIUtils,t.Outlayer.Item)}(window,function(t,e,i,n,o){"use strict";function r(t,e){var i=n.getQueryElement(t);if(!i)return void(u&&u.error("Bad element for "+this.constructor.namespace+": "+(i||t)));this.element=i,h&&(this.$element=h(this.element)),this.options=n.extend({},this.constructor.defaults),this.option(e);var o=++l;this.element.outlayerGUID=o,f[o]=this,this._create();var r=this._getOption("initLayout");r&&this.layout()}function s(t){function e(){t.apply(this,arguments)}return e.prototype=Object.create(t.prototype),e.prototype.constructor=e,e}function a(t){if("number"==typeof t)return t;var e=t.match(/(^\d*\.?\d*)(\w*)/),i=e&&e[1],n=e&&e[2];if(!i.length)return 0;i=parseFloat(i);var o=m[n]||1;return i*o}var u=t.console,h=t.jQuery,d=function(){},l=0,f={};r.namespace="outlayer",r.Item=o,r.defaults={containerStyle:{position:"relative"},initLayout:!0,originLeft:!0,originTop:!0,resize:!0,resizeContainer:!0,transitionDuration:"0.4s",hiddenStyle:{opacity:0,transform:"scale(0.001)"},visibleStyle:{opacity:1,transform:"scale(1)"}};var c=r.prototype;n.extend(c,e.prototype),c.option=function(t){n.extend(this.options,t)},c._getOption=function(t){var e=this.constructor.compatOptions[t];return e&&void 0!==this.options[e]?this.options[e]:this.options[t]},r.compatOptions={initLayout:"isInitLayout",horizontal:"isHorizontal",layoutInstant:"isLayoutInstant",originLeft:"isOriginLeft",originTop:"isOriginTop",resize:"isResizeBound",resizeContainer:"isResizingContainer"},c._create=function(){this.reloadItems(),this.stamps=[],this.stamp(this.options.stamp),n.extend(this.element.style,this.options.containerStyle);var t=this._getOption("resize");t&&this.bindResize()},c.reloadItems=function(){this.items=this._itemize(this.element.children)},c._itemize=function(t){for(var e=this._filterFindItemElements(t),i=this.constructor.Item,n=[],o=0;o<e.length;o++){var r=e[o],s=new i(r,this);n.push(s)}return n},c._filterFindItemElements=function(t){return n.filterFindElements(t,this.options.itemSelector)},c.getItemElements=function(){return this.items.map(function(t){return t.element})},c.layout=function(){this._resetLayout(),this._manageStamps();var t=this._getOption("layoutInstant"),e=void 0!==t?t:!this._isLayoutInited;this.layoutItems(this.items,e),this._isLayoutInited=!0},c._init=c.layout,c._resetLayout=function(){this.getSize()},c.getSize=function(){this.size=i(this.element)},c._getMeasurement=function(t,e){var n,o=this.options[t];o?("string"==typeof o?n=this.element.querySelector(o):o instanceof HTMLElement&&(n=o),this[t]=n?i(n)[e]:o):this[t]=0},c.layoutItems=function(t,e){t=this._getItemsForLayout(t),this._layoutItems(t,e),this._postLayout()},c._getItemsForLayout=function(t){return t.filter(function(t){return!t.isIgnored})},c._layoutItems=function(t,e){if(this._emitCompleteOnItems("layout",t),t&&t.length){var i=[];t.forEach(function(t){var n=this._getItemLayoutPosition(t);n.item=t,n.isInstant=e||t.isLayoutInstant,i.push(n)},this),this._processLayoutQueue(i)}},c._getItemLayoutPosition=function(){return{x:0,y:0}},c._processLayoutQueue=function(t){this.updateStagger(),t.forEach(function(t,e){this._positionItem(t.item,t.x,t.y,t.isInstant,e)},this)},c.updateStagger=function(){var t=this.options.stagger;return null===t||void 0===t?void(this.stagger=0):(this.stagger=a(t),this.stagger)},c._positionItem=function(t,e,i,n,o){n?t.goTo(e,i):(t.stagger(o*this.stagger),t.moveTo(e,i))},c._postLayout=function(){this.resizeContainer()},c.resizeContainer=function(){var t=this._getOption("resizeContainer");if(t){var e=this._getContainerSize();e&&(this._setContainerMeasure(e.width,!0),this._setContainerMeasure(e.height,!1))}},c._getContainerSize=d,c._setContainerMeasure=function(t,e){if(void 0!==t){var i=this.size;i.isBorderBox&&(t+=e?i.paddingLeft+i.paddingRight+i.borderLeftWidth+i.borderRightWidth:i.paddingBottom+i.paddingTop+i.borderTopWidth+i.borderBottomWidth),t=Math.max(t,0),this.element.style[e?"width":"height"]=t+"px"}},c._emitCompleteOnItems=function(t,e){function i(){o.dispatchEvent(t+"Complete",null,[e])}function n(){s++,s==r&&i()}var o=this,r=e.length;if(!e||!r)return void i();var s=0;e.forEach(function(e){e.once(t,n)})},c.dispatchEvent=function(t,e,i){var n=e?[e].concat(i):i;if(this.emitEvent(t,n),h)if(this.$element=this.$element||h(this.element),e){var o=h.Event(e);o.type=t,this.$element.trigger(o,i)}else this.$element.trigger(t,i)},c.ignore=function(t){var e=this.getItem(t);e&&(e.isIgnored=!0)},c.unignore=function(t){var e=this.getItem(t);e&&delete e.isIgnored},c.stamp=function(t){t=this._find(t),t&&(this.stamps=this.stamps.concat(t),t.forEach(this.ignore,this))},c.unstamp=function(t){t=this._find(t),t&&t.forEach(function(t){n.removeFrom(this.stamps,t),this.unignore(t)},this)},c._find=function(t){return t?("string"==typeof t&&(t=this.element.querySelectorAll(t)),t=n.makeArray(t)):void 0},c._manageStamps=function(){this.stamps&&this.stamps.length&&(this._getBoundingRect(),this.stamps.forEach(this._manageStamp,this))},c._getBoundingRect=function(){var t=this.element.getBoundingClientRect(),e=this.size;this._boundingRect={left:t.left+e.paddingLeft+e.borderLeftWidth,top:t.top+e.paddingTop+e.borderTopWidth,right:t.right-(e.paddingRight+e.borderRightWidth),bottom:t.bottom-(e.paddingBottom+e.borderBottomWidth)}},c._manageStamp=d,c._getElementOffset=function(t){var e=t.getBoundingClientRect(),n=this._boundingRect,o=i(t),r={left:e.left-n.left-o.marginLeft,top:e.top-n.top-o.marginTop,right:n.right-e.right-o.marginRight,bottom:n.bottom-e.bottom-o.marginBottom};return r},c.handleEvent=n.handleEvent,c.bindResize=function(){t.addEventListener("resize",this),this.isResizeBound=!0},c.unbindResize=function(){t.removeEventListener("resize",this),this.isResizeBound=!1},c.onresize=function(){this.resize()},n.debounceMethod(r,"onresize",100),c.resize=function(){this.isResizeBound&&this.needsResizeLayout()&&this.layout()},c.needsResizeLayout=function(){var t=i(this.element),e=this.size&&t;return e&&t.innerWidth!==this.size.innerWidth},c.addItems=function(t){var e=this._itemize(t);return e.length&&(this.items=this.items.concat(e)),e},c.appended=function(t){var e=this.addItems(t);e.length&&(this.layoutItems(e,!0),this.reveal(e))},c.prepended=function(t){var e=this._itemize(t);if(e.length){var i=this.items.slice(0);this.items=e.concat(i),this._resetLayout(),this._manageStamps(),this.layoutItems(e,!0),this.reveal(e),this.layoutItems(i)}},c.reveal=function(t){if(this._emitCompleteOnItems("reveal",t),t&&t.length){var e=this.updateStagger();t.forEach(function(t,i){t.stagger(i*e),t.reveal()})}},c.hide=function(t){if(this._emitCompleteOnItems("hide",t),t&&t.length){var e=this.updateStagger();t.forEach(function(t,i){t.stagger(i*e),t.hide()})}},c.revealItemElements=function(t){var e=this.getItems(t);this.reveal(e)},c.hideItemElements=function(t){var e=this.getItems(t);this.hide(e)},c.getItem=function(t){for(var e=0;e<this.items.length;e++){var i=this.items[e];if(i.element==t)return i}},c.getItems=function(t){t=n.makeArray(t);var e=[];return t.forEach(function(t){var i=this.getItem(t);i&&e.push(i)},this),e},c.remove=function(t){var e=this.getItems(t);this._emitCompleteOnItems("remove",e),e&&e.length&&e.forEach(function(t){t.remove(),n.removeFrom(this.items,t)},this)},c.destroy=function(){var t=this.element.style;t.height="",t.position="",t.width="",this.items.forEach(function(t){t.destroy()}),this.unbindResize();var e=this.element.outlayerGUID;delete f[e],delete this.element.outlayerGUID,h&&h.removeData(this.element,this.constructor.namespace)},r.data=function(t){t=n.getQueryElement(t);var e=t&&t.outlayerGUID;return e&&f[e]},r.create=function(t,e){var i=s(r);return i.defaults=n.extend({},r.defaults),n.extend(i.defaults,e),i.compatOptions=n.extend({},r.compatOptions),i.namespace=t,i.data=r.data,i.Item=s(o),n.htmlInit(i,t),h&&h.bridget&&h.bridget(t,i),i};var m={ms:1,s:1e3};return r.Item=o,r}),function(t,e){"function"==typeof define&&define.amd?define("isotope/item",["outlayer/outlayer"],e):"object"==typeof module&&module.exports?module.exports=e(require("outlayer")):(t.Isotope=t.Isotope||{},t.Isotope.Item=e(t.Outlayer))}(window,function(t){"use strict";function e(){t.Item.apply(this,arguments)}var i=e.prototype=Object.create(t.Item.prototype),n=i._create;i._create=function(){this.id=this.layout.itemGUID++,n.call(this),this.sortData={}},i.updateSortData=function(){if(!this.isIgnored){this.sortData.id=this.id,this.sortData["original-order"]=this.id,this.sortData.random=Math.random();var t=this.layout.options.getSortData,e=this.layout._sorters;for(var i in t){var n=e[i];this.sortData[i]=n(this.element,this)}}};var o=i.destroy;return i.destroy=function(){o.apply(this,arguments),this.css({display:""})},e}),function(t,e){"function"==typeof define&&define.amd?define("isotope/layout-mode",["get-size/get-size","outlayer/outlayer"],e):"object"==typeof module&&module.exports?module.exports=e(require("get-size"),require("outlayer")):(t.Isotope=t.Isotope||{},t.Isotope.LayoutMode=e(t.getSize,t.Outlayer))}(window,function(t,e){"use strict";function i(t){this.isotope=t,t&&(this.options=t.options[this.namespace],this.element=t.element,this.items=t.filteredItems,this.size=t.size)}var n=i.prototype,o=["_resetLayout","_getItemLayoutPosition","_manageStamp","_getContainerSize","_getElementOffset","needsResizeLayout","_getOption"];return o.forEach(function(t){n[t]=function(){return e.prototype[t].apply(this.isotope,arguments)}}),n.needsVerticalResizeLayout=function(){var e=t(this.isotope.element),i=this.isotope.size&&e;return i&&e.innerHeight!=this.isotope.size.innerHeight},n._getMeasurement=function(){this.isotope._getMeasurement.apply(this,arguments)},n.getColumnWidth=function(){this.getSegmentSize("column","Width")},n.getRowHeight=function(){this.getSegmentSize("row","Height")},n.getSegmentSize=function(t,e){var i=t+e,n="outer"+e;if(this._getMeasurement(i,n),!this[i]){var o=this.getFirstItemSize();this[i]=o&&o[n]||this.isotope.size["inner"+e]}},n.getFirstItemSize=function(){var e=this.isotope.filteredItems[0];return e&&e.element&&t(e.element)},n.layout=function(){this.isotope.layout.apply(this.isotope,arguments)},n.getSize=function(){this.isotope.getSize(),this.size=this.isotope.size},i.modes={},i.create=function(t,e){function o(){i.apply(this,arguments)}return o.prototype=Object.create(n),o.prototype.constructor=o,e&&(o.options=e),o.prototype.namespace=t,i.modes[t]=o,o},i}),function(t,e){"function"==typeof define&&define.amd?define("masonry/masonry",["outlayer/outlayer","get-size/get-size"],e):"object"==typeof module&&module.exports?module.exports=e(require("outlayer"),require("get-size")):t.Masonry=e(t.Outlayer,t.getSize)}(window,function(t,e){var i=t.create("masonry");return i.compatOptions.fitWidth="isFitWidth",i.prototype._resetLayout=function(){this.getSize(),this._getMeasurement("columnWidth","outerWidth"),this._getMeasurement("gutter","outerWidth"),this.measureColumns(),this.colYs=[];for(var t=0;t<this.cols;t++)this.colYs.push(0);this.maxY=0},i.prototype.measureColumns=function(){if(this.getContainerWidth(),!this.columnWidth){var t=this.items[0],i=t&&t.element;this.columnWidth=i&&e(i).outerWidth||this.containerWidth}var n=this.columnWidth+=this.gutter,o=this.containerWidth+this.gutter,r=o/n,s=n-o%n,a=s&&1>s?"round":"floor";r=Math[a](r),this.cols=Math.max(r,1)},i.prototype.getContainerWidth=function(){var t=this._getOption("fitWidth"),i=t?this.element.parentNode:this.element,n=e(i);this.containerWidth=n&&n.innerWidth},i.prototype._getItemLayoutPosition=function(t){t.getSize();var e=t.size.outerWidth%this.columnWidth,i=e&&1>e?"round":"ceil",n=Math[i](t.size.outerWidth/this.columnWidth);n=Math.min(n,this.cols);for(var o=this._getColGroup(n),r=Math.min.apply(Math,o),s=o.indexOf(r),a={x:this.columnWidth*s,y:r},u=r+t.size.outerHeight,h=this.cols+1-o.length,d=0;h>d;d++)this.colYs[s+d]=u;return a},i.prototype._getColGroup=function(t){if(2>t)return this.colYs;for(var e=[],i=this.cols+1-t,n=0;i>n;n++){var o=this.colYs.slice(n,n+t);e[n]=Math.max.apply(Math,o)}return e},i.prototype._manageStamp=function(t){var i=e(t),n=this._getElementOffset(t),o=this._getOption("originLeft"),r=o?n.left:n.right,s=r+i.outerWidth,a=Math.floor(r/this.columnWidth);a=Math.max(0,a);var u=Math.floor(s/this.columnWidth);u-=s%this.columnWidth?0:1,u=Math.min(this.cols-1,u);for(var h=this._getOption("originTop"),d=(h?n.top:n.bottom)+i.outerHeight,l=a;u>=l;l++)this.colYs[l]=Math.max(d,this.colYs[l])},i.prototype._getContainerSize=function(){this.maxY=Math.max.apply(Math,this.colYs);var t={height:this.maxY};return this._getOption("fitWidth")&&(t.width=this._getContainerFitWidth()),t},i.prototype._getContainerFitWidth=function(){for(var t=0,e=this.cols;--e&&0===this.colYs[e];)t++;return(this.cols-t)*this.columnWidth-this.gutter},i.prototype.needsResizeLayout=function(){var t=this.containerWidth;return this.getContainerWidth(),t!=this.containerWidth},i}),function(t,e){"function"==typeof define&&define.amd?define("isotope/layout-modes/masonry",["../layout-mode","masonry/masonry"],e):"object"==typeof module&&module.exports?module.exports=e(require("../layout-mode"),require("masonry-layout")):e(t.Isotope.LayoutMode,t.Masonry)}(window,function(t,e){"use strict";var i=t.create("masonry"),n=i.prototype,o={_getElementOffset:!0,layout:!0,_getMeasurement:!0};for(var r in e.prototype)o[r]||(n[r]=e.prototype[r]);var s=n.measureColumns;n.measureColumns=function(){this.items=this.isotope.filteredItems,s.call(this)};var a=n._getOption;return n._getOption=function(t){return"fitWidth"==t?void 0!==this.options.isFitWidth?this.options.isFitWidth:this.options.fitWidth:a.apply(this.isotope,arguments)},i}),function(t,e){"function"==typeof define&&define.amd?define("isotope/layout-modes/fit-rows",["../layout-mode"],e):"object"==typeof exports?module.exports=e(require("../layout-mode")):e(t.Isotope.LayoutMode)}(window,function(t){"use strict";var e=t.create("fitRows"),i=e.prototype;return i._resetLayout=function(){this.x=0,this.y=0,this.maxY=0,this._getMeasurement("gutter","outerWidth")},i._getItemLayoutPosition=function(t){t.getSize();var e=t.size.outerWidth+this.gutter,i=this.isotope.size.innerWidth+this.gutter;0!==this.x&&e+this.x>i&&(this.x=0,this.y=this.maxY);var n={x:this.x,y:this.y};return this.maxY=Math.max(this.maxY,this.y+t.size.outerHeight),this.x+=e,n},i._getContainerSize=function(){return{height:this.maxY}},e}),function(t,e){"function"==typeof define&&define.amd?define("isotope/layout-modes/vertical",["../layout-mode"],e):"object"==typeof module&&module.exports?module.exports=e(require("../layout-mode")):e(t.Isotope.LayoutMode)}(window,function(t){"use strict";var e=t.create("vertical",{horizontalAlignment:0}),i=e.prototype;return i._resetLayout=function(){this.y=0},i._getItemLayoutPosition=function(t){t.getSize();var e=(this.isotope.size.innerWidth-t.size.outerWidth)*this.options.horizontalAlignment,i=this.y;return this.y+=t.size.outerHeight,{x:e,y:i}},i._getContainerSize=function(){return{height:this.y}},e}),function(t,e){"function"==typeof define&&define.amd?define(["outlayer/outlayer","get-size/get-size","desandro-matches-selector/matches-selector","fizzy-ui-utils/utils","./item","./layout-mode","./layout-modes/masonry","./layout-modes/fit-rows","./layout-modes/vertical"],function(i,n,o,r,s,a){return e(t,i,n,o,r,s,a)}):"object"==typeof module&&module.exports?module.exports=e(t,require("outlayer"),require("get-size"),require("desandro-matches-selector"),require("fizzy-ui-utils"),require("./item"),require("./layout-mode"),require("./layout-modes/masonry"),require("./layout-modes/fit-rows"),require("./layout-modes/vertical")):t.Isotope=e(t,t.Outlayer,t.getSize,t.matchesSelector,t.fizzyUIUtils,t.Isotope.Item,t.Isotope.LayoutMode)}(window,function(t,e,i,n,o,r,s){function a(t,e){return function(i,n){for(var o=0;o<t.length;o++){var r=t[o],s=i.sortData[r],a=n.sortData[r];if(s>a||a>s){var u=void 0!==e[r]?e[r]:e,h=u?1:-1;return(s>a?1:-1)*h}}return 0}}var u=t.jQuery,h=String.prototype.trim?function(t){return t.trim()}:function(t){return t.replace(/^\s+|\s+$/g,"")},d=e.create("isotope",{layoutMode:"masonry",isJQueryFiltering:!0,sortAscending:!0});d.Item=r,d.LayoutMode=s;var l=d.prototype;l._create=function(){this.itemGUID=0,this._sorters={},this._getSorters(),e.prototype._create.call(this),this.modes={},this.filteredItems=this.items,this.sortHistory=["original-order"];for(var t in s.modes)this._initLayoutMode(t)},l.reloadItems=function(){this.itemGUID=0,e.prototype.reloadItems.call(this)},l._itemize=function(){for(var t=e.prototype._itemize.apply(this,arguments),i=0;i<t.length;i++){var n=t[i];n.id=this.itemGUID++}return this._updateItemsSortData(t),t},l._initLayoutMode=function(t){var e=s.modes[t],i=this.options[t]||{};this.options[t]=e.options?o.extend(e.options,i):i,this.modes[t]=new e(this)},l.layout=function(){return!this._isLayoutInited&&this._getOption("initLayout")?void this.arrange():void this._layout()},l._layout=function(){var t=this._getIsInstant();this._resetLayout(),this._manageStamps(),this.layoutItems(this.filteredItems,t),this._isLayoutInited=!0},l.arrange=function(t){this.option(t),this._getIsInstant();var e=this._filter(this.items);this.filteredItems=e.matches,this._bindArrangeComplete(),this._isInstant?this._noTransition(this._hideReveal,[e]):this._hideReveal(e),this._sort(),this._layout()},l._init=l.arrange,l._hideReveal=function(t){this.reveal(t.needReveal),this.hide(t.needHide)},l._getIsInstant=function(){var t=this._getOption("layoutInstant"),e=void 0!==t?t:!this._isLayoutInited;return this._isInstant=e,e},l._bindArrangeComplete=function(){function t(){e&&i&&n&&o.dispatchEvent("arrangeComplete",null,[o.filteredItems])}var e,i,n,o=this;this.once("layoutComplete",function(){e=!0,t()}),this.once("hideComplete",function(){i=!0,t()}),this.once("revealComplete",function(){n=!0,t()})},l._filter=function(t){var e=this.options.filter;e=e||"*";for(var i=[],n=[],o=[],r=this._getFilterTest(e),s=0;s<t.length;s++){var a=t[s];if(!a.isIgnored){var u=r(a);u&&i.push(a),u&&a.isHidden?n.push(a):u||a.isHidden||o.push(a)}}return{matches:i,needReveal:n,needHide:o}},l._getFilterTest=function(t){return u&&this.options.isJQueryFiltering?function(e){return u(e.element).is(t)}:"function"==typeof t?function(e){return t(e.element)}:function(e){return n(e.element,t)}},l.updateSortData=function(t){var e;t?(t=o.makeArray(t),e=this.getItems(t)):e=this.items,this._getSorters(),this._updateItemsSortData(e)},l._getSorters=function(){var t=this.options.getSortData;for(var e in t){var i=t[e];this._sorters[e]=f(i)}},l._updateItemsSortData=function(t){for(var e=t&&t.length,i=0;e&&e>i;i++){var n=t[i];n.updateSortData()}};var f=function(){function t(t){if("string"!=typeof t)return t;var i=h(t).split(" "),n=i[0],o=n.match(/^\[(.+)\]$/),r=o&&o[1],s=e(r,n),a=d.sortDataParsers[i[1]];return t=a?function(t){return t&&a(s(t))}:function(t){return t&&s(t)}}function e(t,e){return t?function(e){return e.getAttribute(t)}:function(t){var i=t.querySelector(e);
+return i&&i.textContent}}return t}();d.sortDataParsers={parseInt:function(t){return parseInt(t,10)},parseFloat:function(t){return parseFloat(t)}},l._sort=function(){var t=this.options.sortBy;if(t){var e=[].concat.apply(t,this.sortHistory),i=a(e,this.options.sortAscending);this.filteredItems.sort(i),t!=this.sortHistory[0]&&this.sortHistory.unshift(t)}},l._mode=function(){var t=this.options.layoutMode,e=this.modes[t];if(!e)throw new Error("No layout mode: "+t);return e.options=this.options[t],e},l._resetLayout=function(){e.prototype._resetLayout.call(this),this._mode()._resetLayout()},l._getItemLayoutPosition=function(t){return this._mode()._getItemLayoutPosition(t)},l._manageStamp=function(t){this._mode()._manageStamp(t)},l._getContainerSize=function(){return this._mode()._getContainerSize()},l.needsResizeLayout=function(){return this._mode().needsResizeLayout()},l.appended=function(t){var e=this.addItems(t);if(e.length){var i=this._filterRevealAdded(e);this.filteredItems=this.filteredItems.concat(i)}},l.prepended=function(t){var e=this._itemize(t);if(e.length){this._resetLayout(),this._manageStamps();var i=this._filterRevealAdded(e);this.layoutItems(this.filteredItems),this.filteredItems=i.concat(this.filteredItems),this.items=e.concat(this.items)}},l._filterRevealAdded=function(t){var e=this._filter(t);return this.hide(e.needHide),this.reveal(e.matches),this.layoutItems(e.matches,!0),e.matches},l.insert=function(t){var e=this.addItems(t);if(e.length){var i,n,o=e.length;for(i=0;o>i;i++)n=e[i],this.element.appendChild(n.element);var r=this._filter(e).matches;for(i=0;o>i;i++)e[i].isLayoutInstant=!0;for(this.arrange(),i=0;o>i;i++)delete e[i].isLayoutInstant;this.reveal(r)}};var c=l.remove;return l.remove=function(t){t=o.makeArray(t);var e=this.getItems(t);c.call(this,t);for(var i=e&&e.length,n=0;i&&i>n;n++){var r=e[n];o.removeFrom(this.filteredItems,r)}},l.shuffle=function(){for(var t=0;t<this.items.length;t++){var e=this.items[t];e.sortData.random=Math.random()}this.options.sortBy="random",this._sort(),this._layout()},l._noTransition=function(t,e){var i=this.options.transitionDuration;this.options.transitionDuration=0;var n=t.apply(this,e);return this.options.transitionDuration=i,n},l.getFilteredItemElements=function(){return this.filteredItems.map(function(t){return t.element})},d});
\ No newline at end of file
diff --git a/public/static/home/assets/js/jquery.appear.js b/public/static/home/assets/js/jquery.appear.js
new file mode 100644
index 0000000..459f8a6
--- /dev/null
+++ b/public/static/home/assets/js/jquery.appear.js
@@ -0,0 +1,151 @@
+/*
+ * jQuery.appear
+ * ://github.com/bas2k/jquery.appear/
+ * http://code.google.com/p/jquery-appear/
+ *
+ * Copyright (c) 2009 Michael Hixson
+ * Copyright (c) 2012 Alexander Brovikov
+ * Licensed under the MIT license (http://www.opensource.org/licenses/mit-license.php)
+ */
+(function($) {
+ 'use strict';
+ $.fn.appear = function(fn, options) {
+
+ var settings = $.extend({
+
+ //arbitrary data to pass to fn
+ data: undefined,
+
+ //call fn only on the first appear?
+ one: true,
+
+ // X & Y accuracy
+ accX: 0,
+ accY: 0
+
+ }, options);
+
+ return this.each(function() {
+
+ var t = $(this);
+
+ //whether the element is currently visible
+ t.appeared = false;
+
+ if (!fn) {
+
+ //trigger the custom event
+ t.trigger('appear', settings.data);
+ return;
+ }
+
+ var w = $(window);
+
+ //fires the appear event when appropriate
+ var check = function() {
+
+ //is the element hidden?
+ if (!t.is(':visible')) {
+
+ //it became hidden
+ t.appeared = false;
+ return;
+ }
+
+ //is the element inside the visible window?
+ var a = w.scrollLeft();
+ var b = w.scrollTop();
+ var o = t.offset();
+ var x = o.left;
+ var y = o.top;
+
+ var ax = settings.accX;
+ var ay = settings.accY;
+ var th = t.height();
+ var wh = w.height();
+ var tw = t.width();
+ var ww = w.width();
+
+ if (y + th + ay >= b &&
+ y <= b + wh + ay &&
+ x + tw + ax >= a &&
+ x <= a + ww + ax) {
+
+ //trigger the custom event
+ if (!t.appeared) t.trigger('appear', settings.data);
+
+ } else {
+
+ //it scrolled out of view
+ t.appeared = false;
+ }
+ };
+
+ //create a modified fn with some additional logic
+ var modifiedFn = function() {
+
+ //mark the element as visible
+ t.appeared = true;
+
+ //is this supposed to happen only once?
+ if (settings.one) {
+
+ //remove the check
+ w.unbind('scroll', check);
+ var i = $.inArray(check, $.fn.appear.checks);
+ if (i >= 0) $.fn.appear.checks.splice(i, 1);
+ }
+
+ //trigger the original fn
+ fn.apply(this, arguments);
+ };
+
+ //bind the modified fn to the element
+ if (settings.one) t.one('appear', settings.data, modifiedFn);
+ else t.bind('appear', settings.data, modifiedFn);
+
+ //check whenever the window scrolls
+ w.scroll(check);
+
+ //check whenever the dom changes
+ $.fn.appear.checks.push(check);
+
+ //check now
+ (check)();
+ });
+ };
+
+ //keep a queue of appearance checks
+ $.extend($.fn.appear, {
+
+ checks: [],
+ timeout: null,
+
+ //process the queue
+ checkAll: function() {
+ var length = $.fn.appear.checks.length;
+ if (length > 0) while (length--) ($.fn.appear.checks[length])();
+ },
+
+ //check the queue asynchronously
+ run: function() {
+ if ($.fn.appear.timeout) clearTimeout($.fn.appear.timeout);
+ $.fn.appear.timeout = setTimeout($.fn.appear.checkAll, 20);
+ }
+ });
+
+ //run checks when these methods are called
+ $.each(['append', 'prepend', 'after', 'before', 'attr',
+ 'removeAttr', 'addClass', 'removeClass', 'toggleClass',
+ 'remove', 'css', 'show', 'hide'], function(i, n) {
+ var old = $.fn[n];
+ if (old) {
+ $.fn[n] = function() {
+ var r = old.apply(this, arguments);
+ $.fn.appear.run();
+ return r;
+ }
+ }
+ });
+
+})(jQuery);
\ No newline at end of file
diff --git a/public/static/home/assets/js/jquery.knob.js b/public/static/home/assets/js/jquery.knob.js
new file mode 100644
index 0000000..4949e83
--- /dev/null
+++ b/public/static/home/assets/js/jquery.knob.js
@@ -0,0 +1,801 @@
+/*!jQuery Knob*/
+/**
+ * Downward compatible, touchable dial
+ *
+ * Version: 1.2.10
+ * Requires: jQuery v1.7+
+ *
+ * Copyright (c) 2012 Anthony Terrien
+ * Under MIT License (http://www.opensource.org/licenses/mit-license.php)
+ *
+ * Thanks to vor, eskimoblood, spiffistan, FabrizioC
+ */
+(function (factory) {
+ if (typeof define === 'function' && define.amd) {
+ // AMD. Register as an anonymous module.
+ define(['jquery'], factory);
+ } else {
+ // Browser globals
+ factory(jQuery);
+ }
+}(function ($) {
+
+ /**
+ * Kontrol library
+ */
+ "use strict";
+
+ /**
+ * Definition of globals and core
+ */
+ var k = {}, // kontrol
+ max = Math.max,
+ min = Math.min;
+
+ k.c = {};
+ k.c.d = $(document);
+ k.c.t = function (e) {
+ return e.originalEvent.touches.length - 1;
+ };
+
+ /**
+ * Kontrol Object
+ *
+ * Definition of an abstract UI control
+ *
+ * Each concrete component must call this one.
+ * <code>
+ * k.o.call(this);
+ * </code>
+ */
+ k.o = function () {
+ var s = this;
+
+ this.o = null; // array of options
+ this.$ = null; // jQuery wrapped element
+ this.i = null; // mixed HTMLInputElement or array of HTMLInputElement
+ this.g = null; // deprecated 2D graphics lowgo for 'pre-rendering'
+ this.v = null; // value ; mixed array or integer
+ this.cv = null; // change value ; not commited value
+ this.x = 0; // canvas x position
+ this.y = 0; // canvas y position
+ this.w = 0; // canvas width
+ this.h = 0; // canvas height
+ this.$c = null; // jQuery canvas element
+ this.c = null; // rendered canvas lowgo
+ this.t = 0; // touches index
+ this.isInit = false;
+ this.fgColor = null; // main color
+ this.pColor = null; // previous color
+ this.dH = null; // draw hook
+ this.cH = null; // change hook
+ this.eH = null; // cancel hook
+ this.rH = null; // release hook
+ this.scale = 1; // scale factor
+ this.relative = false;
+ this.relativeWidth = false;
+ this.relativeHeight = false;
+ this.$div = null; // component div
+
+ this.run = function () {
+ var cf = function (e, conf) {
+ var k;
+ for (k in conf) {
+ s.o[k] = conf[k];
+ }
+ s._carve().init();
+ s._configure()
+ ._draw();
+ };
+
+ if (this.$.data('kontroled')) return;
+ this.$.data('kontroled', true);
+
+ this.extend();
+ this.o = $.extend({
+ // Config
+ min: this.$.data('min') !== undefined ? this.$.data('min') : 0,
+ max: this.$.data('max') !== undefined ? this.$.data('max') : 100,
+ stopper: true,
+ readOnly: this.$.data('readonly') || (this.$.attr('readonly') === 'readonly'),
+
+ // UI
+ cursor: this.$.data('cursor') === true && 30
+ || this.$.data('cursor') || 0,
+ thickness: this.$.data('thickness')
+ && Math.max(Math.min(this.$.data('thickness'), 1), 0.01)
+ || 0.35,
+ lineCap: this.$.data('linecap') || 'butt',
+ width: this.$.data('width') || 200,
+ height: this.$.data('height') || 200,
+ displayInput: this.$.data('displayinput') == null || this.$.data('displayinput'),
+ displayPrevious: this.$.data('displayprevious'),
+ fgColor: this.$.data('fgcolor') || '#87CEEB',
+ inputColor: this.$.data('inputcolor'),
+ font: this.$.data('font') || 'Arial',
+ fontWeight: this.$.data('font-weight') || 'bold',
+ inline: false,
+ step: this.$.data('step') || 1,
+ rotation: this.$.data('rotation'),
+
+ // Hooks
+ draw: null, // function () {}
+ change: null, // function (value) {}
+ cancel: null, // function () {}
+ release: null, // function (value) {}
+
+ // Output formatting, allows to add unit: %, ms ...
+ format: function(v) {
+ return v;
+ },
+ parse: function (v) {
+ return parseFloat(v);
+ }
+ }, this.o
+ );
+
+ // finalize options
+ this.o.flip = this.o.rotation === 'anticlockwise' || this.o.rotation === 'acw';
+ if (!this.o.inputColor) {
+ this.o.inputColor = this.o.fgColor;
+ }
+
+ // routing value
+ if (this.$.is('fieldset')) {
+
+ // fieldset = array of integer
+ this.v = {};
+ this.i = this.$.find('input');
+ this.i.each(function(k) {
+ var $this = $(this);
+ s.i[k] = $this;
+ s.v[k] = s.o.parse($this.val());
+
+ $this.bind(
+ 'change blur',
+ function () {
+ var val = {};
+ val[k] = $this.val();
+ s.val(val);
+ }
+ );
+ });
+ this.$.find('legend').remove();
+ } else {
+
+ // input = integer
+ this.i = this.$;
+ this.v = this.o.parse(this.$.val());
+ this.v === '' && (this.v = this.o.min);
+ this.$.bind(
+ 'change blur',
+ function () {
+ s.val(s._validate(s.o.parse(s.$.val())));
+ }
+ );
+
+ }
+
+ !this.o.displayInput && this.$.hide();
+
+ // adds needed DOM elements (canvas, div)
+ this.$c = $(document.createElement('canvas')).attr({
+ width: this.o.width,
+ height: this.o.height
+ });
+
+ // wraps all elements in a div
+ // add to DOM before Canvas init is triggered
+ this.$div = $('<div style="'
+ + (this.o.inline ? 'display:inline;' : '')
+ + 'width:' + this.o.width + 'px;height:' + this.o.height + 'px;'
+ + '"></div>');
+
+ this.$.wrap(this.$div).before(this.$c);
+ this.$div = this.$.parent();
+
+ if (typeof G_vmlCanvasManager !== 'undefined') {
+ G_vmlCanvasManager.initElement(this.$c[0]);
+ }
+
+ this.c = this.$c[0].getlowgo ? this.$c[0].getlowgo('2d') : null;
+
+ if (!this.c) {
+ throw {
+ name: "CanvasNotSupportedException",
+ message: "Canvas not supported. Please use excanvas on IE8.0.",
+ toString: function(){return this.name + ": " + this.message}
+ }
+ }
+
+ // hdpi support
+ this.scale = (window.devicePixelRatio || 1) / (
+ this.c.webkitBackingStorePixelRatio ||
+ this.c.mozBackingStorePixelRatio ||
+ this.c.msBackingStorePixelRatio ||
+ this.c.oBackingStorePixelRatio ||
+ this.c.backingStorePixelRatio || 1
+ );
+
+ // detects relative width / height
+ this.relativeWidth = this.o.width % 1 !== 0
+ && this.o.width.indexOf('%');
+ this.relativeHeight = this.o.height % 1 !== 0
+ && this.o.height.indexOf('%');
+ this.relative = this.relativeWidth || this.relativeHeight;
+
+ // computes size and carves the component
+ this._carve();
+
+ // prepares props for transaction
+ if (this.v instanceof Object) {
+ this.cv = {};
+ this.copy(this.v, this.cv);
+ } else {
+ this.cv = this.v;
+ }
+
+ // binds configure event
+ this.$
+ .bind("configure", cf)
+ .parent()
+ .bind("configure", cf);
+
+ // finalize init
+ this._listen()
+ ._configure()
+ ._xy()
+ .init();
+
+ this.isInit = true;
+
+ this.$.val(this.o.format(this.v));
+ this._draw();
+
+ return this;
+ };
+
+ this._carve = function() {
+ if (this.relative) {
+ var w = this.relativeWidth ?
+ this.$div.parent().width() *
+ parseInt(this.o.width) / 100
+ : this.$div.parent().width(),
+ h = this.relativeHeight ?
+ this.$div.parent().height() *
+ parseInt(this.o.height) / 100
+ : this.$div.parent().height();
+
+ // apply relative
+ this.w = this.h = Math.min(w, h);
+ } else {
+ this.w = this.o.width;
+ this.h = this.o.height;
+ }
+
+ // finalize div
+ this.$div.css({
+ 'width': this.w + 'px',
+ 'height': this.h + 'px'
+ });
+
+ // finalize canvas with computed width
+ this.$c.attr({
+ width: this.w,
+ height: this.h
+ });
+
+ // scaling
+ if (this.scale !== 1) {
+ this.$c[0].width = this.$c[0].width * this.scale;
+ this.$c[0].height = this.$c[0].height * this.scale;
+ this.$c.width(this.w);
+ this.$c.height(this.h);
+ }
+
+ return this;
+ }
+
+ this._draw = function () {
+
+ // canvas pre-rendering
+ var d = true;
+
+ s.g = s.c;
+
+ s.clear();
+
+ s.dH && (d = s.dH());
+
+ d !== false && s.draw();
+ };
+
+ this._touch = function (e) {
+ var touchMove = function (e) {
+ var v = s.xy2val(
+ e.originalEvent.touches[s.t].pageX,
+ e.originalEvent.touches[s.t].pageY
+ );
+
+ if (v == s.cv) return;
+
+ if (s.cH && s.cH(v) === false) return;
+
+ s.change(s._validate(v));
+ s._draw();
+ };
+
+ // get touches index
+ this.t = k.c.t(e);
+
+ // First touch
+ touchMove(e);
+
+ // Touch events listeners
+ k.c.d
+ .bind("touchmove.k", touchMove)
+ .bind(
+ "touchend.k",
+ function () {
+ k.c.d.unbind('touchmove.k touchend.k');
+ s.val(s.cv);
+ }
+ );
+
+ return this;
+ };
+
+ this._mouse = function (e) {
+ var mouseMove = function (e) {
+ var v = s.xy2val(e.pageX, e.pageY);
+
+ if (v == s.cv) return;
+
+ if (s.cH && (s.cH(v) === false)) return;
+
+ s.change(s._validate(v));
+ s._draw();
+ };
+
+ // First click
+ mouseMove(e);
+
+ // Mouse events listeners
+ k.c.d
+ .bind("mousemove.k", mouseMove)
+ .bind(
+ // Escape key cancel current change
+ "keyup.k",
+ function (e) {
+ if (e.keyCode === 27) {
+ k.c.d.unbind("mouseup.k mousemove.k keyup.k");
+
+ if (s.eH && s.eH() === false)
+ return;
+
+ s.cancel();
+ }
+ }
+ )
+ .bind(
+ "mouseup.k",
+ function (e) {
+ k.c.d.unbind('mousemove.k mouseup.k keyup.k');
+ s.val(s.cv);
+ }
+ );
+
+ return this;
+ };
+
+ this._xy = function () {
+ var o = this.$c.offset();
+ this.x = o.left;
+ this.y = o.top;
+
+ return this;
+ };
+
+ this._listen = function () {
+ if (!this.o.readOnly) {
+ this.$c
+ .bind(
+ "mousedown",
+ function (e) {
+ e.preventDefault();
+ s._xy()._mouse(e);
+ }
+ )
+ .bind(
+ "touchstart",
+ function (e) {
+ e.preventDefault();
+ s._xy()._touch(e);
+ }
+ );
+
+ this.listen();
+ } else {
+ this.$.attr('readonly', 'readonly');
+ }
+
+ if (this.relative) {
+ $(window).resize(function() {
+ s._carve().init();
+ s._draw();
+ });
+ }
+
+ return this;
+ };
+
+ this._configure = function () {
+
+ // Hooks
+ if (this.o.draw) this.dH = this.o.draw;
+ if (this.o.change) this.cH = this.o.change;
+ if (this.o.cancel) this.eH = this.o.cancel;
+ if (this.o.release) this.rH = this.o.release;
+
+ if (this.o.displayPrevious) {
+ this.pColor = this.h2rgba(this.o.fgColor, "0.4");
+ this.fgColor = this.h2rgba(this.o.fgColor, "0.6");
+ } else {
+ this.fgColor = this.o.fgColor;
+ }
+
+ return this;
+ };
+
+ this._clear = function () {
+ this.$c[0].width = this.$c[0].width;
+ };
+
+ this._validate = function (v) {
+ return (~~ (((v < 0) ? -0.5 : 0.5) + (v/this.o.step))) * this.o.step;
+ };
+
+ // Abstract methods
+ this.listen = function () {}; // on start, one time
+ this.extend = function () {}; // each time configure triggered
+ this.init = function () {}; // each time configure triggered
+ this.change = function (v) {}; // on change
+ this.val = function (v) {}; // on release
+ this.xy2val = function (x, y) {}; //
+ this.draw = function () {}; // on change / on release
+ this.clear = function () { this._clear(); };
+
+ // Utils
+ this.h2rgba = function (h, a) {
+ var rgb;
+ h = h.substring(1,7)
+ rgb = [
+ parseInt(h.substring(0,2), 16),
+ parseInt(h.substring(2,4), 16),
+ parseInt(h.substring(4,6), 16)
+ ];
+
+ return "rgba(" + rgb[0] + "," + rgb[1] + "," + rgb[2] + "," + a + ")";
+ };
+
+ this.copy = function (f, t) {
+ for (var i in f) {
+ t[i] = f[i];
+ }
+ };
+ };
+
+
+ /**
+ * k.Dial
+ */
+ k.Dial = function () {
+ k.o.call(this);
+
+ this.startAngle = null;
+ this.xy = null;
+ this.radius = null;
+ this.lineWidth = null;
+ this.cursorExt = null;
+ this.w2 = null;
+ this.PI2 = 2*Math.PI;
+
+ this.extend = function () {
+ this.o = $.extend({
+ bgColor: this.$.data('bgcolor') || '#EEEEEE',
+ angleOffset: this.$.data('angleoffset') || 0,
+ angleArc: this.$.data('anglearc') || 360,
+ inline: true
+ }, this.o);
+ };
+
+ this.val = function (v, triggerRelease) {
+ if (null != v) {
+
+ // reverse format
+ v = this.o.parse(v);
+
+ if (triggerRelease !== false
+ && v != this.v
+ && this.rH
+ && this.rH(v) === false) { return; }
+
+ this.cv = this.o.stopper ? max(min(v, this.o.max), this.o.min) : v;
+ this.v = this.cv;
+ this.$.val(this.o.format(this.v));
+ this._draw();
+ } else {
+ return this.v;
+ }
+ };
+
+ this.xy2val = function (x, y) {
+ var a, ret;
+
+ a = Math.atan2(
+ x - (this.x + this.w2),
+ - (y - this.y - this.w2)
+ ) - this.angleOffset;
+
+ if (this.o.flip) {
+ a = this.angleArc - a - this.PI2;
+ }
+
+ if (this.angleArc != this.PI2 && (a < 0) && (a > -0.5)) {
+
+ // if isset angleArc option, set to min if .5 under min
+ a = 0;
+ } else if (a < 0) {
+ a += this.PI2;
+ }
+
+ ret = ~~ (0.5 + (a * (this.o.max - this.o.min) / this.angleArc)) + this.o.min;
+
+ this.o.stopper && (ret = max(min(ret, this.o.max), this.o.min));
+
+ return ret;
+ };
+
+ this.listen = function () {
+
+ // bind MouseWheel
+ var s = this, mwTimerStop,
+ mwTimerRelease,
+ mw = function (e) {
+ e.preventDefault();
+
+ var ori = e.originalEvent,
+ deltaX = ori.detail || ori.wheelDeltaX,
+ deltaY = ori.detail || ori.wheelDeltaY,
+ v = s._validate(s.o.parse(s.$.val()))
+ + (
+ deltaX > 0 || deltaY > 0
+ ? s.o.step
+ : deltaX < 0 || deltaY < 0 ? -s.o.step : 0
+ );
+
+ v = max(min(v, s.o.max), s.o.min);
+
+ s.val(v, false);
+
+ if (s.rH) {
+ // Handle mousewheel stop
+ clearTimeout(mwTimerStop);
+ mwTimerStop = setTimeout(function () {
+ s.rH(v);
+ mwTimerStop = null;
+ }, 100);
+
+ // Handle mousewheel releases
+ if (!mwTimerRelease) {
+ mwTimerRelease = setTimeout(function () {
+ if (mwTimerStop)
+ s.rH(v);
+ mwTimerRelease = null;
+ }, 200);
+ }
+ }
+ },
+ kval,
+ to,
+ m = 1,
+ kv = {
+ 37: -s.o.step,
+ 38: s.o.step,
+ 39: s.o.step,
+ 40: -s.o.step
+ };
+
+ this.$
+ .bind(
+ "keydown",
+ function (e) {
+ var kc = e.keyCode;
+
+ // numpad support
+ if (kc >= 96 && kc <= 105) {
+ kc = e.keyCode = kc - 48;
+ }
+
+ kval = parseInt(String.fromCharCode(kc));
+
+ if (isNaN(kval)) {
+ (kc !== 13) // enter
+ && kc !== 8 // bs
+ && kc !== 9 // tab
+ && kc !== 189 // -
+ && (kc !== 190
+ || s.$.val().match(/\./)) // . allowed once
+ && e.preventDefault();
+
+ // arrows
+ if ($.inArray(kc,[37,38,39,40]) > -1) {
+ e.preventDefault();
+
+ var v = s.o.parse(s.$.val()) + kv[kc] * m;
+ s.o.stopper && (v = max(min(v, s.o.max), s.o.min));
+
+ s.change(v);
+ s._draw();
+
+ // long time keydown speed-up
+ to = window.setTimeout(function () {
+ m *= 2;
+ }, 30);
+ }
+ }
+ }
+ )
+ .bind(
+ "keyup",
+ function (e) {
+ if (isNaN(kval)) {
+ if (to) {
+ window.clearTimeout(to);
+ to = null;
+ m = 1;
+ s.val(s.$.val());
+ }
+ } else {
+ // kval postcond
+ (s.$.val() > s.o.max && s.$.val(s.o.max))
+ || (s.$.val() < s.o.min && s.$.val(s.o.min));
+ }
+ }
+ );
+
+ this.$c.bind("mousewheel DOMMouseScroll", mw);
+ this.$.bind("mousewheel DOMMouseScroll", mw)
+ };
+
+ this.init = function () {
+ if (this.v < this.o.min
+ || this.v > this.o.max) { this.v = this.o.min; }
+
+ this.$.val(this.v);
+ this.w2 = this.w / 2;
+ this.cursorExt = this.o.cursor / 100;
+ this.xy = this.w2 * this.scale;
+ this.lineWidth = this.xy * this.o.thickness;
+ this.lineCap = this.o.lineCap;
+ this.radius = this.xy - this.lineWidth / 2;
+
+ this.o.angleOffset
+ && (this.o.angleOffset = isNaN(this.o.angleOffset) ? 0 : this.o.angleOffset);
+
+ this.o.angleArc
+ && (this.o.angleArc = isNaN(this.o.angleArc) ? this.PI2 : this.o.angleArc);
+
+ // deg to rad
+ this.angleOffset = this.o.angleOffset * Math.PI / 180;
+ this.angleArc = this.o.angleArc * Math.PI / 180;
+
+ // compute start and end angles
+ this.startAngle = 1.5 * Math.PI + this.angleOffset;
+ this.endAngle = 1.5 * Math.PI + this.angleOffset + this.angleArc;
+
+ var s = max(
+ String(Math.abs(this.o.max)).length,
+ String(Math.abs(this.o.min)).length,
+ 2
+ ) + 2;
+
+ this.o.displayInput
+ && this.i.css({
+ 'width' : ((this.w / 2 + 4) >> 0) + 'px',
+ 'height' : ((this.w / 3) >> 0) + 'px',
+ 'position' : 'absolute',
+ 'vertical-align' : 'middle',
+ 'margin-top' : ((this.w / 3) >> 0) + 'px',
+ 'margin-left' : '-' + ((this.w * 3 / 4 + 2) >> 0) + 'px',
+ 'border' : 0,
+ 'background' : 'none',
+ 'font' : this.o.fontWeight + ' ' + ((this.w / s) >> 0) + 'px ' + this.o.font,
+ 'text-align' : 'center',
+ 'color' : this.o.inputColor || this.o.fgColor,
+ 'padding' : '0px',
+ '-webkit-appearance': 'none'
+ }) || this.i.css({
+ 'width': '0px',
+ 'visibility': 'hidden'
+ });
+ };
+
+ this.change = function (v) {
+ this.cv = v;
+ this.$.val(this.o.format(v));
+ };
+
+ this.angle = function (v) {
+ return (v - this.o.min) * this.angleArc / (this.o.max - this.o.min);
+ };
+
+ this.arc = function (v) {
+ var sa, ea;
+ v = this.angle(v);
+ if (this.o.flip) {
+ sa = this.endAngle + 0.00001;
+ ea = sa - v - 0.00001;
+ } else {
+ sa = this.startAngle - 0.00001;
+ ea = sa + v + 0.00001;
+ }
+ this.o.cursor
+ && (sa = ea - this.cursorExt)
+ && (ea = ea + this.cursorExt);
+
+ return {
+ s: sa,
+ e: ea,
+ d: this.o.flip && !this.o.cursor
+ };
+ };
+
+ this.draw = function () {
+ var c = this.g, // lowgo
+ a = this.arc(this.cv), // Arc
+ pa, // Previous arc
+ r = 1;
+
+ c.lineWidth = this.lineWidth;
+ c.lineCap = this.lineCap;
+
+ if (this.o.bgColor !== "none") {
+ c.beginPath();
+ c.strokeStyle = this.o.bgColor;
+ c.arc(this.xy, this.xy, this.radius, this.endAngle - 0.00001, this.startAngle + 0.00001, true);
+ c.stroke();
+ }
+
+ if (this.o.displayPrevious) {
+ pa = this.arc(this.v);
+ c.beginPath();
+ c.strokeStyle = this.pColor;
+ c.arc(this.xy, this.xy, this.radius, pa.s, pa.e, pa.d);
+ c.stroke();
+ r = this.cv == this.v;
+ }
+
+ c.beginPath();
+ c.strokeStyle = r ? this.o.fgColor : this.fgColor ;
+ c.arc(this.xy, this.xy, this.radius, a.s, a.e, a.d);
+ c.stroke();
+ };
+
+ this.cancel = function () {
+ this.val(this.v);
+ };
+ };
+
+ $.fn.dial = $.fn.knob = function (o) {
+ return this.each(
+ function () {
+ var d = new k.Dial();
+ d.o = o;
+ d.$ = $(this);
+ d.run();
+ }
+ ).parent();
+ };
+
+}));
diff --git a/public/static/home/assets/js/jquery.meanmenu.js b/public/static/home/assets/js/jquery.meanmenu.js
new file mode 100644
index 0000000..8c7648e
--- /dev/null
+++ b/public/static/home/assets/js/jquery.meanmenu.js
@@ -0,0 +1,285 @@
+/*!
+* jQuery meanMenu v2.0.8
+* @Copyright (C) 2012-2014 Chris Wharton @ MeanThemes (://github.com/meanthemes/meanMenu)
+*
+*/
+/*
+* 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 SOFTWARE AND DOCUMENTATION IS PROVIDED "AS IS," AND COPYRIGHT
+* HOLDERS MAKE NO REPRESENTATIONS OR WARRANTIES, EXPRESS OR IMPLIED,
+* INCLUDING BUT NOT LIMITED TO, WARRANTIES OF MERCHANTABILITY OR
+* FITNESS FOR ANY PARTICULAR PURPOSE OR THAT THE USE OF THE SOFTWARE
+* OR DOCUMENTATION WILL NOT INFRINGE ANY THIRD PARTY PATENTS,
+* COPYRIGHTS, TRADEMARKS OR OTHER RIGHTS.COPYRIGHT HOLDERS WILL NOT
+* BE LIABLE FOR ANY DIRECT, INDIRECT, SPECIAL OR CONSEQUENTIAL
+* DAMAGES ARISING OUT OF ANY USE OF THE SOFTWARE OR DOCUMENTATION.
+*
+* You should have received a copy of the GNU General Public License
+* along with this program. If not, see <http://gnu.org/licenses/>.
+*
+* Find more information at http://www.meanthemes.com/plugins/meanmenu/
+*
+*/
+(function ($) {
+ "use strict";
+ $.fn.meanmenu = function (options) {
+ var defaults = {
+ meanMenuTarget: jQuery(this), // Target the current HTML markup you wish to replace
+ meanMenuContainer: '.mobile-menu-area .container', // Choose where meanmenu will be placed within the HTML
+ meanMenuClose: "X", // single character you want to represent the close menu button
+ meanMenuCloseSize: "18px", // set font size of close button
+ meanMenuOpen: "<span></span><span></span><span></span>", // text/markup you want when menu is closed
+ meanRevealPosition: "right", // left right or center positions
+ meanRevealPositionDistance: "0", // Tweak the position of the menu
+ meanRevealColour: "", // override CSS colours for the reveal background
+ meanScreenWidth: "767", // set the screen width you want meanmenu to kick in at
+ meanNavPush: "", // set a height here in px, em or % if you want to budge your layout now the navigation is missing.
+ meanShowChildren: true, // true to show children in the menu, false to hide them
+ meanExpandableChildren: true, // true to allow expand/collapse children
+ meanExpand: "+", // single character you want to represent the expand for ULs
+ meanContract: "-", // single character you want to represent the contract for ULs
+ meanRemoveAttrs: false, // true to remove classes and IDs, false to keep them
+ onePage: false, // set to true for one page sites
+ meanDisplay: "block", // override display method for table cell based layouts e.g. table-cell
+ removeElements: "" // set to hide page elements
+ };
+ options = $.extend(defaults, options);
+
+ // get browser width
+ var currentWidth = window.innerWidth || document.documentElement.clientWidth;
+
+ return this.each(function () {
+ var meanMenu = options.meanMenuTarget;
+ var meanContainer = options.meanMenuContainer;
+ var meanMenuClose = options.meanMenuClose;
+ var meanMenuCloseSize = options.meanMenuCloseSize;
+ var meanMenuOpen = options.meanMenuOpen;
+ var meanRevealPosition = options.meanRevealPosition;
+ var meanRevealPositionDistance = options.meanRevealPositionDistance;
+ var meanRevealColour = options.meanRevealColour;
+ var meanScreenWidth = options.meanScreenWidth;
+ var meanNavPush = options.meanNavPush;
+ var meanRevealClass = ".meanmenu-reveal";
+ var meanShowChildren = options.meanShowChildren;
+ var meanExpandableChildren = options.meanExpandableChildren;
+ var meanExpand = options.meanExpand;
+ var meanContract = options.meanContract;
+ var meanRemoveAttrs = options.meanRemoveAttrs;
+ var onePage = options.onePage;
+ var meanDisplay = options.meanDisplay;
+ var removeElements = options.removeElements;
+
+ //detect known mobile/tablet usage
+ var isMobile = false;
+ if ( (navigator.userAgent.match(/iPhone/i)) || (navigator.userAgent.match(/iPod/i)) || (navigator.userAgent.match(/iPad/i)) || (navigator.userAgent.match(/Android/i)) || (navigator.userAgent.match(/Blackberry/i)) || (navigator.userAgent.match(/Windows Phone/i)) ) {
+ isMobile = true;
+ }
+
+ if ( (navigator.userAgent.match(/MSIE 8/i)) || (navigator.userAgent.match(/MSIE 7/i)) ) {
+ // add scrollbar for IE7 & 8 to stop breaking resize function on small content sites
+ jQuery('html').css("overflow-y" , "scroll");
+ }
+
+ var meanRevealPos = "";
+ var meanCentered = function() {
+ if (meanRevealPosition === "center") {
+ var newWidth = window.innerWidth || document.documentElement.clientWidth;
+ var meanCenter = ( (newWidth/2)-22 )+"px";
+ meanRevealPos = "left:" + meanCenter + ";right:auto;";
+
+ if (!isMobile) {
+ jQuery('.meanmenu-reveal').css("left",meanCenter);
+ } else {
+ jQuery('.meanmenu-reveal').animate({
+ left: meanCenter
+ });
+ }
+ }
+ };
+
+ var menuOn = false;
+ var meanMenuExist = false;
+
+
+ if (meanRevealPosition === "right") {
+ meanRevealPos = "right:" + meanRevealPositionDistance + ";left:auto;";
+ }
+ if (meanRevealPosition === "left") {
+ meanRevealPos = "left:" + meanRevealPositionDistance + ";right:auto;";
+ }
+ // run center function
+ meanCentered();
+
+ // set all styles for mean-reveal
+ var $navreveal = "";
+
+ var meanInner = function() {
+ // get last class name
+ if (jQuery($navreveal).is(".meanmenu-reveal.meanclose")) {
+ $navreveal.html(meanMenuClose);
+ } else {
+ $navreveal.html(meanMenuOpen);
+ }
+ };
+
+ // re-instate original nav (and call this on window.width functions)
+ var meanOriginal = function() {
+ jQuery('.mean-bar,.mean-push').remove();
+ jQuery(meanContainer).removeClass("mean-container");
+ jQuery(meanMenu).css('display', meanDisplay);
+ menuOn = false;
+ meanMenuExist = false;
+ jQuery(removeElements).removeClass('mean-remove');
+ };
+
+ // navigation reveal
+ var showMeanMenu = function() {
+ var meanStyles = "background:"+meanRevealColour+";color:"+meanRevealColour+";"+meanRevealPos;
+ if (currentWidth <= meanScreenWidth) {
+ jQuery(removeElements).addClass('mean-remove');
+ meanMenuExist = true;
+ // add class to body so we don't need to worry about media queries here, all CSS is wrapped in '.mean-container'
+ jQuery(meanContainer).addClass("mean-container");
+ jQuery('.mean-container').prepend('<div class="mean-bar"><a href="#nav" class="meanmenu-reveal" style="'+meanStyles+'">Show Navigation</a><nav class="mean-nav"></nav></div>');
+
+ //push meanMenu navigation into .mean-nav
+ var meanMenuContents = jQuery(meanMenu).html();
+ jQuery('.mean-nav').html(meanMenuContents);
+
+ // remove all classes from EVERYTHING inside meanmenu nav
+ if(meanRemoveAttrs) {
+ jQuery('nav.mean-nav ul, nav.mean-nav ul *').each(function() {
+ // First check if this has mean-remove class
+ if (jQuery(this).is('.mean-remove')) {
+ jQuery(this).attr('class', 'mean-remove');
+ } else {
+ jQuery(this).removeAttr("class");
+ }
+ jQuery(this).removeAttr("id");
+ });
+ }
+
+ // push in a holder div (this can be used if removal of nav is causing layout issues)
+ jQuery(meanMenu).before('<div class="mean-push" />');
+ jQuery('.mean-push').css("margin-top",meanNavPush);
+
+ // hide current navigation and reveal mean nav link
+ jQuery(meanMenu).hide();
+ jQuery(".meanmenu-reveal").show();
+
+ // turn 'X' on or off
+ jQuery(meanRevealClass).html(meanMenuOpen);
+ $navreveal = jQuery(meanRevealClass);
+
+ //hide mean-nav ul
+ jQuery('.mean-nav ul').hide();
+
+ // hide sub nav
+ if(meanShowChildren) {
+ // allow expandable sub nav(s)
+ if(meanExpandableChildren){
+ jQuery('.mean-nav ul ul').each(function() {
+ if(jQuery(this).children().length){
+ jQuery(this,'li:first').parent().append('<a class="mean-expand" href="#" style="font-size: '+ meanMenuCloseSize +'">'+ meanExpand +'</a>');
+ }
+ });
+ jQuery('.mean-expand').on("click",function(e){
+ e.preventDefault();
+ if (jQuery(this).hasClass("mean-clicked")) {
+ jQuery(this).text(meanExpand);
+ jQuery(this).prev('ul').slideUp(300, function(){});
+ } else {
+ jQuery(this).text(meanContract);
+ jQuery(this).prev('ul').slideDown(300, function(){});
+ }
+ jQuery(this).toggleClass("mean-clicked");
+ });
+ } else {
+ jQuery('.mean-nav ul ul').show();
+ }
+ } else {
+ jQuery('.mean-nav ul ul').hide();
+ }
+
+ // add last class to tidy up borders
+ jQuery('.mean-nav ul li').last().addClass('mean-last');
+ $navreveal.removeClass("meanclose");
+ jQuery($navreveal).click(function(e){
+ e.preventDefault();
+ if( menuOn === false ) {
+ $navreveal.css("text-align", "center");
+ $navreveal.css("text-indent", "0");
+ $navreveal.css("font-size", meanMenuCloseSize);
+ jQuery('.mean-nav ul:first').slideDown();
+ menuOn = true;
+ } else {
+ jQuery('.mean-nav ul:first').slideUp();
+ menuOn = false;
+ }
+ $navreveal.toggleClass("meanclose");
+ meanInner();
+ jQuery(removeElements).addClass('mean-remove');
+ });
+
+ // for one page websites, reset all variables...
+ if ( onePage ) {
+ jQuery('.mean-nav ul > li > a:first-child').on( "click" , function () {
+ jQuery('.mean-nav ul:first').slideUp();
+ menuOn = false;
+ jQuery($navreveal).toggleClass("meanclose").html(meanMenuOpen);
+ });
+ }
+ } else {
+ meanOriginal();
+ }
+ };
+
+ if (!isMobile) {
+ // reset menu on resize above meanScreenWidth
+ jQuery(window).resize(function () {
+ currentWidth = window.innerWidth || document.documentElement.clientWidth;
+ if (currentWidth > meanScreenWidth) {
+ meanOriginal();
+ } else {
+ meanOriginal();
+ }
+ if (currentWidth <= meanScreenWidth) {
+ showMeanMenu();
+ meanCentered();
+ } else {
+ meanOriginal();
+ }
+ });
+ }
+
+ jQuery(window).resize(function () {
+ // get browser width
+ currentWidth = window.innerWidth || document.documentElement.clientWidth;
+
+ if (!isMobile) {
+ meanOriginal();
+ if (currentWidth <= meanScreenWidth) {
+ showMeanMenu();
+ meanCentered();
+ }
+ } else {
+ meanCentered();
+ if (currentWidth <= meanScreenWidth) {
+ if (meanMenuExist === false) {
+ showMeanMenu();
+ }
+ } else {
+ meanOriginal();
+ }
+ }
+ });
+
+ // run main menuMenu function on load
+ showMeanMenu();
+ });
+ };
+})(jQuery);
diff --git a/public/static/home/assets/js/jquery.nivo.slider.pack.js b/public/static/home/assets/js/jquery.nivo.slider.pack.js
new file mode 100644
index 0000000..f18e2f9
--- /dev/null
+++ b/public/static/home/assets/js/jquery.nivo.slider.pack.js
@@ -0,0 +1,10 @@
+/*
+ * jQuery Nivo Slider v3.2
+ * http://nivo.dev7studios.com
+ *
+ * Copyright 2012, Dev7studios
+ * Free to use and abuse under the MIT license.
+ * http://www.opensource.org/licenses/mit-license.php
+ */
+
+(function(e){var t=function(t,n){var r=e.extend({},e.fn.nivoSlider.defaults,n);var i={currentSlide:0,currentImage:"",totalSlides:0,running:false,paused:false,stop:false,controlNavEl:false};var s=e(t);s.data("nivo:vars",i).addClass("nivoSlider");var o=s.children();o.each(function(){var t=e(this);var n="";if(!t.is("img")){if(t.is("a")){t.addClass("nivo-imageLink");n=t}t=t.find("img:first")}var r=r===0?t.attr("width"):t.width(),s=s===0?t.attr("height"):t.height();if(n!==""){n.css("display","none")}t.css("display","none");i.totalSlides++});if(r.randomStart){r.startSlide=Math.floor(Math.random()*i.totalSlides)}if(r.startSlide>0){if(r.startSlide>=i.totalSlides){r.startSlide=i.totalSlides-1}i.currentSlide=r.startSlide}if(e(o[i.currentSlide]).is("img")){i.currentImage=e(o[i.currentSlide])}else{i.currentImage=e(o[i.currentSlide]).find("img:first")}if(e(o[i.currentSlide]).is("a")){e(o[i.currentSlide]).css("display","block")}var u=e("<img/>").addClass("nivo-main-image");u.attr("src",i.currentImage.attr("src")).show();s.append(u);e(window).resize(function(){s.children("img").width(s.width());u.attr("src",i.currentImage.attr("src"));u.stop().height("auto");e(".nivo-slice").remove();e(".nivo-box").remove()});s.append(e('<div class="nivo-caption"></div>'));var a=function(t){var n=e(".nivo-caption",s);if(i.currentImage.attr("title")!=""&&i.currentImage.attr("title")!=undefined){var r=i.currentImage.attr("title");if(r.substr(0,1)=="#")r=e(r).html();if(n.css("display")=="block"){setTimeout(function(){n.html(r)},t.animSpeed)}else{n.html(r);n.stop().fadeIn(t.animSpeed)}}else{n.stop().fadeOut(t.animSpeed)}};a(r);var f=0;if(!r.manualAdvance&&o.length>1){f=setInterval(function(){d(s,o,r,false)},r.pauseTime)}if(r.directionNav){s.append('<div class="nivo-directionNav"><a class="nivo-prevNav">'+r.prevText+'</a><a class="nivo-nextNav">'+r.nextText+"</a></div>");e(s).on("click","a.nivo-prevNav",function(){if(i.running){return false}clearInterval(f);f="";i.currentSlide-=2;d(s,o,r,"prev")});e(s).on("click","a.nivo-nextNav",function(){if(i.running){return false}clearInterval(f);f="";d(s,o,r,"next")})}if(r.controlNav){i.controlNavEl=e('<div class="nivo-controlNav"></div>');s.after(i.controlNavEl);for(var l=0;l<o.length;l++){if(r.controlNavThumbs){i.controlNavEl.addClass("nivo-thumbs-enabled");var c=o.eq(l);if(!c.is("img")){c=c.find("img:first")}if(c.attr("data-thumb"))i.controlNavEl.append('<a class="nivo-control" rel="'+l+'"><img src="'+c.attr("data-thumb")+'" alt="" /></a>')}else{i.controlNavEl.append('<a class="nivo-control" rel="'+l+'">'+(l+1)+"</a>")}}e("a:eq("+i.currentSlide+")",i.controlNavEl).addClass("active");e("a",i.controlNavEl).bind("click",function(){if(i.running)return false;if(e(this).hasClass("active"))return false;clearInterval(f);f="";u.attr("src",i.currentImage.attr("src"));i.currentSlide=e(this).attr("rel")-1;d(s,o,r,"control")})}if(r.pauseOnHover){s.hover(function(){i.paused=true;clearInterval(f);f=""},function(){i.paused=false;if(f===""&&!r.manualAdvance){f=setInterval(function(){d(s,o,r,false)},r.pauseTime)}})}s.bind("nivo:animFinished",function(){u.attr("src",i.currentImage.attr("src"));i.running=false;e(o).each(function(){if(e(this).is("a")){e(this).css("display","none")}});if(e(o[i.currentSlide]).is("a")){e(o[i.currentSlide]).css("display","block")}if(f===""&&!i.paused&&!r.manualAdvance){f=setInterval(function(){d(s,o,r,false)},r.pauseTime)}r.afterChange.call(this)});var h=function(t,n,r){if(e(r.currentImage).parent().is("a"))e(r.currentImage).parent().css("display","block");e('img[src="'+r.currentImage.attr("src")+'"]',t).not(".nivo-main-image,.nivo-control img").width(t.width()).css("visibility","hidden").show();var i=e('img[src="'+r.currentImage.attr("src")+'"]',t).not(".nivo-main-image,.nivo-control img").parent().is("a")?e('img[src="'+r.currentImage.attr("src")+'"]',t).not(".nivo-main-image,.nivo-control img").parent().height():e('img[src="'+r.currentImage.attr("src")+'"]',t).not(".nivo-main-image,.nivo-control img").height();for(var s=0;s<n.slices;s++){var o=Math.round(t.width()/n.slices);if(s===n.slices-1){t.append(e('<div class="nivo-slice" name="'+s+'"><img src="'+r.currentImage.attr("src")+'" style="position:absolute; width:'+t.width()+"px; height:auto; display:block !important; top:0; left:-"+(o+s*o-o)+'px;" /></div>').css({left:o*s+"px",width:t.width()-o*s+"px",height:i+"px",opacity:"0",overflow:"hidden"}))}else{t.append(e('<div class="nivo-slice" name="'+s+'"><img src="'+r.currentImage.attr("src")+'" style="position:absolute; width:'+t.width()+"px; height:auto; display:block !important; top:0; left:-"+(o+s*o-o)+'px;" /></div>').css({left:o*s+"px",width:o+"px",height:i+"px",opacity:"0",overflow:"hidden"}))}}e(".nivo-slice",t).height(i);u.stop().animate({height:e(r.currentImage).height()},n.animSpeed)};var p=function(t,n,r){if(e(r.currentImage).parent().is("a"))e(r.currentImage).parent().css("display","block");e('img[src="'+r.currentImage.attr("src")+'"]',t).not(".nivo-main-image,.nivo-control img").width(t.width()).css("visibility","hidden").show();var i=Math.round(t.width()/n.boxCols),s=Math.round(e('img[src="'+r.currentImage.attr("src")+'"]',t).not(".nivo-main-image,.nivo-control img").height()/n.boxRows);for(var o=0;o<n.boxRows;o++){for(var a=0;a<n.boxCols;a++){if(a===n.boxCols-1){t.append(e('<div class="nivo-box" name="'+a+'" rel="'+o+'"><img src="'+r.currentImage.attr("src")+'" style="position:absolute; width:'+t.width()+"px; height:auto; display:block; top:-"+s*o+"px; left:-"+i*a+'px;" /></div>').css({opacity:0,left:i*a+"px",top:s*o+"px",width:t.width()-i*a+"px"}));e('.nivo-box[name="'+a+'"]',t).height(e('.nivo-box[name="'+a+'"] img',t).height()+"px")}else{t.append(e('<div class="nivo-box" name="'+a+'" rel="'+o+'"><img src="'+r.currentImage.attr("src")+'" style="position:absolute; width:'+t.width()+"px; height:auto; display:block; top:-"+s*o+"px; left:-"+i*a+'px;" /></div>').css({opacity:0,left:i*a+"px",top:s*o+"px",width:i+"px"}));e('.nivo-box[name="'+a+'"]',t).height(e('.nivo-box[name="'+a+'"] img',t).height()+"px")}}}u.stop().animate({height:e(r.currentImage).height()},n.animSpeed)};var d=function(t,n,r,i){var s=t.data("nivo:vars");if(s&&s.currentSlide===s.totalSlides-1){r.lastSlide.call(this)}if((!s||s.stop)&&!i){return false}r.beforeChange.call(this);if(!i){u.attr("src",s.currentImage.attr("src"))}else{if(i==="prev"){u.attr("src",s.currentImage.attr("src"))}if(i==="next"){u.attr("src",s.currentImage.attr("src"))}}s.currentSlide++;if(s.currentSlide===s.totalSlides){s.currentSlide=0;r.slideshowEnd.call(this)}if(s.currentSlide<0){s.currentSlide=s.totalSlides-1}if(e(n[s.currentSlide]).is("img")){s.currentImage=e(n[s.currentSlide])}else{s.currentImage=e(n[s.currentSlide]).find("img:first")}if(r.controlNav){e("a",s.controlNavEl).removeClass("active");e("a:eq("+s.currentSlide+")",s.controlNavEl).addClass("active")}a(r);e(".nivo-slice",t).remove();e(".nivo-box",t).remove();var o=r.effect,f="";if(r.effect==="random"){f=new Array("sliceDownRight","sliceDownLeft","sliceUpRight","sliceUpLeft","sliceUpDown","sliceUpDownLeft","fold","fade","boxRandom","boxRain","boxRainReverse","boxRainGrow","boxRainGrowReverse");o=f[Math.floor(Math.random()*(f.length+1))];if(o===undefined){o="fade"}}if(r.effect.indexOf(",")!==-1){f=r.effect.split(",");o=f[Math.floor(Math.random()*f.length)];if(o===undefined){o="fade"}}if(s.currentImage.attr("data-transition")){o=s.currentImage.attr("data-transition")}s.running=true;var l=0,c=0,d="",m="",g="",y="";if(o==="sliceDown"||o==="sliceDownRight"||o==="sliceDownLeft"){h(t,r,s);l=0;c=0;d=e(".nivo-slice",t);if(o==="sliceDownLeft"){d=e(".nivo-slice",t)._reverse()}d.each(function(){var n=e(this);n.css({top:"0px"});if(c===r.slices-1){setTimeout(function(){n.animate({opacity:"1.0"},r.animSpeed,"",function(){t.trigger("nivo:animFinished")})},100+l)}else{setTimeout(function(){n.animate({opacity:"1.0"},r.animSpeed)},100+l)}l+=50;c++})}else if(o==="sliceUp"||o==="sliceUpRight"||o==="sliceUpLeft"){h(t,r,s);l=0;c=0;d=e(".nivo-slice",t);if(o==="sliceUpLeft"){d=e(".nivo-slice",t)._reverse()}d.each(function(){var n=e(this);n.css({bottom:"0px"});if(c===r.slices-1){setTimeout(function(){n.animate({opacity:"1.0"},r.animSpeed,"",function(){t.trigger("nivo:animFinished")})},100+l)}else{setTimeout(function(){n.animate({opacity:"1.0"},r.animSpeed)},100+l)}l+=50;c++})}else if(o==="sliceUpDown"||o==="sliceUpDownRight"||o==="sliceUpDownLeft"){h(t,r,s);l=0;c=0;var b=0;d=e(".nivo-slice",t);if(o==="sliceUpDownLeft"){d=e(".nivo-slice",t)._reverse()}d.each(function(){var n=e(this);if(c===0){n.css("top","0px");c++}else{n.css("bottom","0px");c=0}if(b===r.slices-1){setTimeout(function(){n.animate({opacity:"1.0"},r.animSpeed,"",function(){t.trigger("nivo:animFinished")})},100+l)}else{setTimeout(function(){n.animate({opacity:"1.0"},r.animSpeed)},100+l)}l+=50;b++})}else if(o==="fold"){h(t,r,s);l=0;c=0;e(".nivo-slice",t).each(function(){var n=e(this);var i=n.width();n.css({top:"0px",width:"0px"});if(c===r.slices-1){setTimeout(function(){n.animate({width:i,opacity:"1.0"},r.animSpeed,"",function(){t.trigger("nivo:animFinished")})},100+l)}else{setTimeout(function(){n.animate({width:i,opacity:"1.0"},r.animSpeed)},100+l)}l+=50;c++})}else if(o==="fade"){h(t,r,s);m=e(".nivo-slice:first",t);m.css({width:t.width()+"px"});m.animate({opacity:"1.0"},r.animSpeed*2,"",function(){t.trigger("nivo:animFinished")})}else if(o==="slideInRight"){h(t,r,s);m=e(".nivo-slice:first",t);m.css({width:"0px",opacity:"1"});m.animate({width:t.width()+"px"},r.animSpeed*2,"",function(){t.trigger("nivo:animFinished")})}else if(o==="slideInLeft"){h(t,r,s);m=e(".nivo-slice:first",t);m.css({width:"0px",opacity:"1",left:"",right:"0px"});m.animate({width:t.width()+"px"},r.animSpeed*2,"",function(){m.css({left:"0px",right:""});t.trigger("nivo:animFinished")})}else if(o==="boxRandom"){p(t,r,s);g=r.boxCols*r.boxRows;c=0;l=0;y=v(e(".nivo-box",t));y.each(function(){var n=e(this);if(c===g-1){setTimeout(function(){n.animate({opacity:"1"},r.animSpeed,"",function(){t.trigger("nivo:animFinished")})},100+l)}else{setTimeout(function(){n.animate({opacity:"1"},r.animSpeed)},100+l)}l+=20;c++})}else if(o==="boxRain"||o==="boxRainReverse"||o==="boxRainGrow"||o==="boxRainGrowReverse"){p(t,r,s);g=r.boxCols*r.boxRows;c=0;l=0;var w=0;var E=0;var S=[];S[w]=[];y=e(".nivo-box",t);if(o==="boxRainReverse"||o==="boxRainGrowReverse"){y=e(".nivo-box",t)._reverse()}y.each(function(){S[w][E]=e(this);E++;if(E===r.boxCols){w++;E=0;S[w]=[]}});for(var x=0;x<r.boxCols*2;x++){var T=x;for(var N=0;N<r.boxRows;N++){if(T>=0&&T<r.boxCols){(function(n,i,s,u,a){var f=e(S[n][i]);var l=f.width();var c=f.height();if(o==="boxRainGrow"||o==="boxRainGrowReverse"){f.width(0).height(0)}if(u===a-1){setTimeout(function(){f.animate({opacity:"1",width:l,height:c},r.animSpeed/1.3,"",function(){t.trigger("nivo:animFinished")})},100+s)}else{setTimeout(function(){f.animate({opacity:"1",width:l,height:c},r.animSpeed/1.3)},100+s)}})(N,T,l,c,g);c++}T--}l+=100}}};var v=function(e){for(var t,n,r=e.length;r;t=parseInt(Math.random()*r,10),n=e[--r],e[r]=e[t],e[t]=n);return e};var m=function(e){if(this.console&&typeof console.log!=="undefined"){console.log(e)}};this.stop=function(){if(!e(t).data("nivo:vars").stop){e(t).data("nivo:vars").stop=true;m("Stop Slider")}};this.start=function(){if(e(t).data("nivo:vars").stop){e(t).data("nivo:vars").stop=false;m("Start Slider")}};r.afterLoad.call(this);return this};e.fn.nivoSlider=function(n){return this.each(function(r,i){var s=e(this);if(s.data("nivoslider")){return s.data("nivoslider")}var o=new t(this,n);s.data("nivoslider",o)})};e.fn.nivoSlider.defaults={effect:"random",slices:15,boxCols:8,boxRows:4,animSpeed:500,pauseTime:3e3,startSlide:0,directionNav:true,controlNav:true,controlNavThumbs:false,pauseOnHover:true,manualAdvance:false,prevText:"Prev",nextText:"Next",randomStart:false,beforeChange:function(){},afterChange:function(){},slideshowEnd:function(){},lastSlide:function(){},afterLoad:function(){}};e.fn._reverse=[].reverse})(jQuery)
\ No newline at end of file
diff --git a/public/static/home/assets/js/jquery.waitforimages.js b/public/static/home/assets/js/jquery.waitforimages.js
new file mode 100644
index 0000000..b5f5dd5
--- /dev/null
+++ b/public/static/home/assets/js/jquery.waitforimages.js
@@ -0,0 +1,216 @@
+;(function (factory) {
+ if (typeof define === 'function' && define.amd) {
+ // AMD. Register as an anonymous module.
+ define(['jquery'], factory);
+ } else if (typeof exports === 'object') {
+ // CommonJS / nodejs module
+ module.exports = factory(require('jquery'));
+ } else {
+ // Browser globals
+ factory(jQuery);
+ }
+}(function ($) {
+ // Namespace all events.
+ var eventNamespace = 'waitForImages';
+
+ // CSS properties which contain references to images.
+ $.waitForImages = {
+ hasImageProperties: [
+ 'backgroundImage',
+ 'listStyleImage',
+ 'borderImage',
+ 'borderCornerImage',
+ 'cursor'
+ ],
+ hasImageAttributes: ['srcset']
+ };
+
+ // Custom selector to find all `img` elements with a valid `src` attribute.
+ $.expr[':']['has-src'] = function (obj) {
+ // Ensure we are dealing with an `img` element with a valid
+ // `src` attribute.
+ return $(obj).is('img[src][src!=""]');
+ };
+
+ // Custom selector to find images which are not already cached by the
+ // browser.
+ $.expr[':'].uncached = function (obj) {
+ // Ensure we are dealing with an `img` element with a valid
+ // `src` attribute.
+ if (!$(obj).is(':has-src')) {
+ return false;
+ }
+
+ return !obj.complete;
+ };
+
+ $.fn.waitForImages = function () {
+
+ var allImgsLength = 0;
+ var allImgsLoaded = 0;
+ var deferred = $.Deferred();
+
+ var finishedCallback;
+ var eachCallback;
+ var waitForAll;
+
+ // Handle options object (if passed).
+ if ($.isPlainObject(arguments[0])) {
+
+ waitForAll = arguments[0].waitForAll;
+ eachCallback = arguments[0].each;
+ finishedCallback = arguments[0].finished;
+
+ } else {
+
+ // Handle if using deferred object and only one param was passed in.
+ if (arguments.length === 1 && $.type(arguments[0]) === 'boolean') {
+ waitForAll = arguments[0];
+ } else {
+ finishedCallback = arguments[0];
+ eachCallback = arguments[1];
+ waitForAll = arguments[2];
+ }
+
+ }
+
+ // Handle missing callbacks.
+ finishedCallback = finishedCallback || $.noop;
+ eachCallback = eachCallback || $.noop;
+
+ // Convert waitForAll to Boolean
+ waitForAll = !! waitForAll;
+
+ // Ensure callbacks are functions.
+ if (!$.isFunction(finishedCallback) || !$.isFunction(eachCallback)) {
+ throw new TypeError('An invalid callback was supplied.');
+ }
+
+ this.each(function () {
+ // Build a list of all imgs, dependent on what images will
+ // be considered.
+ var obj = $(this);
+ var allImgs = [];
+ // CSS properties which may contain an image.
+ var hasImgProperties = $.waitForImages.hasImageProperties || [];
+ // Element attributes which may contain an image.
+ var hasImageAttributes = $.waitForImages.hasImageAttributes || [];
+ // To match `url()` references.
+ // Spec: http://www.w3.org/TR/CSS2/syndata.html#value-def-uri
+ var matchUrl = /url\(\s*(['"]?)(.*?)\1\s*\)/g;
+
+ if (waitForAll) {
+
+ // Get all elements (including the original), as any one of
+ // them could have a background image.
+ obj.find('*').addBack().each(function () {
+ var element = $(this);
+
+ // If an `img` element, add it. But keep iterating in
+ // case it has a background image too.
+ if (element.is('img:has-src') &&
+ !element.is('[srcset]')) {
+ allImgs.push({
+ src: element.attr('src'),
+ element: element[0]
+ });
+ }
+
+ $.each(hasImgProperties, function (i, property) {
+ var propertyValue = element.css(property);
+ var match;
+
+ // If it doesn't contain this property, skip.
+ if (!propertyValue) {
+ return true;
+ }
+
+ // Get all url() of this element.
+ while (match = matchUrl.exec(propertyValue)) {
+ allImgs.push({
+ src: match[2],
+ element: element[0]
+ });
+ }
+ });
+
+ $.each(hasImageAttributes, function (i, attribute) {
+ var attributeValue = element.attr(attribute);
+ var attributeValues;
+
+ // If it doesn't contain this property, skip.
+ if (!attributeValue) {
+ return true;
+ }
+
+ allImgs.push({
+ src: element.attr('src'),
+ srcset: element.attr('srcset'),
+ element: element[0]
+ });
+ });
+ });
+ } else {
+ // For images only, the task is simpler.
+ obj.find('img:has-src')
+ .each(function () {
+ allImgs.push({
+ src: this.src,
+ element: this
+ });
+ });
+ }
+
+ allImgsLength = allImgs.length;
+ allImgsLoaded = 0;
+
+ // If no images found, don't bother.
+ if (allImgsLength === 0) {
+ finishedCallback.call(obj[0]);
+ deferred.resolveWith(obj[0]);
+ }
+
+ $.each(allImgs, function (i, img) {
+
+ var image = new Image();
+ var events =
+ 'load.' + eventNamespace + ' error.' + eventNamespace;
+
+ // Handle the image loading and error with the same callback.
+ $(image).one(events, function me (event) {
+ // If an error occurred with loading the image, set the
+ // third argument accordingly.
+ var eachArguments = [
+ allImgsLoaded,
+ allImgsLength,
+ event.type == 'load'
+ ];
+ allImgsLoaded++;
+
+ eachCallback.apply(img.element, eachArguments);
+ deferred.notifyWith(img.element, eachArguments);
+
+ // Unbind the event listeners. I use this in addition to
+ // `one` as one of those events won't be called (either
+ // 'load' or 'error' will be called).
+ $(this).off(events, me);
+
+ if (allImgsLoaded == allImgsLength) {
+ finishedCallback.call(obj[0]);
+ deferred.resolveWith(obj[0]);
+ return false;
+ }
+
+ });
+
+ if (img.srcset) {
+ image.srcset = img.srcset;
+ }
+ image.src = img.src;
+ });
+ });
+
+ return deferred.promise();
+
+ };
+}));
diff --git a/public/static/home/assets/js/map.js b/public/static/home/assets/js/map.js
new file mode 100644
index 0000000..73fef96
--- /dev/null
+++ b/public/static/home/assets/js/map.js
@@ -0,0 +1,2417 @@
+"use strict";
+(function(root, factory) {
+ if(typeof exports === 'object') {
+ module.exports = factory();
+ }
+ else if(typeof define === 'function' && define.amd) {
+ define(['jquery', 'googlemaps!'], factory);
+ }
+ else {
+ root.GMaps = factory();
+ }
+
+
+}(this, function() {
+
+/*!
+ * GMaps.js v0.4.25
+ * http://hpneo.github.com/gmaps/
+ *
+ * Copyright 2017, Gustavo Leon
+ * Released under the MIT License.
+ */
+
+var extend_object = function(obj, new_obj) {
+ var name;
+
+ if (obj === new_obj) {
+ return obj;
+ }
+
+ for (name in new_obj) {
+ if (new_obj[name] !== undefined) {
+ obj[name] = new_obj[name];
+ }
+ }
+
+ return obj;
+};
+
+var replace_object = function(obj, replace) {
+ var name;
+
+ if (obj === replace) {
+ return obj;
+ }
+
+ for (name in replace) {
+ if (obj[name] != undefined) {
+ obj[name] = replace[name];
+ }
+ }
+
+ return obj;
+};
+
+var array_map = function(array, callback) {
+ var original_callback_params = Array.prototype.slice.call(arguments, 2),
+ array_return = [],
+ array_length = array.length,
+ i;
+
+ if (Array.prototype.map && array.map === Array.prototype.map) {
+ array_return = Array.prototype.map.call(array, function(item) {
+ var callback_params = original_callback_params.slice(0);
+ callback_params.splice(0, 0, item);
+
+ return callback.apply(this, callback_params);
+ });
+ }
+ else {
+ for (i = 0; i < array_length; i++) {
+ callback_params = original_callback_params;
+ callback_params.splice(0, 0, array[i]);
+ array_return.push(callback.apply(this, callback_params));
+ }
+ }
+
+ return array_return;
+};
+
+var array_flat = function(array) {
+ var new_array = [],
+ i;
+
+ for (i = 0; i < array.length; i++) {
+ new_array = new_array.concat(array[i]);
+ }
+
+ return new_array;
+};
+
+var coordsToLatLngs = function(coords, useGeoJSON) {
+ var first_coord = coords[0],
+ second_coord = coords[1];
+
+ if (useGeoJSON) {
+ first_coord = coords[1];
+ second_coord = coords[0];
+ }
+
+ return new google.maps.LatLng(first_coord, second_coord);
+};
+
+var arrayToLatLng = function(coords, useGeoJSON) {
+ var i;
+
+ for (i = 0; i < coords.length; i++) {
+ if (!(coords[i] instanceof google.maps.LatLng)) {
+ if (coords[i].length > 0 && typeof(coords[i][0]) === "object") {
+ coords[i] = arrayToLatLng(coords[i], useGeoJSON);
+ }
+ else {
+ coords[i] = coordsToLatLngs(coords[i], useGeoJSON);
+ }
+ }
+ }
+
+ return coords;
+};
+
+var getElementsByClassName = function (class_name, lowgo) {
+ var element,
+ _class = class_name.replace('.', '');
+
+ if ('jQuery' in this && lowgo) {
+ element = $("." + _class, lowgo)[0];
+ } else {
+ element = document.getElementsByClassName(_class)[0];
+ }
+ return element;
+
+};
+
+var getElementById = function(id, lowgo) {
+ var element,
+ id = id.replace('#', '');
+
+ if ('jQuery' in window && lowgo) {
+ element = $('#' + id, lowgo)[0];
+ } else {
+ element = document.getElementById(id);
+ };
+
+ return element;
+};
+
+var findAbsolutePosition = function(obj) {
+ var curleft = 0,
+ curtop = 0;
+
+ if (obj.getBoundingClientRect) {
+ var rect = obj.getBoundingClientRect();
+ var sx = -(window.scrollX ? window.scrollX : window.pageXOffset);
+ var sy = -(window.scrollY ? window.scrollY : window.pageYOffset);
+
+ return [(rect.left - sx), (rect.top - sy)];
+ }
+
+ if (obj.offsetParent) {
+ do {
+ curleft += obj.offsetLeft;
+ curtop += obj.offsetTop;
+ } while (obj = obj.offsetParent);
+ }
+
+ return [curleft, curtop];
+};
+
+var GMaps = (function(global) {
+ "use strict";
+
+ var doc = document;
+ /**
+ * Creates a new GMaps instance, including a Google Maps map.
+ * @class GMaps
+ * @constructs
+ * @param {object} options - `options` accepts all the [MapOptions](://developers.google.com/maps/documentation/javascript/reference#MapOptions) and [events](://developers.google.com/maps/documentation/javascript/reference#Map) listed in the Google Maps API. Also accepts:
+ * * `lat` (number): Latitude of the map's center
+ * * `lng` (number): Longitude of the map's center
+ * * `el` (string or HTMLElement): container where the map will be rendered
+ * * `markerClusterer` (function): A function to create a marker cluster. You can use MarkerClusterer or MarkerClustererPlus.
+ */
+ var GMaps = function(options) {
+
+ if (!(typeof window.google === 'object' && window.google.maps)) {
+ if (typeof window.console === 'object' && window.console.error) {
+ console.error('Google Maps API is required. Please register the following JavaScript library ://maps.googleapis.com/maps/api/js.');
+ }
+
+ return function() {};
+ }
+
+ if (!this) return new GMaps(options);
+
+ options.zoom = options.zoom || 15;
+ options.mapType = options.mapType || 'roadmap';
+
+ var valueOrDefault = function(value, defaultValue) {
+ return value === undefined ? defaultValue : value;
+ };
+
+ var self = this,
+ i,
+ events_that_hide_lowgo_menu = [
+ 'bounds_changed', 'center_changed', 'click', 'dblclick', 'drag',
+ 'dragend', 'dragstart', 'idle', 'maptypeid_changed', 'projection_changed',
+ 'resize', 'tilesloaded', 'zoom_changed'
+ ],
+ events_that_doesnt_hide_lowgo_menu = ['mousemove', 'mouseout', 'mouseover'],
+ options_to_be_deleted = ['el', 'lat', 'lng', 'mapType', 'width', 'height', 'markerClusterer', 'enableNewStyle'],
+ identifier = options.el || options.div,
+ markerClustererFunction = options.markerClusterer,
+ mapType = google.maps.MapTypeId[options.mapType.toUpperCase()],
+ map_center = new google.maps.LatLng(options.lat, options.lng),
+ zoomControl = valueOrDefault(options.zoomControl, true),
+ zoomControlOpt = options.zoomControlOpt || {
+ style: 'DEFAULT',
+ position: 'TOP_LEFT'
+ },
+ zoomControlStyle = zoomControlOpt.style || 'DEFAULT',
+ zoomControlPosition = zoomControlOpt.position || 'TOP_LEFT',
+ panControl = valueOrDefault(options.panControl, true),
+ mapTypeControl = valueOrDefault(options.mapTypeControl, true),
+ scaleControl = valueOrDefault(options.scaleControl, true),
+ streetViewControl = valueOrDefault(options.streetViewControl, true),
+ overviewMapControl = valueOrDefault(overviewMapControl, true),
+ map_options = {},
+ map_base_options = {
+ zoom: this.zoom,
+ center: map_center,
+ mapTypeId: mapType
+ },
+ map_controls_options = {
+ panControl: panControl,
+ zoomControl: zoomControl,
+ zoomControlOptions: {
+ style: google.maps.ZoomControlStyle[zoomControlStyle],
+ position: google.maps.ControlPosition[zoomControlPosition]
+ },
+ mapTypeControl: mapTypeControl,
+ scaleControl: scaleControl,
+ streetViewControl: streetViewControl,
+ overviewMapControl: overviewMapControl
+ };
+
+ if (typeof(options.el) === 'string' || typeof(options.div) === 'string') {
+ if (identifier.indexOf("#") > -1) {
+ /**
+ * Container element
+ *
+ * @type {HTMLElement}
+ */
+ this.el = getElementById(identifier, options.lowgo);
+ } else {
+ this.el = getElementsByClassName.apply(this, [identifier, options.lowgo]);
+ }
+ } else {
+ this.el = identifier;
+ }
+
+ if (typeof(this.el) === 'undefined' || this.el === null) {
+ throw 'No element defined.';
+ }
+
+ window.lowgo_menu = window.lowgo_menu || {};
+ window.lowgo_menu[self.el.id] = {};
+
+ /**
+ * Collection of custom controls in the map UI
+ *
+ * @type {array}
+ */
+ this.controls = [];
+ /**
+ * Collection of map's overlays
+ *
+ * @type {array}
+ */
+ this.overlays = [];
+ /**
+ * Collection of KML/GeoRSS and FusionTable layers
+ *
+ * @type {array}
+ */
+ this.layers = [];
+ /**
+ * Collection of data layers (See {@link GMaps#addLayer})
+ *
+ * @type {object}
+ */
+ this.singleLayers = {};
+ /**
+ * Collection of map's markers
+ *
+ * @type {array}
+ */
+ this.markers = [];
+ /**
+ * Collection of map's lines
+ *
+ * @type {array}
+ */
+ this.polylines = [];
+ /**
+ * Collection of map's routes requested by {@link GMaps#getRoutes}, {@link GMaps#renderRoute}, {@link GMaps#drawRoute}, {@link GMaps#travelRoute} or {@link GMaps#drawSteppedRoute}
+ *
+ * @type {array}
+ */
+ this.routes = [];
+ /**
+ * Collection of map's polygons
+ *
+ * @type {array}
+ */
+ this.polygons = [];
+ this.infoWindow = null;
+ this.overlay_el = null;
+ /**
+ * Current map's zoom
+ *
+ * @type {number}
+ */
+ this.zoom = options.zoom;
+ this.registered_events = {};
+
+ this.el.style.width = options.width || this.el.scrollWidth || this.el.offsetWidth;
+ this.el.style.height = options.height || this.el.scrollHeight || this.el.offsetHeight;
+
+ google.maps.visualRefresh = options.enableNewStyle;
+
+ for (i = 0; i < options_to_be_deleted.length; i++) {
+ delete options[options_to_be_deleted[i]];
+ }
+
+ if(options.disableDefaultUI != true) {
+ map_base_options = extend_object(map_base_options, map_controls_options);
+ }
+
+ map_options = extend_object(map_base_options, options);
+
+ for (i = 0; i < events_that_hide_lowgo_menu.length; i++) {
+ delete map_options[events_that_hide_lowgo_menu[i]];
+ }
+
+ for (i = 0; i < events_that_doesnt_hide_lowgo_menu.length; i++) {
+ delete map_options[events_that_doesnt_hide_lowgo_menu[i]];
+ }
+
+ /**
+ * Google Maps map instance
+ *
+ * @type {google.maps.Map}
+ */
+ this.map = new google.maps.Map(this.el, map_options);
+
+ if (markerClustererFunction) {
+ /**
+ * Marker Clusterer instance
+ *
+ * @type {object}
+ */
+ this.markerClusterer = markerClustererFunction.apply(this, [this.map]);
+ }
+
+ var buildlowgoMenuHTML = function(control, e) {
+ var html = '',
+ options = window.lowgo_menu[self.el.id][control];
+
+ for (var i in options){
+ if (options.hasOwnProperty(i)) {
+ var option = options[i];
+
+ html += '<li><a id="' + control + '_' + i + '" href="#">' + option.title + '</a></li>';
+ }
+ }
+
+ if (!getElementById('gmaps_lowgo_menu')) return;
+
+ var lowgo_menu_element = getElementById('gmaps_lowgo_menu');
+
+ lowgo_menu_element.innerHTML = html;
+
+ var lowgo_menu_items = lowgo_menu_element.getElementsByTagName('a'),
+ lowgo_menu_items_count = lowgo_menu_items.length,
+ i;
+
+ for (i = 0; i < lowgo_menu_items_count; i++) {
+ var lowgo_menu_item = lowgo_menu_items[i];
+
+ var assign_menu_item_action = function(ev){
+ ev.preventDefault();
+
+ options[this.id.replace(control + '_', '')].action.apply(self, [e]);
+ self.hidelowgoMenu();
+ };
+
+ google.maps.event.clearListeners(lowgo_menu_item, 'click');
+ google.maps.event.addDomListenerOnce(lowgo_menu_item, 'click', assign_menu_item_action, false);
+ }
+
+ var position = findAbsolutePosition.apply(this, [self.el]),
+ left = position[0] + e.pixel.x - 15,
+ top = position[1] + e.pixel.y- 15;
+
+ lowgo_menu_element.style.left = left + "px";
+ lowgo_menu_element.style.top = top + "px";
+
+ // lowgo_menu_element.style.display = 'block';
+ };
+
+ this.buildlowgoMenu = function(control, e) {
+ if (control === 'marker') {
+ e.pixel = {};
+
+ var overlay = new google.maps.OverlayView();
+ overlay.setMap(self.map);
+
+ overlay.draw = function() {
+ var projection = overlay.getProjection(),
+ position = e.marker.getPosition();
+
+ e.pixel = projection.fromLatLngToContainerPixel(position);
+
+ buildlowgoMenuHTML(control, e);
+ };
+ }
+ else {
+ buildlowgoMenuHTML(control, e);
+ }
+
+ var lowgo_menu_element = getElementById('gmaps_lowgo_menu');
+
+ setTimeout(function() {
+ lowgo_menu_element.style.display = 'block';
+ }, 0);
+ };
+
+ /**
+ * Add a lowgo menu for a map or a marker.
+ *
+ * @param {object} options - The `options` object should contain:
+ * * `control` (string): Kind of control the lowgo menu will be attached. Can be "map" or "marker".
+ * * `options` (array): A collection of lowgo menu items:
+ * * `title` (string): Item's title shown in the lowgo menu.
+ * * `name` (string): Item's identifier.
+ * * `action` (function): Function triggered after selecting the lowgo menu item.
+ */
+ this.setlowgoMenu = function(options) {
+ window.lowgo_menu[self.el.id][options.control] = {};
+
+ var i,
+ ul = doc.createElement('ul');
+
+ for (i in options.options) {
+ if (options.options.hasOwnProperty(i)) {
+ var option = options.options[i];
+
+ window.lowgo_menu[self.el.id][options.control][option.name] = {
+ title: option.title,
+ action: option.action
+ };
+ }
+ }
+
+ ul.id = 'gmaps_lowgo_menu';
+ ul.style.display = 'none';
+ ul.style.position = 'absolute';
+ ul.style.minWidth = '100px';
+ ul.style.background = 'white';
+ ul.style.listStyle = 'none';
+ ul.style.padding = '8px';
+ ul.style.boxShadow = '2px 2px 6px #ccc';
+
+ if (!getElementById('gmaps_lowgo_menu')) {
+ doc.body.appendChild(ul);
+ }
+
+ var lowgo_menu_element = getElementById('gmaps_lowgo_menu');
+
+ google.maps.event.addDomListener(lowgo_menu_element, 'mouseout', function(ev) {
+ if (!ev.relatedTarget || !this.contains(ev.relatedTarget)) {
+ window.setTimeout(function(){
+ lowgo_menu_element.style.display = 'none';
+ }, 400);
+ }
+ }, false);
+ };
+
+ /**
+ * Hide the current lowgo menu
+ */
+ this.hidelowgoMenu = function() {
+ var lowgo_menu_element = getElementById('gmaps_lowgo_menu');
+
+ if (lowgo_menu_element) {
+ lowgo_menu_element.style.display = 'none';
+ }
+ };
+
+ var setupListener = function(object, name) {
+ google.maps.event.addListener(object, name, function(e){
+ if (e == undefined) {
+ e = this;
+ }
+
+ options[name].apply(this, [e]);
+
+ self.hidelowgoMenu();
+ });
+ };
+
+ //google.maps.event.addListener(this.map, 'idle', this.hidelowgoMenu);
+ google.maps.event.addListener(this.map, 'zoom_changed', this.hidelowgoMenu);
+
+ for (var ev = 0; ev < events_that_hide_lowgo_menu.length; ev++) {
+ var name = events_that_hide_lowgo_menu[ev];
+
+ if (name in options) {
+ setupListener(this.map, name);
+ }
+ }
+
+ for (var ev = 0; ev < events_that_doesnt_hide_lowgo_menu.length; ev++) {
+ var name = events_that_doesnt_hide_lowgo_menu[ev];
+
+ if (name in options) {
+ setupListener(this.map, name);
+ }
+ }
+
+ google.maps.event.addListener(this.map, 'rightclick', function(e) {
+ if (options.rightclick) {
+ options.rightclick.apply(this, [e]);
+ }
+
+ if(window.lowgo_menu[self.el.id]['map'] != undefined) {
+ self.buildlowgoMenu('map', e);
+ }
+ });
+
+ /**
+ * Trigger a `resize` event, useful if you need to repaint the current map (for changes in the viewport or display / hide actions).
+ */
+ this.refresh = function() {
+ google.maps.event.trigger(this.map, 'resize');
+ };
+
+ /**
+ * Adjust the map zoom to include all the markers added in the map.
+ */
+ this.fitZoom = function() {
+ var latLngs = [],
+ markers_length = this.markers.length,
+ i;
+
+ for (i = 0; i < markers_length; i++) {
+ if(typeof(this.markers[i].visible) === 'boolean' && this.markers[i].visible) {
+ latLngs.push(this.markers[i].getPosition());
+ }
+ }
+
+ this.fitLatLngBounds(latLngs);
+ };
+
+ /**
+ * Adjust the map zoom to include all the coordinates in the `latLngs` array.
+ *
+ * @param {array} latLngs - Collection of `google.maps.LatLng` objects.
+ */
+ this.fitLatLngBounds = function(latLngs) {
+ var total = latLngs.length,
+ bounds = new google.maps.LatLngBounds(),
+ i;
+
+ for(i = 0; i < total; i++) {
+ bounds.extend(latLngs[i]);
+ }
+
+ this.map.fitBounds(bounds);
+ };
+
+ /**
+ * Center the map using the `lat` and `lng` coordinates.
+ *
+ * @param {number} lat - Latitude of the coordinate.
+ * @param {number} lng - Longitude of the coordinate.
+ * @param {function} [callback] - Callback that will be executed after the map is centered.
+ */
+ this.setCenter = function(lat, lng, callback) {
+ this.map.panTo(new google.maps.LatLng(lat, lng));
+
+ if (callback) {
+ callback();
+ }
+ };
+
+ /**
+ * Return the HTML element container of the map.
+ *
+ * @returns {HTMLElement} the element container.
+ */
+ this.getElement = function() {
+ return this.el;
+ };
+
+ /**
+ * Increase the map's zoom.
+ *
+ * @param {number} [magnitude] - The number of times the map will be zoomed in.
+ */
+ this.zoomIn = function(value) {
+ value = value || 1;
+
+ this.zoom = this.map.getZoom() + value;
+ this.map.setZoom(this.zoom);
+ };
+
+ /**
+ * Decrease the map's zoom.
+ *
+ * @param {number} [magnitude] - The number of times the map will be zoomed out.
+ */
+ this.zoomOut = function(value) {
+ value = value || 1;
+
+ this.zoom = this.map.getZoom() - value;
+ this.map.setZoom(this.zoom);
+ };
+
+ var native_methods = [],
+ method;
+
+ for (method in this.map) {
+ if (typeof(this.map[method]) == 'function' && !this[method]) {
+ native_methods.push(method);
+ }
+ }
+
+ for (i = 0; i < native_methods.length; i++) {
+ (function(gmaps, scope, method_name) {
+ gmaps[method_name] = function(){
+ return scope[method_name].apply(scope, arguments);
+ };
+ })(this, this.map, native_methods[i]);
+ }
+ };
+
+ return GMaps;
+})(this);
+
+GMaps.prototype.createControl = function(options) {
+ var control = document.createElement('div');
+
+ control.style.cursor = 'pointer';
+
+ if (options.disableDefaultStyles !== true) {
+ control.style.fontFamily = 'Roboto, Arial, sans-serif';
+ control.style.fontSize = '11px';
+ control.style.boxShadow = 'rgba(0, 0, 0, 0.298039) 0px 1px 4px -1px';
+ }
+
+ for (var option in options.style) {
+ control.style[option] = options.style[option];
+ }
+
+ if (options.id) {
+ control.id = options.id;
+ }
+
+ if (options.title) {
+ control.title = options.title;
+ }
+
+ if (options.classes) {
+ control.className = options.classes;
+ }
+
+ if (options.content) {
+ if (typeof options.content === 'string') {
+ control.innerHTML = options.content;
+ }
+ else if (options.content instanceof HTMLElement) {
+ control.appendChild(options.content);
+ }
+ }
+
+ if (options.position) {
+ control.position = google.maps.ControlPosition[options.position.toUpperCase()];
+ }
+
+ for (var ev in options.events) {
+ (function(object, name) {
+ google.maps.event.addDomListener(object, name, function(){
+ options.events[name].apply(this, [this]);
+ });
+ })(control, ev);
+ }
+
+ control.index = 1;
+
+ return control;
+};
+
+/**
+ * Add a custom control to the map UI.
+ *
+ * @param {object} options - The `options` object should contain:
+ * * `style` (object): The keys and values of this object should be valid CSS properties and values.
+ * * `id` (string): The HTML id for the custom control.
+ * * `classes` (string): A string containing all the HTML classes for the custom control.
+ * * `content` (string or HTML element): The content of the custom control.
+ * * `position` (string): Any valid [`google.maps.ControlPosition`](://developers.google.com/maps/documentation/javascript/controls#ControlPositioning) value, in lower or upper case.
+ * * `events` (object): The keys of this object should be valid DOM events. The values should be functions.
+ * * `disableDefaultStyles` (boolean): If false, removes the default styles for the controls like font (family and size), and box shadow.
+ * @returns {HTMLElement}
+ */
+GMaps.prototype.addControl = function(options) {
+ var control = this.createControl(options);
+
+ this.controls.push(control);
+ this.map.controls[control.position].push(control);
+
+ return control;
+};
+
+/**
+ * Remove a control from the map. `control` should be a control returned by `addControl()`.
+ *
+ * @param {HTMLElement} control - One of the controls returned by `addControl()`.
+ * @returns {HTMLElement} the removed control.
+ */
+GMaps.prototype.removeControl = function(control) {
+ var position = null,
+ i;
+
+ for (i = 0; i < this.controls.length; i++) {
+ if (this.controls[i] == control) {
+ position = this.controls[i].position;
+ this.controls.splice(i, 1);
+ }
+ }
+
+ if (position) {
+ for (i = 0; i < this.map.controls.length; i++) {
+ var controlsForPosition = this.map.controls[control.position];
+
+ if (controlsForPosition.getAt(i) == control) {
+ controlsForPosition.removeAt(i);
+
+ break;
+ }
+ }
+ }
+
+ return control;
+};
+
+GMaps.prototype.createMarker = function(options) {
+ if (options.lat == undefined && options.lng == undefined && options.position == undefined) {
+ throw 'No latitude or longitude defined.';
+ }
+
+ var self = this,
+ details = options.details,
+ fences = options.fences,
+ outside = options.outside,
+ base_options = {
+ position: new google.maps.LatLng(options.lat, options.lng),
+ map: null
+ },
+ marker_options = extend_object(base_options, options);
+
+ delete marker_options.lat;
+ delete marker_options.lng;
+ delete marker_options.fences;
+ delete marker_options.outside;
+
+ var marker = new google.maps.Marker(marker_options);
+
+ marker.fences = fences;
+
+ if (options.infoWindow) {
+ marker.infoWindow = new google.maps.InfoWindow(options.infoWindow);
+
+ var info_window_events = ['closeclick', 'content_changed', 'domready', 'position_changed', 'zindex_changed'];
+
+ for (var ev = 0; ev < info_window_events.length; ev++) {
+ (function(object, name) {
+ if (options.infoWindow[name]) {
+ google.maps.event.addListener(object, name, function(e){
+ options.infoWindow[name].apply(this, [e]);
+ });
+ }
+ })(marker.infoWindow, info_window_events[ev]);
+ }
+ }
+
+ var marker_events = ['animation_changed', 'clickable_changed', 'cursor_changed', 'draggable_changed', 'flat_changed', 'icon_changed', 'position_changed', 'shadow_changed', 'shape_changed', 'title_changed', 'visible_changed', 'zindex_changed'];
+
+ var marker_events_with_mouse = ['dblclick', 'drag', 'dragend', 'dragstart', 'mousedown', 'mouseout', 'mouseover', 'mouseup'];
+
+ for (var ev = 0; ev < marker_events.length; ev++) {
+ (function(object, name) {
+ if (options[name]) {
+ google.maps.event.addListener(object, name, function(){
+ options[name].apply(this, [this]);
+ });
+ }
+ })(marker, marker_events[ev]);
+ }
+
+ for (var ev = 0; ev < marker_events_with_mouse.length; ev++) {
+ (function(map, object, name) {
+ if (options[name]) {
+ google.maps.event.addListener(object, name, function(me){
+ if(!me.pixel){
+ me.pixel = map.getProjection().fromLatLngToPoint(me.latLng)
+ }
+
+ options[name].apply(this, [me]);
+ });
+ }
+ })(this.map, marker, marker_events_with_mouse[ev]);
+ }
+
+ google.maps.event.addListener(marker, 'click', function() {
+ this.details = details;
+
+ if (options.click) {
+ options.click.apply(this, [this]);
+ }
+
+ if (marker.infoWindow) {
+ self.hideInfoWindows();
+ marker.infoWindow.open(self.map, marker);
+ }
+ });
+
+ google.maps.event.addListener(marker, 'rightclick', function(e) {
+ e.marker = this;
+
+ if (options.rightclick) {
+ options.rightclick.apply(this, [e]);
+ }
+
+ if (window.lowgo_menu[self.el.id]['marker'] != undefined) {
+ self.buildlowgoMenu('marker', e);
+ }
+ });
+
+ if (marker.fences) {
+ google.maps.event.addListener(marker, 'dragend', function() {
+ self.checkMarkerGeofence(marker, function(m, f) {
+ outside(m, f);
+ });
+ });
+ }
+
+ return marker;
+};
+
+GMaps.prototype.addMarker = function(options) {
+ var marker;
+ if(options.hasOwnProperty('gm_accessors_')) {
+ // Native google.maps.Marker object
+ marker = options;
+ }
+ else {
+ if ((options.hasOwnProperty('lat') && options.hasOwnProperty('lng')) || options.position) {
+ marker = this.createMarker(options);
+ }
+ else {
+ throw 'No latitude or longitude defined.';
+ }
+ }
+
+ marker.setMap(this.map);
+
+ if(this.markerClusterer) {
+ this.markerClusterer.addMarker(marker);
+ }
+
+ this.markers.push(marker);
+
+ GMaps.fire('marker_added', marker, this);
+
+ return marker;
+};
+
+GMaps.prototype.addMarkers = function(array) {
+ for (var i = 0, marker; marker=array[i]; i++) {
+ this.addMarker(marker);
+ }
+
+ return this.markers;
+};
+
+GMaps.prototype.hideInfoWindows = function() {
+ for (var i = 0, marker; marker = this.markers[i]; i++){
+ if (marker.infoWindow) {
+ marker.infoWindow.close();
+ }
+ }
+};
+
+GMaps.prototype.removeMarker = function(marker) {
+ for (var i = 0; i < this.markers.length; i++) {
+ if (this.markers[i] === marker) {
+ this.markers[i].setMap(null);
+ this.markers.splice(i, 1);
+
+ if(this.markerClusterer) {
+ this.markerClusterer.removeMarker(marker);
+ }
+
+ GMaps.fire('marker_removed', marker, this);
+
+ break;
+ }
+ }
+
+ return marker;
+};
+
+GMaps.prototype.removeMarkers = function (collection) {
+ var new_markers = [];
+
+ if (typeof collection == 'undefined') {
+ for (var i = 0; i < this.markers.length; i++) {
+ var marker = this.markers[i];
+ marker.setMap(null);
+
+ GMaps.fire('marker_removed', marker, this);
+ }
+
+ if(this.markerClusterer && this.markerClusterer.clearMarkers) {
+ this.markerClusterer.clearMarkers();
+ }
+
+ this.markers = new_markers;
+ }
+ else {
+ for (var i = 0; i < collection.length; i++) {
+ var index = this.markers.indexOf(collection[i]);
+
+ if (index > -1) {
+ var marker = this.markers[index];
+ marker.setMap(null);
+
+ if(this.markerClusterer) {
+ this.markerClusterer.removeMarker(marker);
+ }
+
+ GMaps.fire('marker_removed', marker, this);
+ }
+ }
+
+ for (var i = 0; i < this.markers.length; i++) {
+ var marker = this.markers[i];
+ if (marker.getMap() != null) {
+ new_markers.push(marker);
+ }
+ }
+
+ this.markers = new_markers;
+ }
+};
+
+GMaps.prototype.drawOverlay = function(options) {
+ var overlay = new google.maps.OverlayView(),
+ auto_show = true;
+
+ overlay.setMap(this.map);
+
+ if (options.auto_show != null) {
+ auto_show = options.auto_show;
+ }
+
+ overlay.onAdd = function() {
+ var el = document.createElement('div');
+
+ el.style.borderStyle = "none";
+ el.style.borderWidth = "0px";
+ el.style.position = "absolute";
+ el.style.zIndex = 100;
+ el.innerHTML = options.content;
+
+ overlay.el = el;
+
+ if (!options.layer) {
+ options.layer = 'overlayLayer';
+ }
+
+ var panes = this.getPanes(),
+ overlayLayer = panes[options.layer],
+ stop_overlay_events = ['lowgomenu', 'DOMMouseScroll', 'dblclick', 'mousedown'];
+
+ overlayLayer.appendChild(el);
+
+ for (var ev = 0; ev < stop_overlay_events.length; ev++) {
+ (function(object, name) {
+ google.maps.event.addDomListener(object, name, function(e){
+ if (navigator.userAgent.toLowerCase().indexOf('msie') != -1 && document.all) {
+ e.cancelBubble = true;
+ e.returnValue = false;
+ }
+ else {
+ e.stopPropagation();
+ }
+ });
+ })(el, stop_overlay_events[ev]);
+ }
+
+ if (options.click) {
+ panes.overlayMouseTarget.appendChild(overlay.el);
+ google.maps.event.addDomListener(overlay.el, 'click', function() {
+ options.click.apply(overlay, [overlay]);
+ });
+ }
+
+ google.maps.event.trigger(this, 'ready');
+ };
+
+ overlay.draw = function() {
+ var projection = this.getProjection(),
+ pixel = projection.fromLatLngToDivPixel(new google.maps.LatLng(options.lat, options.lng));
+
+ options.horizontalOffset = options.horizontalOffset || 0;
+ options.verticalOffset = options.verticalOffset || 0;
+
+ var el = overlay.el,
+ content = el.children[0],
+ content_height = content.clientHeight,
+ content_width = content.clientWidth;
+
+ switch (options.verticalAlign) {
+ case 'top':
+ el.style.top = (pixel.y - content_height + options.verticalOffset) + 'px';
+ break;
+ default:
+ case 'middle':
+ el.style.top = (pixel.y - (content_height / 2) + options.verticalOffset) + 'px';
+ break;
+ case 'bottom':
+ el.style.top = (pixel.y + options.verticalOffset) + 'px';
+ break;
+ }
+
+ switch (options.horizontalAlign) {
+ case 'left':
+ el.style.left = (pixel.x - content_width + options.horizontalOffset) + 'px';
+ break;
+ default:
+ case 'center':
+ el.style.left = (pixel.x - (content_width / 2) + options.horizontalOffset) + 'px';
+ break;
+ case 'right':
+ el.style.left = (pixel.x + options.horizontalOffset) + 'px';
+ break;
+ }
+
+ el.style.display = auto_show ? 'block' : 'none';
+
+ if (!auto_show) {
+ options.show.apply(this, [el]);
+ }
+ };
+
+ overlay.onRemove = function() {
+ var el = overlay.el;
+
+ if (options.remove) {
+ options.remove.apply(this, [el]);
+ }
+ else {
+ overlay.el.parentNode.removeChild(overlay.el);
+ overlay.el = null;
+ }
+ };
+
+ this.overlays.push(overlay);
+ return overlay;
+};
+
+GMaps.prototype.removeOverlay = function(overlay) {
+ for (var i = 0; i < this.overlays.length; i++) {
+ if (this.overlays[i] === overlay) {
+ this.overlays[i].setMap(null);
+ this.overlays.splice(i, 1);
+
+ break;
+ }
+ }
+};
+
+GMaps.prototype.removeOverlays = function() {
+ for (var i = 0, item; item = this.overlays[i]; i++) {
+ item.setMap(null);
+ }
+
+ this.overlays = [];
+};
+
+GMaps.prototype.drawPolyline = function(options) {
+ var path = [],
+ points = options.path;
+
+ if (points.length) {
+ if (points[0][0] === undefined) {
+ path = points;
+ }
+ else {
+ for (var i = 0, latlng; latlng = points[i]; i++) {
+ path.push(new google.maps.LatLng(latlng[0], latlng[1]));
+ }
+ }
+ }
+
+ var polyline_options = {
+ map: this.map,
+ path: path,
+ strokeColor: options.strokeColor,
+ strokeOpacity: options.strokeOpacity,
+ strokeWeight: options.strokeWeight,
+ geodesic: options.geodesic,
+ clickable: true,
+ editable: false,
+ visible: true
+ };
+
+ if (options.hasOwnProperty("clickable")) {
+ polyline_options.clickable = options.clickable;
+ }
+
+ if (options.hasOwnProperty("editable")) {
+ polyline_options.editable = options.editable;
+ }
+
+ if (options.hasOwnProperty("icons")) {
+ polyline_options.icons = options.icons;
+ }
+
+ if (options.hasOwnProperty("zIndex")) {
+ polyline_options.zIndex = options.zIndex;
+ }
+
+ var polyline = new google.maps.Polyline(polyline_options);
+
+ var polyline_events = ['click', 'dblclick', 'mousedown', 'mousemove', 'mouseout', 'mouseover', 'mouseup', 'rightclick'];
+
+ for (var ev = 0; ev < polyline_events.length; ev++) {
+ (function(object, name) {
+ if (options[name]) {
+ google.maps.event.addListener(object, name, function(e){
+ options[name].apply(this, [e]);
+ });
+ }
+ })(polyline, polyline_events[ev]);
+ }
+
+ this.polylines.push(polyline);
+
+ GMaps.fire('polyline_added', polyline, this);
+
+ return polyline;
+};
+
+GMaps.prototype.removePolyline = function(polyline) {
+ for (var i = 0; i < this.polylines.length; i++) {
+ if (this.polylines[i] === polyline) {
+ this.polylines[i].setMap(null);
+ this.polylines.splice(i, 1);
+
+ GMaps.fire('polyline_removed', polyline, this);
+
+ break;
+ }
+ }
+};
+
+GMaps.prototype.removePolylines = function() {
+ for (var i = 0, item; item = this.polylines[i]; i++) {
+ item.setMap(null);
+ }
+
+ this.polylines = [];
+};
+
+GMaps.prototype.drawCircle = function(options) {
+ options = extend_object({
+ map: this.map,
+ center: new google.maps.LatLng(options.lat, options.lng)
+ }, options);
+
+ delete options.lat;
+ delete options.lng;
+
+ var polygon = new google.maps.Circle(options),
+ polygon_events = ['click', 'dblclick', 'mousedown', 'mousemove', 'mouseout', 'mouseover', 'mouseup', 'rightclick'];
+
+ for (var ev = 0; ev < polygon_events.length; ev++) {
+ (function(object, name) {
+ if (options[name]) {
+ google.maps.event.addListener(object, name, function(e){
+ options[name].apply(this, [e]);
+ });
+ }
+ })(polygon, polygon_events[ev]);
+ }
+
+ this.polygons.push(polygon);
+
+ return polygon;
+};
+
+GMaps.prototype.drawRectangle = function(options) {
+ options = extend_object({
+ map: this.map
+ }, options);
+
+ var latLngBounds = new google.maps.LatLngBounds(
+ new google.maps.LatLng(options.bounds[0][0], options.bounds[0][1]),
+ new google.maps.LatLng(options.bounds[1][0], options.bounds[1][1])
+ );
+
+ options.bounds = latLngBounds;
+
+ var polygon = new google.maps.Rectangle(options),
+ polygon_events = ['click', 'dblclick', 'mousedown', 'mousemove', 'mouseout', 'mouseover', 'mouseup', 'rightclick'];
+
+ for (var ev = 0; ev < polygon_events.length; ev++) {
+ (function(object, name) {
+ if (options[name]) {
+ google.maps.event.addListener(object, name, function(e){
+ options[name].apply(this, [e]);
+ });
+ }
+ })(polygon, polygon_events[ev]);
+ }
+
+ this.polygons.push(polygon);
+
+ return polygon;
+};
+
+GMaps.prototype.drawPolygon = function(options) {
+ var useGeoJSON = false;
+
+ if(options.hasOwnProperty("useGeoJSON")) {
+ useGeoJSON = options.useGeoJSON;
+ }
+
+ delete options.useGeoJSON;
+
+ options = extend_object({
+ map: this.map
+ }, options);
+
+ if (useGeoJSON == false) {
+ options.paths = [options.paths.slice(0)];
+ }
+
+ if (options.paths.length > 0) {
+ if (options.paths[0].length > 0) {
+ options.paths = array_flat(array_map(options.paths, arrayToLatLng, useGeoJSON));
+ }
+ }
+
+ var polygon = new google.maps.Polygon(options),
+ polygon_events = ['click', 'dblclick', 'mousedown', 'mousemove', 'mouseout', 'mouseover', 'mouseup', 'rightclick'];
+
+ for (var ev = 0; ev < polygon_events.length; ev++) {
+ (function(object, name) {
+ if (options[name]) {
+ google.maps.event.addListener(object, name, function(e){
+ options[name].apply(this, [e]);
+ });
+ }
+ })(polygon, polygon_events[ev]);
+ }
+
+ this.polygons.push(polygon);
+
+ GMaps.fire('polygon_added', polygon, this);
+
+ return polygon;
+};
+
+GMaps.prototype.removePolygon = function(polygon) {
+ for (var i = 0; i < this.polygons.length; i++) {
+ if (this.polygons[i] === polygon) {
+ this.polygons[i].setMap(null);
+ this.polygons.splice(i, 1);
+
+ GMaps.fire('polygon_removed', polygon, this);
+
+ break;
+ }
+ }
+};
+
+GMaps.prototype.removePolygons = function() {
+ for (var i = 0, item; item = this.polygons[i]; i++) {
+ item.setMap(null);
+ }
+
+ this.polygons = [];
+};
+
+GMaps.prototype.getFromFusionTables = function(options) {
+ var events = options.events;
+
+ delete options.events;
+
+ var fusion_tables_options = options,
+ layer = new google.maps.FusionTablesLayer(fusion_tables_options);
+
+ for (var ev in events) {
+ (function(object, name) {
+ google.maps.event.addListener(object, name, function(e) {
+ events[name].apply(this, [e]);
+ });
+ })(layer, ev);
+ }
+
+ this.layers.push(layer);
+
+ return layer;
+};
+
+GMaps.prototype.loadFromFusionTables = function(options) {
+ var layer = this.getFromFusionTables(options);
+ layer.setMap(this.map);
+
+ return layer;
+};
+
+GMaps.prototype.getFromKML = function(options) {
+ var url = options.url,
+ events = options.events;
+
+ delete options.url;
+ delete options.events;
+
+ var kml_options = options,
+ layer = new google.maps.KmlLayer(url, kml_options);
+
+ for (var ev in events) {
+ (function(object, name) {
+ google.maps.event.addListener(object, name, function(e) {
+ events[name].apply(this, [e]);
+ });
+ })(layer, ev);
+ }
+
+ this.layers.push(layer);
+
+ return layer;
+};
+
+GMaps.prototype.loadFromKML = function(options) {
+ var layer = this.getFromKML(options);
+ layer.setMap(this.map);
+
+ return layer;
+};
+
+GMaps.prototype.addLayer = function(layerName, options) {
+ //var default_layers = ['weather', 'clouds', 'traffic', 'transit', 'bicycling', 'panoramio', 'places'];
+ options = options || {};
+ var layer;
+
+ switch(layerName) {
+ case 'weather': this.singleLayers.weather = layer = new google.maps.weather.WeatherLayer();
+ break;
+ case 'clouds': this.singleLayers.clouds = layer = new google.maps.weather.CloudLayer();
+ break;
+ case 'traffic': this.singleLayers.traffic = layer = new google.maps.TrafficLayer();
+ break;
+ case 'transit': this.singleLayers.transit = layer = new google.maps.TransitLayer();
+ break;
+ case 'bicycling': this.singleLayers.bicycling = layer = new google.maps.BicyclingLayer();
+ break;
+ case 'panoramio':
+ this.singleLayers.panoramio = layer = new google.maps.panoramio.PanoramioLayer();
+ layer.setTag(options.filter);
+ delete options.filter;
+
+ //click event
+ if (options.click) {
+ google.maps.event.addListener(layer, 'click', function(event) {
+ options.click(event);
+ delete options.click;
+ });
+ }
+ break;
+ case 'places':
+ this.singleLayers.places = layer = new google.maps.places.PlacesService(this.map);
+
+ //search, nearbySearch, radarSearch callback, Both are the same
+ if (options.search || options.nearbySearch || options.radarSearch) {
+ var placeSearchRequest = {
+ bounds : options.bounds || null,
+ keyword : options.keyword || null,
+ location : options.location || null,
+ name : options.name || null,
+ radius : options.radius || null,
+ rankBy : options.rankBy || null,
+ types : options.types || null
+ };
+
+ if (options.radarSearch) {
+ layer.radarSearch(placeSearchRequest, options.radarSearch);
+ }
+
+ if (options.search) {
+ layer.search(placeSearchRequest, options.search);
+ }
+
+ if (options.nearbySearch) {
+ layer.nearbySearch(placeSearchRequest, options.nearbySearch);
+ }
+ }
+
+ //textSearch callback
+ if (options.textSearch) {
+ var textSearchRequest = {
+ bounds : options.bounds || null,
+ location : options.location || null,
+ query : options.query || null,
+ radius : options.radius || null
+ };
+
+ layer.textSearch(textSearchRequest, options.textSearch);
+ }
+ break;
+ }
+
+ if (layer !== undefined) {
+ if (typeof layer.setOptions == 'function') {
+ layer.setOptions(options);
+ }
+ if (typeof layer.setMap == 'function') {
+ layer.setMap(this.map);
+ }
+
+ return layer;
+ }
+};
+
+GMaps.prototype.removeLayer = function(layer) {
+ if (typeof(layer) == "string" && this.singleLayers[layer] !== undefined) {
+ this.singleLayers[layer].setMap(null);
+
+ delete this.singleLayers[layer];
+ }
+ else {
+ for (var i = 0; i < this.layers.length; i++) {
+ if (this.layers[i] === layer) {
+ this.layers[i].setMap(null);
+ this.layers.splice(i, 1);
+
+ break;
+ }
+ }
+ }
+};
+
+var travelMode, unitSystem;
+
+GMaps.prototype.getRoutes = function(options) {
+ switch (options.travelMode) {
+ case 'bicycling':
+ travelMode = google.maps.TravelMode.BICYCLING;
+ break;
+ case 'transit':
+ travelMode = google.maps.TravelMode.TRANSIT;
+ break;
+ case 'driving':
+ travelMode = google.maps.TravelMode.DRIVING;
+ break;
+ default:
+ travelMode = google.maps.TravelMode.WALKING;
+ break;
+ }
+
+ if (options.unitSystem === 'imperial') {
+ unitSystem = google.maps.UnitSystem.IMPERIAL;
+ }
+ else {
+ unitSystem = google.maps.UnitSystem.METRIC;
+ }
+
+ var base_options = {
+ avoidHighways: false,
+ avoidTolls: false,
+ optimizeWaypoints: false,
+ waypoints: []
+ },
+ request_options = extend_object(base_options, options);
+
+ request_options.origin = /string/.test(typeof options.origin) ? options.origin : new google.maps.LatLng(options.origin[0], options.origin[1]);
+ request_options.destination = /string/.test(typeof options.destination) ? options.destination : new google.maps.LatLng(options.destination[0], options.destination[1]);
+ request_options.travelMode = travelMode;
+ request_options.unitSystem = unitSystem;
+
+ delete request_options.callback;
+ delete request_options.error;
+
+ var self = this,
+ routes = [],
+ service = new google.maps.DirectionsService();
+
+ service.route(request_options, function(result, status) {
+ if (status === google.maps.DirectionsStatus.OK) {
+ for (var r in result.routes) {
+ if (result.routes.hasOwnProperty(r)) {
+ routes.push(result.routes[r]);
+ }
+ }
+
+ if (options.callback) {
+ options.callback(routes, result, status);
+ }
+ }
+ else {
+ if (options.error) {
+ options.error(result, status);
+ }
+ }
+ });
+};
+
+GMaps.prototype.removeRoutes = function() {
+ this.routes.length = 0;
+};
+
+GMaps.prototype.getElevations = function(options) {
+ options = extend_object({
+ locations: [],
+ path : false,
+ samples : 256
+ }, options);
+
+ if (options.locations.length > 0) {
+ if (options.locations[0].length > 0) {
+ options.locations = array_flat(array_map([options.locations], arrayToLatLng, false));
+ }
+ }
+
+ var callback = options.callback;
+ delete options.callback;
+
+ var service = new google.maps.ElevationService();
+
+ //location request
+ if (!options.path) {
+ delete options.path;
+ delete options.samples;
+
+ service.getElevationForLocations(options, function(result, status) {
+ if (callback && typeof(callback) === "function") {
+ callback(result, status);
+ }
+ });
+ //path request
+ } else {
+ var pathRequest = {
+ path : options.locations,
+ samples : options.samples
+ };
+
+ service.getElevationAlongPath(pathRequest, function(result, status) {
+ if (callback && typeof(callback) === "function") {
+ callback(result, status);
+ }
+ });
+ }
+};
+
+GMaps.prototype.cleanRoute = GMaps.prototype.removePolylines;
+
+GMaps.prototype.renderRoute = function(options, renderOptions) {
+ var self = this,
+ panel = ((typeof renderOptions.panel === 'string') ? document.getElementById(renderOptions.panel.replace('#', '')) : renderOptions.panel),
+ display;
+
+ renderOptions.panel = panel;
+ renderOptions = extend_object({
+ map: this.map
+ }, renderOptions);
+ display = new google.maps.DirectionsRenderer(renderOptions);
+
+ this.getRoutes({
+ origin: options.origin,
+ destination: options.destination,
+ travelMode: options.travelMode,
+ waypoints: options.waypoints,
+ unitSystem: options.unitSystem,
+ error: options.error,
+ avoidHighways: options.avoidHighways,
+ avoidTolls: options.avoidTolls,
+ optimizeWaypoints: options.optimizeWaypoints,
+ callback: function(routes, response, status) {
+ if (status === google.maps.DirectionsStatus.OK) {
+ display.setDirections(response);
+ }
+ }
+ });
+};
+
+GMaps.prototype.drawRoute = function(options) {
+ var self = this;
+
+ this.getRoutes({
+ origin: options.origin,
+ destination: options.destination,
+ travelMode: options.travelMode,
+ waypoints: options.waypoints,
+ unitSystem: options.unitSystem,
+ error: options.error,
+ avoidHighways: options.avoidHighways,
+ avoidTolls: options.avoidTolls,
+ optimizeWaypoints: options.optimizeWaypoints,
+ callback: function(routes) {
+ if (routes.length > 0) {
+ var polyline_options = {
+ path: routes[routes.length - 1].overview_path,
+ strokeColor: options.strokeColor,
+ strokeOpacity: options.strokeOpacity,
+ strokeWeight: options.strokeWeight
+ };
+
+ if (options.hasOwnProperty("icons")) {
+ polyline_options.icons = options.icons;
+ }
+
+ self.drawPolyline(polyline_options);
+
+ if (options.callback) {
+ options.callback(routes[routes.length - 1]);
+ }
+ }
+ }
+ });
+};
+
+GMaps.prototype.travelRoute = function(options) {
+ if (options.origin && options.destination) {
+ this.getRoutes({
+ origin: options.origin,
+ destination: options.destination,
+ travelMode: options.travelMode,
+ waypoints : options.waypoints,
+ unitSystem: options.unitSystem,
+ error: options.error,
+ callback: function(e) {
+ //start callback
+ if (e.length > 0 && options.start) {
+ options.start(e[e.length - 1]);
+ }
+
+ //step callback
+ if (e.length > 0 && options.step) {
+ var route = e[e.length - 1];
+ if (route.legs.length > 0) {
+ var steps = route.legs[0].steps;
+ for (var i = 0, step; step = steps[i]; i++) {
+ step.step_number = i;
+ options.step(step, (route.legs[0].steps.length - 1));
+ }
+ }
+ }
+
+ //end callback
+ if (e.length > 0 && options.end) {
+ options.end(e[e.length - 1]);
+ }
+ }
+ });
+ }
+ else if (options.route) {
+ if (options.route.legs.length > 0) {
+ var steps = options.route.legs[0].steps;
+ for (var i = 0, step; step = steps[i]; i++) {
+ step.step_number = i;
+ options.step(step);
+ }
+ }
+ }
+};
+
+GMaps.prototype.drawSteppedRoute = function(options) {
+ var self = this;
+
+ if (options.origin && options.destination) {
+ this.getRoutes({
+ origin: options.origin,
+ destination: options.destination,
+ travelMode: options.travelMode,
+ waypoints : options.waypoints,
+ error: options.error,
+ callback: function(e) {
+ //start callback
+ if (e.length > 0 && options.start) {
+ options.start(e[e.length - 1]);
+ }
+
+ //step callback
+ if (e.length > 0 && options.step) {
+ var route = e[e.length - 1];
+ if (route.legs.length > 0) {
+ var steps = route.legs[0].steps;
+ for (var i = 0, step; step = steps[i]; i++) {
+ step.step_number = i;
+ var polyline_options = {
+ path: step.path,
+ strokeColor: options.strokeColor,
+ strokeOpacity: options.strokeOpacity,
+ strokeWeight: options.strokeWeight
+ };
+
+ if (options.hasOwnProperty("icons")) {
+ polyline_options.icons = options.icons;
+ }
+
+ self.drawPolyline(polyline_options);
+ options.step(step, (route.legs[0].steps.length - 1));
+ }
+ }
+ }
+
+ //end callback
+ if (e.length > 0 && options.end) {
+ options.end(e[e.length - 1]);
+ }
+ }
+ });
+ }
+ else if (options.route) {
+ if (options.route.legs.length > 0) {
+ var steps = options.route.legs[0].steps;
+ for (var i = 0, step; step = steps[i]; i++) {
+ step.step_number = i;
+ var polyline_options = {
+ path: step.path,
+ strokeColor: options.strokeColor,
+ strokeOpacity: options.strokeOpacity,
+ strokeWeight: options.strokeWeight
+ };
+
+ if (options.hasOwnProperty("icons")) {
+ polyline_options.icons = options.icons;
+ }
+
+ self.drawPolyline(polyline_options);
+ options.step(step);
+ }
+ }
+ }
+};
+
+GMaps.Route = function(options) {
+ this.origin = options.origin;
+ this.destination = options.destination;
+ this.waypoints = options.waypoints;
+
+ this.map = options.map;
+ this.route = options.route;
+ this.step_count = 0;
+ this.steps = this.route.legs[0].steps;
+ this.steps_length = this.steps.length;
+
+ var polyline_options = {
+ path: new google.maps.MVCArray(),
+ strokeColor: options.strokeColor,
+ strokeOpacity: options.strokeOpacity,
+ strokeWeight: options.strokeWeight
+ };
+
+ if (options.hasOwnProperty("icons")) {
+ polyline_options.icons = options.icons;
+ }
+
+ this.polyline = this.map.drawPolyline(polyline_options).getPath();
+};
+
+GMaps.Route.prototype.getRoute = function(options) {
+ var self = this;
+
+ this.map.getRoutes({
+ origin : this.origin,
+ destination : this.destination,
+ travelMode : options.travelMode,
+ waypoints : this.waypoints || [],
+ error: options.error,
+ callback : function() {
+ self.route = e[0];
+
+ if (options.callback) {
+ options.callback.call(self);
+ }
+ }
+ });
+};
+
+GMaps.Route.prototype.back = function() {
+ if (this.step_count > 0) {
+ this.step_count--;
+ var path = this.route.legs[0].steps[this.step_count].path;
+
+ for (var p in path){
+ if (path.hasOwnProperty(p)){
+ this.polyline.pop();
+ }
+ }
+ }
+};
+
+GMaps.Route.prototype.forward = function() {
+ if (this.step_count < this.steps_length) {
+ var path = this.route.legs[0].steps[this.step_count].path;
+
+ for (var p in path){
+ if (path.hasOwnProperty(p)){
+ this.polyline.push(path[p]);
+ }
+ }
+ this.step_count++;
+ }
+};
+
+GMaps.prototype.checkGeofence = function(lat, lng, fence) {
+ return fence.containsLatLng(new google.maps.LatLng(lat, lng));
+};
+
+GMaps.prototype.checkMarkerGeofence = function(marker, outside_callback) {
+ if (marker.fences) {
+ for (var i = 0, fence; fence = marker.fences[i]; i++) {
+ var pos = marker.getPosition();
+ if (!this.checkGeofence(pos.lat(), pos.lng(), fence)) {
+ outside_callback(marker, fence);
+ }
+ }
+ }
+};
+
+GMaps.prototype.toImage = function(options) {
+ var options = options || {},
+ static_map_options = {};
+
+ static_map_options['size'] = options['size'] || [this.el.clientWidth, this.el.clientHeight];
+ static_map_options['lat'] = this.getCenter().lat();
+ static_map_options['lng'] = this.getCenter().lng();
+
+ if (this.markers.length > 0) {
+ static_map_options['markers'] = [];
+
+ for (var i = 0; i < this.markers.length; i++) {
+ static_map_options['markers'].push({
+ lat: this.markers[i].getPosition().lat(),
+ lng: this.markers[i].getPosition().lng()
+ });
+ }
+ }
+
+ if (this.polylines.length > 0) {
+ var polyline = this.polylines[0];
+
+ static_map_options['polyline'] = {};
+ static_map_options['polyline']['path'] = google.maps.geometry.encoding.encodePath(polyline.getPath());
+ static_map_options['polyline']['strokeColor'] = polyline.strokeColor
+ static_map_options['polyline']['strokeOpacity'] = polyline.strokeOpacity
+ static_map_options['polyline']['strokeWeight'] = polyline.strokeWeight
+ }
+
+ return GMaps.staticMapURL(static_map_options);
+};
+
+GMaps.staticMapURL = function(options){
+ var parameters = [],
+ data,
+ static_root = (location.protocol === 'file:' ? 'http:' : location.protocol ) + '//maps.googleapis.com/maps/api/staticmap';
+
+ if (options.url) {
+ static_root = options.url;
+ delete options.url;
+ }
+
+ static_root += '?';
+
+ var markers = options.markers;
+
+ delete options.markers;
+
+ if (!markers && options.marker) {
+ markers = [options.marker];
+ delete options.marker;
+ }
+
+ var styles = options.styles;
+
+ delete options.styles;
+
+ var polyline = options.polyline;
+ delete options.polyline;
+
+ /** Map options **/
+ if (options.center) {
+ parameters.push('center=' + options.center);
+ delete options.center;
+ }
+ else if (options.address) {
+ parameters.push('center=' + options.address);
+ delete options.address;
+ }
+ else if (options.lat) {
+ parameters.push(['center=', options.lat, ',', options.lng].join(''));
+ delete options.lat;
+ delete options.lng;
+ }
+ else if (options.visible) {
+ var visible = encodeURI(options.visible.join('|'));
+ parameters.push('visible=' + visible);
+ }
+
+ var size = options.size;
+ if (size) {
+ if (size.join) {
+ size = size.join('x');
+ }
+ delete options.size;
+ }
+ else {
+ size = '630x300';
+ }
+ parameters.push('size=' + size);
+
+ if (!options.zoom && options.zoom !== false) {
+ options.zoom = 15;
+ }
+
+ var sensor = options.hasOwnProperty('sensor') ? !!options.sensor : true;
+ delete options.sensor;
+ parameters.push('sensor=' + sensor);
+
+ for (var param in options) {
+ if (options.hasOwnProperty(param)) {
+ parameters.push(param + '=' + options[param]);
+ }
+ }
+
+ /** Markers **/
+ if (markers) {
+ var marker, loc;
+
+ for (var i = 0; data = markers[i]; i++) {
+ marker = [];
+
+ if (data.size && data.size !== 'normal') {
+ marker.push('size:' + data.size);
+ delete data.size;
+ }
+ else if (data.icon) {
+ marker.push('icon:' + encodeURI(data.icon));
+ delete data.icon;
+ }
+
+ if (data.color) {
+ marker.push('color:' + data.color.replace('#', '0x'));
+ delete data.color;
+ }
+
+ if (data.label) {
+ marker.push('label:' + data.label[0].toUpperCase());
+ delete data.label;
+ }
+
+ loc = (data.address ? data.address : data.lat + ',' + data.lng);
+ delete data.address;
+ delete data.lat;
+ delete data.lng;
+
+ for(var param in data){
+ if (data.hasOwnProperty(param)) {
+ marker.push(param + ':' + data[param]);
+ }
+ }
+
+ if (marker.length || i === 0) {
+ marker.push(loc);
+ marker = marker.join('|');
+ parameters.push('markers=' + encodeURI(marker));
+ }
+ // New marker without styles
+ else {
+ marker = parameters.pop() + encodeURI('|' + loc);
+ parameters.push(marker);
+ }
+ }
+ }
+
+ /** Map Styles **/
+ if (styles) {
+ for (var i = 0; i < styles.length; i++) {
+ var styleRule = [];
+ if (styles[i].featureType){
+ styleRule.push('feature:' + styles[i].featureType.toLowerCase());
+ }
+
+ if (styles[i].elementType) {
+ styleRule.push('element:' + styles[i].elementType.toLowerCase());
+ }
+
+ for (var j = 0; j < styles[i].stylers.length; j++) {
+ for (var p in styles[i].stylers[j]) {
+ var ruleArg = styles[i].stylers[j][p];
+ if (p == 'hue' || p == 'color') {
+ ruleArg = '0x' + ruleArg.substring(1);
+ }
+ styleRule.push(p + ':' + ruleArg);
+ }
+ }
+
+ var rule = styleRule.join('|');
+ if (rule != '') {
+ parameters.push('style=' + rule);
+ }
+ }
+ }
+
+ /** Polylines **/
+ function parseColor(color, opacity) {
+ if (color[0] === '#'){
+ color = color.replace('#', '0x');
+
+ if (opacity) {
+ opacity = parseFloat(opacity);
+ opacity = Math.min(1, Math.max(opacity, 0));
+ if (opacity === 0) {
+ return '0x00000000';
+ }
+ opacity = (opacity * 255).toString(16);
+ if (opacity.length === 1) {
+ opacity += opacity;
+ }
+
+ color = color.slice(0,8) + opacity;
+ }
+ }
+ return color;
+ }
+
+ if (polyline) {
+ data = polyline;
+ polyline = [];
+
+ if (data.strokeWeight) {
+ polyline.push('weight:' + parseInt(data.strokeWeight, 10));
+ }
+
+ if (data.strokeColor) {
+ var color = parseColor(data.strokeColor, data.strokeOpacity);
+ polyline.push('color:' + color);
+ }
+
+ if (data.fillColor) {
+ var fillcolor = parseColor(data.fillColor, data.fillOpacity);
+ polyline.push('fillcolor:' + fillcolor);
+ }
+
+ var path = data.path;
+ if (path.join) {
+ for (var j=0, pos; pos=path[j]; j++) {
+ polyline.push(pos.join(','));
+ }
+ }
+ else {
+ polyline.push('enc:' + path);
+ }
+
+ polyline = polyline.join('|');
+ parameters.push('path=' + encodeURI(polyline));
+ }
+
+ /** Retina support **/
+ var dpi = window.devicePixelRatio || 1;
+ parameters.push('scale=' + dpi);
+
+ parameters = parameters.join('&');
+ return static_root + parameters;
+};
+
+GMaps.prototype.addMapType = function(mapTypeId, options) {
+ if (options.hasOwnProperty("getTileUrl") && typeof(options["getTileUrl"]) == "function") {
+ options.tileSize = options.tileSize || new google.maps.Size(256, 256);
+
+ var mapType = new google.maps.ImageMapType(options);
+
+ this.map.mapTypes.set(mapTypeId, mapType);
+ }
+ else {
+ throw "'getTileUrl' function required.";
+ }
+};
+
+GMaps.prototype.addOverlayMapType = function(options) {
+ if (options.hasOwnProperty("getTile") && typeof(options["getTile"]) == "function") {
+ var overlayMapTypeIndex = options.index;
+
+ delete options.index;
+
+ this.map.overlayMapTypes.insertAt(overlayMapTypeIndex, options);
+ }
+ else {
+ throw "'getTile' function required.";
+ }
+};
+
+GMaps.prototype.removeOverlayMapType = function(overlayMapTypeIndex) {
+ this.map.overlayMapTypes.removeAt(overlayMapTypeIndex);
+};
+
+GMaps.prototype.addStyle = function(options) {
+ var styledMapType = new google.maps.StyledMapType(options.styles, { name: options.styledMapName });
+
+ this.map.mapTypes.set(options.mapTypeId, styledMapType);
+};
+
+GMaps.prototype.setStyle = function(mapTypeId) {
+ this.map.setMapTypeId(mapTypeId);
+};
+
+GMaps.prototype.createPanorama = function(streetview_options) {
+ if (!streetview_options.hasOwnProperty('lat') || !streetview_options.hasOwnProperty('lng')) {
+ streetview_options.lat = this.getCenter().lat();
+ streetview_options.lng = this.getCenter().lng();
+ }
+
+ this.panorama = GMaps.createPanorama(streetview_options);
+
+ this.map.setStreetView(this.panorama);
+
+ return this.panorama;
+};
+
+GMaps.createPanorama = function(options) {
+ var el = getElementById(options.el, options.lowgo);
+
+ options.position = new google.maps.LatLng(options.lat, options.lng);
+
+ delete options.el;
+ delete options.lowgo;
+ delete options.lat;
+ delete options.lng;
+
+ var streetview_events = ['closeclick', 'links_changed', 'pano_changed', 'position_changed', 'pov_changed', 'resize', 'visible_changed'],
+ streetview_options = extend_object({visible : true}, options);
+
+ for (var i = 0; i < streetview_events.length; i++) {
+ delete streetview_options[streetview_events[i]];
+ }
+
+ var panorama = new google.maps.StreetViewPanorama(el, streetview_options);
+
+ for (var i = 0; i < streetview_events.length; i++) {
+ (function(object, name) {
+ if (options[name]) {
+ google.maps.event.addListener(object, name, function(){
+ options[name].apply(this);
+ });
+ }
+ })(panorama, streetview_events[i]);
+ }
+
+ return panorama;
+};
+
+GMaps.prototype.on = function(event_name, handler) {
+ return GMaps.on(event_name, this, handler);
+};
+
+GMaps.prototype.off = function(event_name) {
+ GMaps.off(event_name, this);
+};
+
+GMaps.prototype.once = function(event_name, handler) {
+ return GMaps.once(event_name, this, handler);
+};
+
+GMaps.custom_events = ['marker_added', 'marker_removed', 'polyline_added', 'polyline_removed', 'polygon_added', 'polygon_removed', 'geolocated', 'geolocation_failed'];
+
+GMaps.on = function(event_name, object, handler) {
+ if (GMaps.custom_events.indexOf(event_name) == -1) {
+ if(object instanceof GMaps) object = object.map;
+ return google.maps.event.addListener(object, event_name, handler);
+ }
+ else {
+ var registered_event = {
+ handler : handler,
+ eventName : event_name
+ };
+
+ object.registered_events[event_name] = object.registered_events[event_name] || [];
+ object.registered_events[event_name].push(registered_event);
+
+ return registered_event;
+ }
+};
+
+GMaps.off = function(event_name, object) {
+ if (GMaps.custom_events.indexOf(event_name) == -1) {
+ if(object instanceof GMaps) object = object.map;
+ google.maps.event.clearListeners(object, event_name);
+ }
+ else {
+ object.registered_events[event_name] = [];
+ }
+};
+
+GMaps.once = function(event_name, object, handler) {
+ if (GMaps.custom_events.indexOf(event_name) == -1) {
+ if(object instanceof GMaps) object = object.map;
+ return google.maps.event.addListenerOnce(object, event_name, handler);
+ }
+};
+
+GMaps.fire = function(event_name, object, scope) {
+ if (GMaps.custom_events.indexOf(event_name) == -1) {
+ google.maps.event.trigger(object, event_name, Array.prototype.slice.apply(arguments).slice(2));
+ }
+ else {
+ if(event_name in scope.registered_events) {
+ var firing_events = scope.registered_events[event_name];
+
+ for(var i = 0; i < firing_events.length; i++) {
+ (function(handler, scope, object) {
+ handler.apply(scope, [object]);
+ })(firing_events[i]['handler'], scope, object);
+ }
+ }
+ }
+};
+
+GMaps.geolocate = function(options) {
+ var complete_callback = options.always || options.complete;
+
+ if (navigator.geolocation) {
+ navigator.geolocation.getCurrentPosition(function(position) {
+ options.success(position);
+
+ if (complete_callback) {
+ complete_callback();
+ }
+ }, function(error) {
+ options.error(error);
+
+ if (complete_callback) {
+ complete_callback();
+ }
+ }, options.options);
+ }
+ else {
+ options.not_supported();
+
+ if (complete_callback) {
+ complete_callback();
+ }
+ }
+};
+
+GMaps.geocode = function(options) {
+ this.geocoder = new google.maps.Geocoder();
+ var callback = options.callback;
+ if (options.hasOwnProperty('lat') && options.hasOwnProperty('lng')) {
+ options.latLng = new google.maps.LatLng(options.lat, options.lng);
+ }
+
+ delete options.lat;
+ delete options.lng;
+ delete options.callback;
+
+ this.geocoder.geocode(options, function(results, status) {
+ callback(results, status);
+ });
+};
+
+if (typeof window.google === 'object' && window.google.maps) {
+ //==========================
+ // Polygon containsLatLng
+ // ://github.com/tparkin/Google-Maps-Point-in-Polygon
+ // Poygon getBounds extension - google-maps-extensions
+ // http://code.google.com/p/google-maps-extensions/source/browse/google.maps.Polygon.getBounds.js
+ if (!google.maps.Polygon.prototype.getBounds) {
+ google.maps.Polygon.prototype.getBounds = function(latLng) {
+ var bounds = new google.maps.LatLngBounds();
+ var paths = this.getPaths();
+ var path;
+
+ for (var p = 0; p < paths.getLength(); p++) {
+ path = paths.getAt(p);
+ for (var i = 0; i < path.getLength(); i++) {
+ bounds.extend(path.getAt(i));
+ }
+ }
+
+ return bounds;
+ };
+ }
+
+ if (!google.maps.Polygon.prototype.containsLatLng) {
+ // Polygon containsLatLng - method to determine if a latLng is within a polygon
+ google.maps.Polygon.prototype.containsLatLng = function(latLng) {
+ // Exclude points outside of bounds as there is no way they are in the poly
+ var bounds = this.getBounds();
+
+ if (bounds !== null && !bounds.contains(latLng)) {
+ return false;
+ }
+
+ // Raycast point in polygon method
+ var inPoly = false;
+
+ var numPaths = this.getPaths().getLength();
+ for (var p = 0; p < numPaths; p++) {
+ var path = this.getPaths().getAt(p);
+ var numPoints = path.getLength();
+ var j = numPoints - 1;
+
+ for (var i = 0; i < numPoints; i++) {
+ var vertex1 = path.getAt(i);
+ var vertex2 = path.getAt(j);
+
+ if (vertex1.lng() < latLng.lng() && vertex2.lng() >= latLng.lng() || vertex2.lng() < latLng.lng() && vertex1.lng() >= latLng.lng()) {
+ if (vertex1.lat() + (latLng.lng() - vertex1.lng()) / (vertex2.lng() - vertex1.lng()) * (vertex2.lat() - vertex1.lat()) < latLng.lat()) {
+ inPoly = !inPoly;
+ }
+ }
+
+ j = i;
+ }
+ }
+
+ return inPoly;
+ };
+ }
+
+ if (!google.maps.Circle.prototype.containsLatLng) {
+ google.maps.Circle.prototype.containsLatLng = function(latLng) {
+ if (google.maps.geometry) {
+ return google.maps.geometry.spherical.computeDistanceBetween(this.getCenter(), latLng) <= this.getRadius();
+ }
+ else {
+ return true;
+ }
+ };
+ }
+
+ google.maps.Rectangle.prototype.containsLatLng = function(latLng) {
+ return this.getBounds().contains(latLng);
+ };
+
+ google.maps.LatLngBounds.prototype.containsLatLng = function(latLng) {
+ return this.contains(latLng);
+ };
+
+ google.maps.Marker.prototype.setFences = function(fences) {
+ this.fences = fences;
+ };
+
+ google.maps.Marker.prototype.addFence = function(fence) {
+ this.fences.push(fence);
+ };
+
+ google.maps.Marker.prototype.getId = function() {
+ return this['__gm_id'];
+ };
+}
+
+//==========================
+// Array indexOf
+// ://developer.mozilla.org/en-US/docs/JavaScript/Reference/Global_Objects/Array/indexOf
+if (!Array.prototype.indexOf) {
+ Array.prototype.indexOf = function (searchElement /*, fromIndex */ ) {
+ "use strict";
+ if (this == null) {
+ throw new TypeError();
+ }
+ var t = Object(this);
+ var len = t.length >>> 0;
+ if (len === 0) {
+ return -1;
+ }
+ var n = 0;
+ if (arguments.length > 1) {
+ n = Number(arguments[1]);
+ if (n != n) { // shortcut for verifying if it's NaN
+ n = 0;
+ } else if (n != 0 && n != Infinity && n != -Infinity) {
+ n = (n > 0 || -1) * Math.floor(Math.abs(n));
+ }
+ }
+ if (n >= len) {
+ return -1;
+ }
+ var k = n >= 0 ? n : Math.max(len - Math.abs(n), 0);
+ for (; k < len; k++) {
+ if (k in t && t[k] === searchElement) {
+ return k;
+ }
+ }
+ return -1;
+ }
+}
+
+return GMaps;
+}));
diff --git a/public/static/home/assets/js/modernizr.custom.79639.js b/public/static/home/assets/js/modernizr.custom.79639.js
new file mode 100644
index 0000000..af98011
--- /dev/null
+++ b/public/static/home/assets/js/modernizr.custom.79639.js
@@ -0,0 +1,4 @@
+/* Modernizr 2.5.3 (Custom Build) | MIT & BSD
+ * Build: http://www.modernizr.com/download/#-cssanimations-csstransforms-csstransforms3d-csstransitions-shiv-cssclasses-teststyles-testprop-testallprops-prefixes-domprefixes
+ */
+;window.Modernizr=function(a,b,c){function z(a){j.cssText=a}function A(a,b){return z(m.join(a+";")+(b||""))}function B(a,b){return typeof a===b}function C(a,b){return!!~(""+a).indexOf(b)}function D(a,b){for(var d in a)if(j[a[d]]!==c)return b=="pfx"?a[d]:!0;return!1}function E(a,b,d){for(var e in a){var f=b[a[e]];if(f!==c)return d===!1?a[e]:B(f,"function")?f.bind(d||b):f}return!1}function F(a,b,c){var d=a.charAt(0).toUpperCase()+a.substr(1),e=(a+" "+o.join(d+" ")+d).split(" ");return B(b,"string")||B(b,"undefined")?D(e,b):(e=(a+" "+p.join(d+" ")+d).split(" "),E(e,b,c))}var d="2.5.3",e={},f=!0,g=b.documentElement,h="modernizr",i=b.createElement(h),j=i.style,k,l={}.toString,m=" -webkit- -moz- -o- -ms- ".split(" "),n="Webkit Moz O ms",o=n.split(" "),p=n.toLowerCase().split(" "),q={},r={},s={},t=[],u=t.slice,v,w=function(a,c,d,e){var f,i,j,k=b.createElement("div"),l=b.body,m=l?l:b.createElement("body");if(parseInt(d,10))while(d--)j=b.createElement("div"),j.id=e?e[d]:h+(d+1),k.appendChild(j);return f=["­","<style>",a,"</style>"].join(""),k.id=h,(l?k:m).innerHTML+=f,m.appendChild(k),l||(m.style.background="",g.appendChild(m)),i=c(k,a),l?k.parentNode.removeChild(k):m.parentNode.removeChild(m),!!i},x={}.hasOwnProperty,y;!B(x,"undefined")&&!B(x.call,"undefined")?y=function(a,b){return x.call(a,b)}:y=function(a,b){return b in a&&B(a.constructor.prototype[b],"undefined")},Function.prototype.bind||(Function.prototype.bind=function(b){var c=this;if(typeof c!="function")throw new TypeError;var d=u.call(arguments,1),e=function(){if(this instanceof e){var a=function(){};a.prototype=c.prototype;var f=new a,g=c.apply(f,d.concat(u.call(arguments)));return Object(g)===g?g:f}return c.apply(b,d.concat(u.call(arguments)))};return e});var G=function(a,c){var d=a.join(""),f=c.length;w(d,function(a,c){var d=b.styleSheets[b.styleSheets.length-1],g=d?d.cssRules&&d.cssRules[0]?d.cssRules[0].cssText:d.cssText||"":"",h=a.childNodes,i={};while(f--)i[h[f].id]=h[f];e.csstransforms3d=(i.csstransforms3d&&i.csstransforms3d.offsetLeft)===9&&i.csstransforms3d.offsetHeight===3},f,c)}([,["@media (",m.join("transform-3d),("),h,")","{#csstransforms3d{left:9px;position:absolute;height:3px;}}"].join("")],[,"csstransforms3d"]);q.cssanimations=function(){return F("animationName")},q.csstransforms=function(){return!!F("transform")},q.csstransforms3d=function(){var a=!!F("perspective");return a&&"webkitPerspective"in g.style&&(a=e.csstransforms3d),a},q.csstransitions=function(){return F("transition")};for(var H in q)y(q,H)&&(v=H.toLowerCase(),e[v]=q[H](),t.push((e[v]?"":"no-")+v));return z(""),i=k=null,function(a,b){function g(a,b){var c=a.createElement("p"),d=a.getElementsByTagName("head")[0]||a.documentElement;return c.innerHTML="x<style>"+b+"</style>",d.insertBefore(c.lastChild,d.firstChild)}function h(){var a=k.elements;return typeof a=="string"?a.split(" "):a}function i(a){var b={},c=a.createElement,e=a.createDocumentFragment,f=e();a.createElement=function(a){var e=(b[a]||(b[a]=c(a))).cloneNode();return k.shivMethods&&e.canHaveChildren&&!d.test(a)?f.appendChild(e):e},a.createDocumentFragment=Function("h,f","return function(){var n=f.cloneNode(),c=n.createElement;h.shivMethods&&("+h().join().replace(/\w+/g,function(a){return b[a]=c(a),f.createElement(a),'c("'+a+'")'})+");return n}")(k,f)}function j(a){var b;return a.documentShived?a:(k.shivCSS&&!e&&(b=!!g(a,"article,aside,details,figcaption,figure,footer,header,hgroup,nav,section{display:block}audio{display:none}canvas,video{display:inline-block;*display:inline;*zoom:1}[hidden]{display:none}audio[controls]{display:inline-block;*display:inline;*zoom:1}mark{background:#FF0;color:#000}")),f||(b=!i(a)),b&&(a.documentShived=b),a)}var c=a.html5||{},d=/^<|^(?:button|form|map|select|textarea)$/i,e,f;(function(){var a=b.createElement("a");a.innerHTML="<xyz></xyz>",e="hidden"in a,f=a.childNodes.length==1||function(){try{b.createElement("a")}catch(a){return!0}var c=b.createDocumentFragment();return typeof c.cloneNode=="undefined"||typeof c.createDocumentFragment=="undefined"||typeof c.createElement=="undefined"}()})();var k={elements:c.elements||"abbr article aside audio bdi canvas data datalist details figcaption figure footer header hgroup mark meter nav output progress section summary time video",shivCSS:c.shivCSS!==!1,shivMethods:c.shivMethods!==!1,type:"default",shivDocument:j};a.html5=k,j(b)}(this,b),e._version=d,e._prefixes=m,e._domPrefixes=p,e._cssomPrefixes=o,e.testProp=function(a){return D([a])},e.testAllProps=F,e.testStyles=w,g.className=g.className.replace(/(^|\s)no-js(\s|$)/,"$1$2")+(f?" js "+t.join(" "):""),e}(this,this.document);
\ No newline at end of file
diff --git a/public/static/home/assets/js/owl.carousel.min.js b/public/static/home/assets/js/owl.carousel.min.js
new file mode 100644
index 0000000..9279a46
--- /dev/null
+++ b/public/static/home/assets/js/owl.carousel.min.js
@@ -0,0 +1,7 @@
+/**
+ * Owl Carousel v2.2.1
+ * Copyright 2013-2018 David Deutsch
+ * Licensed under ()
+ */
+!function(a,b,c,d){function e(b,c){this.settings=null,this.options=a.extend({},e.Defaults,c),this.$element=a(b),this._handlers={},this._plugins={},this._supress={},this._current=null,this._speed=null,this._coordinates=[],this._breakpoint=null,this._width=null,this._items=[],this._clones=[],this._mergers=[],this._widths=[],this._invalidated={},this._pipe=[],this._drag={time:null,target:null,pointer:null,stage:{start:null,current:null},direction:null},this._states={current:{},tags:{initializing:["busy"],animating:["busy"],dragging:["interacting"]}},a.each(["onResize","onThrottledResize"],a.proxy(function(b,c){this._handlers[c]=a.proxy(this[c],this)},this)),a.each(e.Plugins,a.proxy(function(a,b){this._plugins[a.charAt(0).toLowerCase()+a.slice(1)]=new b(this)},this)),a.each(e.Workers,a.proxy(function(b,c){this._pipe.push({filter:c.filter,run:a.proxy(c.run,this)})},this)),this.setup(),this.initialize()}e.Defaults={items:3,loop:!1,center:!1,rewind:!1,mouseDrag:!0,touchDrag:!0,pullDrag:!0,freeDrag:!1,margin:0,stagePadding:0,merge:!1,mergeFit:!0,autoWidth:!1,startPosition:0,rtl:!1,smartSpeed:250,fluidSpeed:!1,dragEndSpeed:!1,responsive:{},responsiveRefreshRate:200,responsiveBaseElement:b,fallbackEasing:"swing",info:!1,nestedItemSelector:!1,itemElement:"div",stageElement:"div",refreshClass:"owl-refresh",loadedClass:"owl-loaded",loadingClass:"owl-loading",rtlClass:"owl-rtl",responsiveClass:"owl-responsive",dragClass:"owl-drag",itemClass:"owl-item",stageClass:"owl-stage",stageOuterClass:"owl-stage-outer",grabClass:"owl-grab"},e.Width={Default:"default",Inner:"inner",Outer:"outer"},e.Type={Event:"event",State:"state"},e.Plugins={},e.Workers=[{filter:["width","settings"],run:function(){this._width=this.$element.width()}},{filter:["width","items","settings"],run:function(a){a.current=this._items&&this._items[this.relative(this._current)]}},{filter:["items","settings"],run:function(){this.$stage.children(".cloned").remove()}},{filter:["width","items","settings"],run:function(a){var b=this.settings.margin||"",c=!this.settings.autoWidth,d=this.settings.rtl,e={width:"auto","margin-left":d?b:"","margin-right":d?"":b};!c&&this.$stage.children().css(e),a.css=e}},{filter:["width","items","settings"],run:function(a){var b=(this.width()/this.settings.items).toFixed(3)-this.settings.margin,c=null,d=this._items.length,e=!this.settings.autoWidth,f=[];for(a.items={merge:!1,width:b};d--;)c=this._mergers[d],c=this.settings.mergeFit&&Math.min(c,this.settings.items)||c,a.items.merge=c>1||a.items.merge,f[d]=e?b*c:this._items[d].width();this._widths=f}},{filter:["items","settings"],run:function(){var b=[],c=this._items,d=this.settings,e=Math.max(2*d.items,4),f=2*Math.ceil(c.length/2),g=d.loop&&c.length?d.rewind?e:Math.max(e,f):0,h="",i="";for(g/=2;g--;)b.push(this.normalize(b.length/2,!0)),h+=c[b[b.length-1]][0].outerHTML,b.push(this.normalize(c.length-1-(b.length-1)/2,!0)),i=c[b[b.length-1]][0].outerHTML+i;this._clones=b,a(h).addClass("cloned").appendTo(this.$stage),a(i).addClass("cloned").prependTo(this.$stage)}},{filter:["width","items","settings"],run:function(){for(var a=this.settings.rtl?1:-1,b=this._clones.length+this._items.length,c=-1,d=0,e=0,f=[];++c<b;)d=f[c-1]||0,e=this._widths[this.relative(c)]+this.settings.margin,f.push(d+e*a);this._coordinates=f}},{filter:["width","items","settings"],run:function(){var a=this.settings.stagePadding,b=this._coordinates,c={width:Math.ceil(Math.abs(b[b.length-1]))+2*a,"padding-left":a||"","padding-right":a||""};this.$stage.css(c)}},{filter:["width","items","settings"],run:function(a){var b=this._coordinates.length,c=!this.settings.autoWidth,d=this.$stage.children();if(c&&a.items.merge)for(;b--;)a.css.width=this._widths[this.relative(b)],d.eq(b).css(a.css);else c&&(a.css.width=a.items.width,d.css(a.css))}},{filter:["items"],run:function(){this._coordinates.length<1&&this.$stage.removeAttr("style")}},{filter:["width","items","settings"],run:function(a){a.current=a.current?this.$stage.children().index(a.current):0,a.current=Math.max(this.minimum(),Math.min(this.maximum(),a.current)),this.reset(a.current)}},{filter:["position"],run:function(){this.animate(this.coordinates(this._current))}},{filter:["width","position","items","settings"],run:function(){var a,b,c,d,e=this.settings.rtl?1:-1,f=2*this.settings.stagePadding,g=this.coordinates(this.current())+f,h=g+this.width()*e,i=[];for(c=0,d=this._coordinates.length;c<d;c++)a=this._coordinates[c-1]||0,b=Math.abs(this._coordinates[c])+f*e,(this.op(a,"<=",g)&&this.op(a,">",h)||this.op(b,"<",g)&&this.op(b,">",h))&&i.push(c);this.$stage.children(".active").removeClass("active"),this.$stage.children(":eq("+i.join("), :eq(")+")").addClass("active"),this.settings.center&&(this.$stage.children(".center").removeClass("center"),this.$stage.children().eq(this.current()).addClass("center"))}}],e.prototype.initialize=function(){if(this.enter("initializing"),this.trigger("initialize"),this.$element.toggleClass(this.settings.rtlClass,this.settings.rtl),this.settings.autoWidth&&!this.is("pre-loading")){var b,c,e;b=this.$element.find("img"),c=this.settings.nestedItemSelector?"."+this.settings.nestedItemSelector:d,e=this.$element.children(c).width(),b.length&&e<=0&&this.preloadAutoWidthImages(b)}this.$element.addClass(this.options.loadingClass),this.$stage=a("<"+this.settings.stageElement+' class="'+this.settings.stageClass+'"/>').wrap('<div class="'+this.settings.stageOuterClass+'"/>'),this.$element.append(this.$stage.parent()),this.replace(this.$element.children().not(this.$stage.parent())),this.$element.is(":visible")?this.refresh():this.invalidate("width"),this.$element.removeClass(this.options.loadingClass).addClass(this.options.loadedClass),this.registerEventHandlers(),this.leave("initializing"),this.trigger("initialized")},e.prototype.setup=function(){var b=this.viewport(),c=this.options.responsive,d=-1,e=null;c?(a.each(c,function(a){a<=b&&a>d&&(d=Number(a))}),e=a.extend({},this.options,c[d]),"function"==typeof e.stagePadding&&(e.stagePadding=e.stagePadding()),delete e.responsive,e.responsiveClass&&this.$element.attr("class",this.$element.attr("class").replace(new RegExp("("+this.options.responsiveClass+"-)\\S+\\s","g"),"$1"+d))):e=a.extend({},this.options),this.trigger("change",{property:{name:"settings",value:e}}),this._breakpoint=d,this.settings=e,this.invalidate("settings"),this.trigger("changed",{property:{name:"settings",value:this.settings}})},e.prototype.optionsLogic=function(){this.settings.autoWidth&&(this.settings.stagePadding=!1,this.settings.merge=!1)},e.prototype.prepare=function(b){var c=this.trigger("prepare",{content:b});return c.data||(c.data=a("<"+this.settings.itemElement+"/>").addClass(this.options.itemClass).append(b)),this.trigger("prepared",{content:c.data}),c.data},e.prototype.update=function(){for(var b=0,c=this._pipe.length,d=a.proxy(function(a){return this[a]},this._invalidated),e={};b<c;)(this._invalidated.all||a.grep(this._pipe[b].filter,d).length>0)&&this._pipe[b].run(e),b++;this._invalidated={},!this.is("valid")&&this.enter("valid")},e.prototype.width=function(a){switch(a=a||e.Width.Default){case e.Width.Inner:case e.Width.Outer:return this._width;default:return this._width-2*this.settings.stagePadding+this.settings.margin}},e.prototype.refresh=function(){this.enter("refreshing"),this.trigger("refresh"),this.setup(),this.optionsLogic(),this.$element.addClass(this.options.refreshClass),this.update(),this.$element.removeClass(this.options.refreshClass),this.leave("refreshing"),this.trigger("refreshed")},e.prototype.onThrottledResize=function(){b.clearTimeout(this.resizeTimer),this.resizeTimer=b.setTimeout(this._handlers.onResize,this.settings.responsiveRefreshRate)},e.prototype.onResize=function(){return!!this._items.length&&(this._width!==this.$element.width()&&(!!this.$element.is(":visible")&&(this.enter("resizing"),this.trigger("resize").isDefaultPrevented()?(this.leave("resizing"),!1):(this.invalidate("width"),this.refresh(),this.leave("resizing"),void this.trigger("resized")))))},e.prototype.registerEventHandlers=function(){a.support.transition&&this.$stage.on(a.support.transition.end+".owl.core",a.proxy(this.onTransitionEnd,this)),this.settings.responsive!==!1&&this.on(b,"resize",this._handlers.onThrottledResize),this.settings.mouseDrag&&(this.$element.addClass(this.options.dragClass),this.$stage.on("mousedown.owl.core",a.proxy(this.onDragStart,this)),this.$stage.on("dragstart.owl.core selectstart.owl.core",function(){return!1})),this.settings.touchDrag&&(this.$stage.on("touchstart.owl.core",a.proxy(this.onDragStart,this)),this.$stage.on("touchcancel.owl.core",a.proxy(this.onDragEnd,this)))},e.prototype.onDragStart=function(b){var d=null;3!==b.which&&(a.support.transform?(d=this.$stage.css("transform").replace(/.*\(|\)| /g,"").split(","),d={x:d[16===d.length?12:4],y:d[16===d.length?13:5]}):(d=this.$stage.position(),d={x:this.settings.rtl?d.left+this.$stage.width()-this.width()+this.settings.margin:d.left,y:d.top}),this.is("animating")&&(a.support.transform?this.animate(d.x):this.$stage.stop(),this.invalidate("position")),this.$element.toggleClass(this.options.grabClass,"mousedown"===b.type),this.speed(0),this._drag.time=(new Date).getTime(),this._drag.target=a(b.target),this._drag.stage.start=d,this._drag.stage.current=d,this._drag.pointer=this.pointer(b),a(c).on("mouseup.owl.core touchend.owl.core",a.proxy(this.onDragEnd,this)),a(c).one("mousemove.owl.core touchmove.owl.core",a.proxy(function(b){var d=this.difference(this._drag.pointer,this.pointer(b));a(c).on("mousemove.owl.core touchmove.owl.core",a.proxy(this.onDragMove,this)),Math.abs(d.x)<Math.abs(d.y)&&this.is("valid")||(b.preventDefault(),this.enter("dragging"),this.trigger("drag"))},this)))},e.prototype.onDragMove=function(a){var b=null,c=null,d=null,e=this.difference(this._drag.pointer,this.pointer(a)),f=this.difference(this._drag.stage.start,e);this.is("dragging")&&(a.preventDefault(),this.settings.loop?(b=this.coordinates(this.minimum()),c=this.coordinates(this.maximum()+1)-b,f.x=((f.x-b)%c+c)%c+b):(b=this.settings.rtl?this.coordinates(this.maximum()):this.coordinates(this.minimum()),c=this.settings.rtl?this.coordinates(this.minimum()):this.coordinates(this.maximum()),d=this.settings.pullDrag?-1*e.x/5:0,f.x=Math.max(Math.min(f.x,b+d),c+d)),this._drag.stage.current=f,this.animate(f.x))},e.prototype.onDragEnd=function(b){var d=this.difference(this._drag.pointer,this.pointer(b)),e=this._drag.stage.current,f=d.x>0^this.settings.rtl?"left":"right";a(c).off(".owl.core"),this.$element.removeClass(this.options.grabClass),(0!==d.x&&this.is("dragging")||!this.is("valid"))&&(this.speed(this.settings.dragEndSpeed||this.settings.smartSpeed),this.current(this.closest(e.x,0!==d.x?f:this._drag.direction)),this.invalidate("position"),this.update(),this._drag.direction=f,(Math.abs(d.x)>3||(new Date).getTime()-this._drag.time>300)&&this._drag.target.one("click.owl.core",function(){return!1})),this.is("dragging")&&(this.leave("dragging"),this.trigger("dragged"))},e.prototype.closest=function(b,c){var d=-1,e=30,f=this.width(),g=this.coordinates();return this.settings.freeDrag||a.each(g,a.proxy(function(a,h){return"left"===c&&b>h-e&&b<h+e?d=a:"right"===c&&b>h-f-e&&b<h-f+e?d=a+1:this.op(b,"<",h)&&this.op(b,">",g[a+1]||h-f)&&(d="left"===c?a+1:a),d===-1},this)),this.settings.loop||(this.op(b,">",g[this.minimum()])?d=b=this.minimum():this.op(b,"<",g[this.maximum()])&&(d=b=this.maximum())),d},e.prototype.animate=function(b){var c=this.speed()>0;this.is("animating")&&this.onTransitionEnd(),c&&(this.enter("animating"),this.trigger("translate")),a.support.transform3d&&a.support.transition?this.$stage.css({transform:"translate3d("+b+"px,0px,0px)",transition:this.speed()/1e3+"s"}):c?this.$stage.animate({left:b+"px"},this.speed(),this.settings.fallbackEasing,a.proxy(this.onTransitionEnd,this)):this.$stage.css({left:b+"px"})},e.prototype.is=function(a){return this._states.current[a]&&this._states.current[a]>0},e.prototype.current=function(a){if(a===d)return this._current;if(0===this._items.length)return d;if(a=this.normalize(a),this._current!==a){var b=this.trigger("change",{property:{name:"position",value:a}});b.data!==d&&(a=this.normalize(b.data)),this._current=a,this.invalidate("position"),this.trigger("changed",{property:{name:"position",value:this._current}})}return this._current},e.prototype.invalidate=function(b){return"string"===a.type(b)&&(this._invalidated[b]=!0,this.is("valid")&&this.leave("valid")),a.map(this._invalidated,function(a,b){return b})},e.prototype.reset=function(a){a=this.normalize(a),a!==d&&(this._speed=0,this._current=a,this.suppress(["translate","translated"]),this.animate(this.coordinates(a)),this.release(["translate","translated"]))},e.prototype.normalize=function(a,b){var c=this._items.length,e=b?0:this._clones.length;return!this.isNumeric(a)||c<1?a=d:(a<0||a>=c+e)&&(a=((a-e/2)%c+c)%c+e/2),a},e.prototype.relative=function(a){return a-=this._clones.length/2,this.normalize(a,!0)},e.prototype.maximum=function(a){var b,c,d,e=this.settings,f=this._coordinates.length;if(e.loop)f=this._clones.length/2+this._items.length-1;else if(e.autoWidth||e.merge){for(b=this._items.length,c=this._items[--b].width(),d=this.$element.width();b--&&(c+=this._items[b].width()+this.settings.margin,!(c>d)););f=b+1}else f=e.center?this._items.length-1:this._items.length-e.items;return a&&(f-=this._clones.length/2),Math.max(f,0)},e.prototype.minimum=function(a){return a?0:this._clones.length/2},e.prototype.items=function(a){return a===d?this._items.slice():(a=this.normalize(a,!0),this._items[a])},e.prototype.mergers=function(a){return a===d?this._mergers.slice():(a=this.normalize(a,!0),this._mergers[a])},e.prototype.clones=function(b){var c=this._clones.length/2,e=c+this._items.length,f=function(a){return a%2===0?e+a/2:c-(a+1)/2};return b===d?a.map(this._clones,function(a,b){return f(b)}):a.map(this._clones,function(a,c){return a===b?f(c):null})},e.prototype.speed=function(a){return a!==d&&(this._speed=a),this._speed},e.prototype.coordinates=function(b){var c,e=1,f=b-1;return b===d?a.map(this._coordinates,a.proxy(function(a,b){return this.coordinates(b)},this)):(this.settings.center?(this.settings.rtl&&(e=-1,f=b+1),c=this._coordinates[b],c+=(this.width()-c+(this._coordinates[f]||0))/2*e):c=this._coordinates[f]||0,c=Math.ceil(c))},e.prototype.duration=function(a,b,c){return 0===c?0:Math.min(Math.max(Math.abs(b-a),1),6)*Math.abs(c||this.settings.smartSpeed)},e.prototype.to=function(a,b){var c=this.current(),d=null,e=a-this.relative(c),f=(e>0)-(e<0),g=this._items.length,h=this.minimum(),i=this.maximum();this.settings.loop?(!this.settings.rewind&&Math.abs(e)>g/2&&(e+=f*-1*g),a=c+e,d=((a-h)%g+g)%g+h,d!==a&&d-e<=i&&d-e>0&&(c=d-e,a=d,this.reset(c))):this.settings.rewind?(i+=1,a=(a%i+i)%i):a=Math.max(h,Math.min(i,a)),this.speed(this.duration(c,a,b)),this.current(a),this.$element.is(":visible")&&this.update()},e.prototype.next=function(a){a=a||!1,this.to(this.relative(this.current())+1,a)},e.prototype.prev=function(a){a=a||!1,this.to(this.relative(this.current())-1,a)},e.prototype.onTransitionEnd=function(a){if(a!==d&&(a.stopPropagation(),(a.target||a.srcElement||a.originalTarget)!==this.$stage.get(0)))return!1;this.leave("animating"),this.trigger("translated")},e.prototype.viewport=function(){var d;return this.options.responsiveBaseElement!==b?d=a(this.options.responsiveBaseElement).width():b.innerWidth?d=b.innerWidth:c.documentElement&&c.documentElement.clientWidth?d=c.documentElement.clientWidth:console.warn("Can not detect viewport width."),d},e.prototype.replace=function(b){this.$stage.empty(),this._items=[],b&&(b=b instanceof jQuery?b:a(b)),this.settings.nestedItemSelector&&(b=b.find("."+this.settings.nestedItemSelector)),b.filter(function(){return 1===this.nodeType}).each(a.proxy(function(a,b){b=this.prepare(b),this.$stage.append(b),this._items.push(b),this._mergers.push(1*b.find("[data-merge]").addBack("[data-merge]").attr("data-merge")||1)},this)),this.reset(this.isNumeric(this.settings.startPosition)?this.settings.startPosition:0),this.invalidate("items")},e.prototype.add=function(b,c){var e=this.relative(this._current);c=c===d?this._items.length:this.normalize(c,!0),b=b instanceof jQuery?b:a(b),this.trigger("add",{content:b,position:c}),b=this.prepare(b),0===this._items.length||c===this._items.length?(0===this._items.length&&this.$stage.append(b),0!==this._items.length&&this._items[c-1].after(b),this._items.push(b),this._mergers.push(1*b.find("[data-merge]").addBack("[data-merge]").attr("data-merge")||1)):(this._items[c].before(b),this._items.splice(c,0,b),this._mergers.splice(c,0,1*b.find("[data-merge]").addBack("[data-merge]").attr("data-merge")||1)),this._items[e]&&this.reset(this._items[e].index()),this.invalidate("items"),this.trigger("added",{content:b,position:c})},e.prototype.remove=function(a){a=this.normalize(a,!0),a!==d&&(this.trigger("remove",{content:this._items[a],position:a}),this._items[a].remove(),this._items.splice(a,1),this._mergers.splice(a,1),this.invalidate("items"),this.trigger("removed",{content:null,position:a}))},e.prototype.preloadAutoWidthImages=function(b){b.each(a.proxy(function(b,c){this.enter("pre-loading"),c=a(c),a(new Image).one("load",a.proxy(function(a){c.attr("src",a.target.src),c.css("opacity",1),this.leave("pre-loading"),!this.is("pre-loading")&&!this.is("initializing")&&this.refresh()},this)).attr("src",c.attr("src")||c.attr("data-src")||c.attr("data-src-retina"))},this))},e.prototype.destroy=function(){this.$element.off(".owl.core"),this.$stage.off(".owl.core"),a(c).off(".owl.core"),this.settings.responsive!==!1&&(b.clearTimeout(this.resizeTimer),this.off(b,"resize",this._handlers.onThrottledResize));for(var d in this._plugins)this._plugins[d].destroy();this.$stage.children(".cloned").remove(),this.$stage.unwrap(),this.$stage.children().contents().unwrap(),this.$stage.children().unwrap(),this.$element.removeClass(this.options.refreshClass).removeClass(this.options.loadingClass).removeClass(this.options.loadedClass).removeClass(this.options.rtlClass).removeClass(this.options.dragClass).removeClass(this.options.grabClass).attr("class",this.$element.attr("class").replace(new RegExp(this.options.responsiveClass+"-\\S+\\s","g"),"")).removeData("owl.carousel")},e.prototype.op=function(a,b,c){var d=this.settings.rtl;switch(b){case"<":return d?a>c:a<c;case">":return d?a<c:a>c;case">=":return d?a<=c:a>=c;case"<=":return d?a>=c:a<=c}},e.prototype.on=function(a,b,c,d){a.addEventListener?a.addEventListener(b,c,d):a.attachEvent&&a.attachEvent("on"+b,c)},e.prototype.off=function(a,b,c,d){a.removeEventListener?a.removeEventListener(b,c,d):a.detachEvent&&a.detachEvent("on"+b,c)},e.prototype.trigger=function(b,c,d,f,g){var h={item:{count:this._items.length,index:this.current()}},i=a.camelCase(a.grep(["on",b,d],function(a){return a}).join("-").toLowerCase()),j=a.Event([b,"owl",d||"carousel"].join(".").toLowerCase(),a.extend({relatedTarget:this},h,c));return this._supress[b]||(a.each(this._plugins,function(a,b){b.onTrigger&&b.onTrigger(j)}),this.register({type:e.Type.Event,name:b}),this.$element.trigger(j),this.settings&&"function"==typeof this.settings[i]&&this.settings[i].call(this,j)),j},e.prototype.enter=function(b){a.each([b].concat(this._states.tags[b]||[]),a.proxy(function(a,b){this._states.current[b]===d&&(this._states.current[b]=0),this._states.current[b]++},this))},e.prototype.leave=function(b){a.each([b].concat(this._states.tags[b]||[]),a.proxy(function(a,b){this._states.current[b]--},this))},e.prototype.register=function(b){if(b.type===e.Type.Event){if(a.event.special[b.name]||(a.event.special[b.name]={}),!a.event.special[b.name].owl){var c=a.event.special[b.name]._default;a.event.special[b.name]._default=function(a){return!c||!c.apply||a.namespace&&a.namespace.indexOf("owl")!==-1?a.namespace&&a.namespace.indexOf("owl")>-1:c.apply(this,arguments)},a.event.special[b.name].owl=!0}}else b.type===e.Type.State&&(this._states.tags[b.name]?this._states.tags[b.name]=this._states.tags[b.name].concat(b.tags):this._states.tags[b.name]=b.tags,this._states.tags[b.name]=a.grep(this._states.tags[b.name],a.proxy(function(c,d){return a.inArray(c,this._states.tags[b.name])===d},this)))},e.prototype.suppress=function(b){a.each(b,a.proxy(function(a,b){this._supress[b]=!0},this))},e.prototype.release=function(b){a.each(b,a.proxy(function(a,b){delete this._supress[b]},this))},e.prototype.pointer=function(a){var c={x:null,y:null};return a=a.originalEvent||a||b.event,a=a.touches&&a.touches.length?a.touches[0]:a.changedTouches&&a.changedTouches.length?a.changedTouches[0]:a,a.pageX?(c.x=a.pageX,c.y=a.pageY):(c.x=a.clientX,c.y=a.clientY),c},e.prototype.isNumeric=function(a){return!isNaN(parseFloat(a))},e.prototype.difference=function(a,b){return{x:a.x-b.x,y:a.y-b.y}},a.fn.owlCarousel=function(b){var c=Array.prototype.slice.call(arguments,1);return this.each(function(){var d=a(this),f=d.data("owl.carousel");f||(f=new e(this,"object"==typeof b&&b),d.data("owl.carousel",f),a.each(["next","prev","to","destroy","refresh","replace","add","remove"],function(b,c){f.register({type:e.Type.Event,name:c}),f.$element.on(c+".owl.carousel.core",a.proxy(function(a){a.namespace&&a.relatedTarget!==this&&(this.suppress([c]),f[c].apply(this,[].slice.call(arguments,1)),this.release([c]))},f))})),"string"==typeof b&&"_"!==b.charAt(0)&&f[b].apply(f,c)})},a.fn.owlCarousel.Constructor=e}(window.Zepto||window.jQuery,window,document),function(a,b,c,d){var e=function(b){this._core=b,this._interval=null,this._visible=null,this._handlers={"initialized.owl.carousel":a.proxy(function(a){a.namespace&&this._core.settings.autoRefresh&&this.watch()},this)},this._core.options=a.extend({},e.Defaults,this._core.options),this._core.$element.on(this._handlers)};e.Defaults={autoRefresh:!0,autoRefreshInterval:500},e.prototype.watch=function(){this._interval||(this._visible=this._core.$element.is(":visible"),this._interval=b.setInterval(a.proxy(this.refresh,this),this._core.settings.autoRefreshInterval))},e.prototype.refresh=function(){this._core.$element.is(":visible")!==this._visible&&(this._visible=!this._visible,this._core.$element.toggleClass("owl-hidden",!this._visible),this._visible&&this._core.invalidate("width")&&this._core.refresh())},e.prototype.destroy=function(){var a,c;b.clearInterval(this._interval);for(a in this._handlers)this._core.$element.off(a,this._handlers[a]);for(c in Object.getOwnPropertyNames(this))"function"!=typeof this[c]&&(this[c]=null)},a.fn.owlCarousel.Constructor.Plugins.AutoRefresh=e}(window.Zepto||window.jQuery,window,document),function(a,b,c,d){var e=function(b){this._core=b,this._loaded=[],this._handlers={"initialized.owl.carousel change.owl.carousel resized.owl.carousel":a.proxy(function(b){if(b.namespace&&this._core.settings&&this._core.settings.lazyLoad&&(b.property&&"position"==b.property.name||"initialized"==b.type))for(var c=this._core.settings,e=c.center&&Math.ceil(c.items/2)||c.items,f=c.center&&e*-1||0,g=(b.property&&b.property.value!==d?b.property.value:this._core.current())+f,h=this._core.clones().length,i=a.proxy(function(a,b){this.load(b)},this);f++<e;)this.load(h/2+this._core.relative(g)),h&&a.each(this._core.clones(this._core.relative(g)),i),g++},this)},this._core.options=a.extend({},e.Defaults,this._core.options),this._core.$element.on(this._handlers)};e.Defaults={lazyLoad:!1},e.prototype.load=function(c){var d=this._core.$stage.children().eq(c),e=d&&d.find(".owl-lazy");!e||a.inArray(d.get(0),this._loaded)>-1||(e.each(a.proxy(function(c,d){var e,f=a(d),g=b.devicePixelRatio>1&&f.attr("data-src-retina")||f.attr("data-src");this._core.trigger("load",{element:f,url:g},"lazy"),f.is("img")?f.one("load.owl.lazy",a.proxy(function(){f.css("opacity",1),this._core.trigger("loaded",{element:f,url:g},"lazy")},this)).attr("src",g):(e=new Image,e.onload=a.proxy(function(){f.css({"background-image":'url("'+g+'")',opacity:"1"}),this._core.trigger("loaded",{element:f,url:g},"lazy")},this),e.src=g)},this)),this._loaded.push(d.get(0)))},e.prototype.destroy=function(){var a,b;for(a in this.handlers)this._core.$element.off(a,this.handlers[a]);for(b in Object.getOwnPropertyNames(this))"function"!=typeof this[b]&&(this[b]=null)},a.fn.owlCarousel.Constructor.Plugins.Lazy=e}(window.Zepto||window.jQuery,window,document),function(a,b,c,d){var e=function(b){this._core=b,this._handlers={"initialized.owl.carousel refreshed.owl.carousel":a.proxy(function(a){a.namespace&&this._core.settings.autoHeight&&this.update()},this),"changed.owl.carousel":a.proxy(function(a){a.namespace&&this._core.settings.autoHeight&&"position"==a.property.name&&this.update()},this),"loaded.owl.lazy":a.proxy(function(a){a.namespace&&this._core.settings.autoHeight&&a.element.closest("."+this._core.settings.itemClass).index()===this._core.current()&&this.update()},this)},this._core.options=a.extend({},e.Defaults,this._core.options),this._core.$element.on(this._handlers)};e.Defaults={autoHeight:!1,autoHeightClass:"owl-height"},e.prototype.update=function(){var b=this._core._current,c=b+this._core.settings.items,d=this._core.$stage.children().toArray().slice(b,c),e=[],f=0;a.each(d,function(b,c){e.push(a(c).height())}),f=Math.max.apply(null,e),this._core.$stage.parent().height(f).addClass(this._core.settings.autoHeightClass)},e.prototype.destroy=function(){var a,b;for(a in this._handlers)this._core.$element.off(a,this._handlers[a]);for(b in Object.getOwnPropertyNames(this))"function"!=typeof this[b]&&(this[b]=null)},a.fn.owlCarousel.Constructor.Plugins.AutoHeight=e}(window.Zepto||window.jQuery,window,document),function(a,b,c,d){var e=function(b){this._core=b,this._videos={},this._playing=null,this._handlers={"initialized.owl.carousel":a.proxy(function(a){a.namespace&&this._core.register({type:"state",name:"playing",tags:["interacting"]})},this),"resize.owl.carousel":a.proxy(function(a){a.namespace&&this._core.settings.video&&this.isInFullScreen()&&a.preventDefault()},this),"refreshed.owl.carousel":a.proxy(function(a){a.namespace&&this._core.is("resizing")&&this._core.$stage.find(".cloned .owl-video-frame").remove()},this),"changed.owl.carousel":a.proxy(function(a){a.namespace&&"position"===a.property.name&&this._playing&&this.stop()},this),"prepared.owl.carousel":a.proxy(function(b){if(b.namespace){var c=a(b.content).find(".owl-video");c.length&&(c.css("display","none"),this.fetch(c,a(b.content)))}},this)},this._core.options=a.extend({},e.Defaults,this._core.options),this._core.$element.on(this._handlers),this._core.$element.on("click.owl.video",".owl-video-play-icon",a.proxy(function(a){this.play(a)},this))};e.Defaults={video:!1,videoHeight:!1,videoWidth:!1},e.prototype.fetch=function(a,b){var c=function(){return a.attr("data-vimeo-id")?"vimeo":a.attr("data-vzaar-id")?"vzaar":"youtube"}(),d=a.attr("data-vimeo-id")||a.attr("data-youtube-id")||a.attr("data-vzaar-id"),e=a.attr("data-width")||this._core.settings.videoWidth,f=a.attr("data-height")||this._core.settings.videoHeight,g=a.attr("href");if(!g)throw new Error("Missing video URL.");if(d=g.match(/(http:|:|)\/\/(player.|www.|app.)?(vimeo\.com|youtu(be\.com|\.be|be\.googleapis\.com)|vzaar\.com)\/(video\/|videos\/|embed\/|channels\/.+\/|groups\/.+\/|watch\?v=|v\/)?([A-Za-z0-9._%-]*)(\&\S+)?/),d[3].indexOf("youtu")>-1)c="youtube";else if(d[3].indexOf("vimeo")>-1)c="vimeo";else{if(!(d[3].indexOf("vzaar")>-1))throw new Error("Video URL not supported.");c="vzaar"}d=d[6],this._videos[g]={type:c,id:d,width:e,height:f},b.attr("data-video",g),this.thumbnail(a,this._videos[g])},e.prototype.thumbnail=function(b,c){var d,e,f,g=c.width&&c.height?'style="width:'+c.width+"px;height:"+c.height+'px;"':"",h=b.find("img"),i="src",j="",k=this._core.settings,l=function(a){e='<div class="owl-video-play-icon"></div>',d=k.lazyLoad?'<div class="owl-video-tn '+j+'" '+i+'="'+a+'"></div>':'<div class="owl-video-tn" style="opacity:1;background-image:url('+a+')"></div>',b.after(d),b.after(e)};if(b.wrap('<div class="owl-video-wrapper"'+g+"></div>"),this._core.settings.lazyLoad&&(i="data-src",j="owl-lazy"),h.length)return l(h.attr(i)),h.remove(),!1;"youtube"===c.type?(f="//img.youtube.com/vi/"+c.id+"/hqdefault.jpg",l(f)):"vimeo"===c.type?a.ajax({type:"GET",url:"//vimeo.com/api/v2/video/"+c.id+".json",jsonp:"callback",dataType:"jsonp",success:function(a){f=a[0].thumbnail_large,l(f)}}):"vzaar"===c.type&&a.ajax({type:"GET",url:"//vzaar.com/api/videos/"+c.id+".json",jsonp:"callback",dataType:"jsonp",success:function(a){f=a.framegrab_url,l(f)}})},e.prototype.stop=function(){this._core.trigger("stop",null,"video"),this._playing.find(".owl-video-frame").remove(),this._playing.removeClass("owl-video-playing"),this._playing=null,this._core.leave("playing"),this._core.trigger("stopped",null,"video")},e.prototype.play=function(b){var c,d=a(b.target),e=d.closest("."+this._core.settings.itemClass),f=this._videos[e.attr("data-video")],g=f.width||"100%",h=f.height||this._core.$stage.height();this._playing||(this._core.enter("playing"),this._core.trigger("play",null,"video"),e=this._core.items(this._core.relative(e.index())),this._core.reset(e.index()),"youtube"===f.type?c='<iframe width="'+g+'" height="'+h+'" src="//www.youtube.com/embed/'+f.id+"?autoplay=1&rel=0&v="+f.id+'" frameborder="0" allowfullscreen></iframe>':"vimeo"===f.type?c='<iframe src="//player.vimeo.com/video/'+f.id+'?autoplay=1" width="'+g+'" height="'+h+'" frameborder="0" webkitallowfullscreen mozallowfullscreen allowfullscreen></iframe>':"vzaar"===f.type&&(c='<iframe frameborder="0"height="'+h+'"width="'+g+'" allowfullscreen mozallowfullscreen webkitAllowFullScreen src="//view.vzaar.com/'+f.id+'/player?autoplay=true"></iframe>'),a('<div class="owl-video-frame">'+c+"</div>").insertAfter(e.find(".owl-video")),this._playing=e.addClass("owl-video-playing"))},e.prototype.isInFullScreen=function(){var b=c.fullscreenElement||c.mozFullScreenElement||c.webkitFullscreenElement;return b&&a(b).parent().hasClass("owl-video-frame")},e.prototype.destroy=function(){var a,b;this._core.$element.off("click.owl.video");for(a in this._handlers)this._core.$element.off(a,this._handlers[a]);for(b in Object.getOwnPropertyNames(this))"function"!=typeof this[b]&&(this[b]=null)},a.fn.owlCarousel.Constructor.Plugins.Video=e}(window.Zepto||window.jQuery,window,document),function(a,b,c,d){var e=function(b){this.core=b,this.core.options=a.extend({},e.Defaults,this.core.options),this.swapping=!0,this.previous=d,this.next=d,this.handlers={"change.owl.carousel":a.proxy(function(a){a.namespace&&"position"==a.property.name&&(this.previous=this.core.current(),this.next=a.property.value)},this),"drag.owl.carousel dragged.owl.carousel translated.owl.carousel":a.proxy(function(a){a.namespace&&(this.swapping="translated"==a.type)},this),"translate.owl.carousel":a.proxy(function(a){a.namespace&&this.swapping&&(this.core.options.animateOut||this.core.options.animateIn)&&this.swap()},this)},this.core.$element.on(this.handlers)};e.Defaults={animateOut:!1,animateIn:!1},e.prototype.swap=function(){if(1===this.core.settings.items&&a.support.animation&&a.support.transition){this.core.speed(0);var b,c=a.proxy(this.clear,this),d=this.core.$stage.children().eq(this.previous),e=this.core.$stage.children().eq(this.next),f=this.core.settings.animateIn,g=this.core.settings.animateOut;this.core.current()!==this.previous&&(g&&(b=this.core.coordinates(this.previous)-this.core.coordinates(this.next),d.one(a.support.animation.end,c).css({left:b+"px"}).addClass("animated owl-animated-out").addClass(g)),f&&e.one(a.support.animation.end,c).addClass("animated owl-animated-in").addClass(f))}},e.prototype.clear=function(b){a(b.target).css({left:""}).removeClass("animated owl-animated-out owl-animated-in").removeClass(this.core.settings.animateIn).removeClass(this.core.settings.animateOut),this.core.onTransitionEnd()},e.prototype.destroy=function(){var a,b;for(a in this.handlers)this.core.$element.off(a,this.handlers[a]);for(b in Object.getOwnPropertyNames(this))"function"!=typeof this[b]&&(this[b]=null)},
+a.fn.owlCarousel.Constructor.Plugins.Animate=e}(window.Zepto||window.jQuery,window,document),function(a,b,c,d){var e=function(b){this._core=b,this._timeout=null,this._paused=!1,this._handlers={"changed.owl.carousel":a.proxy(function(a){a.namespace&&"settings"===a.property.name?this._core.settings.autoplay?this.play():this.stop():a.namespace&&"position"===a.property.name&&this._core.settings.autoplay&&this._setAutoPlayInterval()},this),"initialized.owl.carousel":a.proxy(function(a){a.namespace&&this._core.settings.autoplay&&this.play()},this),"play.owl.autoplay":a.proxy(function(a,b,c){a.namespace&&this.play(b,c)},this),"stop.owl.autoplay":a.proxy(function(a){a.namespace&&this.stop()},this),"mouseover.owl.autoplay":a.proxy(function(){this._core.settings.autoplayHoverPause&&this._core.is("rotating")&&this.pause()},this),"mouseleave.owl.autoplay":a.proxy(function(){this._core.settings.autoplayHoverPause&&this._core.is("rotating")&&this.play()},this),"touchstart.owl.core":a.proxy(function(){this._core.settings.autoplayHoverPause&&this._core.is("rotating")&&this.pause()},this),"touchend.owl.core":a.proxy(function(){this._core.settings.autoplayHoverPause&&this.play()},this)},this._core.$element.on(this._handlers),this._core.options=a.extend({},e.Defaults,this._core.options)};e.Defaults={autoplay:!1,autoplayTimeout:5e3,autoplayHoverPause:!1,autoplaySpeed:!1},e.prototype.play=function(a,b){this._paused=!1,this._core.is("rotating")||(this._core.enter("rotating"),this._setAutoPlayInterval())},e.prototype._getNextTimeout=function(d,e){return this._timeout&&b.clearTimeout(this._timeout),b.setTimeout(a.proxy(function(){this._paused||this._core.is("busy")||this._core.is("interacting")||c.hidden||this._core.next(e||this._core.settings.autoplaySpeed)},this),d||this._core.settings.autoplayTimeout)},e.prototype._setAutoPlayInterval=function(){this._timeout=this._getNextTimeout()},e.prototype.stop=function(){this._core.is("rotating")&&(b.clearTimeout(this._timeout),this._core.leave("rotating"))},e.prototype.pause=function(){this._core.is("rotating")&&(this._paused=!0)},e.prototype.destroy=function(){var a,b;this.stop();for(a in this._handlers)this._core.$element.off(a,this._handlers[a]);for(b in Object.getOwnPropertyNames(this))"function"!=typeof this[b]&&(this[b]=null)},a.fn.owlCarousel.Constructor.Plugins.autoplay=e}(window.Zepto||window.jQuery,window,document),function(a,b,c,d){"use strict";var e=function(b){this._core=b,this._initialized=!1,this._pages=[],this._controls={},this._templates=[],this.$element=this._core.$element,this._overrides={next:this._core.next,prev:this._core.prev,to:this._core.to},this._handlers={"prepared.owl.carousel":a.proxy(function(b){b.namespace&&this._core.settings.dotsData&&this._templates.push('<div class="'+this._core.settings.dotClass+'">'+a(b.content).find("[data-dot]").addBack("[data-dot]").attr("data-dot")+"</div>")},this),"added.owl.carousel":a.proxy(function(a){a.namespace&&this._core.settings.dotsData&&this._templates.splice(a.position,0,this._templates.pop())},this),"remove.owl.carousel":a.proxy(function(a){a.namespace&&this._core.settings.dotsData&&this._templates.splice(a.position,1)},this),"changed.owl.carousel":a.proxy(function(a){a.namespace&&"position"==a.property.name&&this.draw()},this),"initialized.owl.carousel":a.proxy(function(a){a.namespace&&!this._initialized&&(this._core.trigger("initialize",null,"navigation"),this.initialize(),this.update(),this.draw(),this._initialized=!0,this._core.trigger("initialized",null,"navigation"))},this),"refreshed.owl.carousel":a.proxy(function(a){a.namespace&&this._initialized&&(this._core.trigger("refresh",null,"navigation"),this.update(),this.draw(),this._core.trigger("refreshed",null,"navigation"))},this)},this._core.options=a.extend({},e.Defaults,this._core.options),this.$element.on(this._handlers)};e.Defaults={nav:!1,navText:["prev","next"],navSpeed:!1,navElement:"div",navContainer:!1,navContainerClass:"owl-nav",navClass:["owl-prev","owl-next"],slideBy:1,dotClass:"owl-dot",dotsClass:"owl-dots",dots:!0,dotsEach:!1,dotsData:!1,dotsSpeed:!1,dotsContainer:!1},e.prototype.initialize=function(){var b,c=this._core.settings;this._controls.$relative=(c.navContainer?a(c.navContainer):a("<div>").addClass(c.navContainerClass).appendTo(this.$element)).addClass("disabled"),this._controls.$previous=a("<"+c.navElement+">").addClass(c.navClass[0]).html(c.navText[0]).prependTo(this._controls.$relative).on("click",a.proxy(function(a){this.prev(c.navSpeed)},this)),this._controls.$next=a("<"+c.navElement+">").addClass(c.navClass[1]).html(c.navText[1]).appendTo(this._controls.$relative).on("click",a.proxy(function(a){this.next(c.navSpeed)},this)),c.dotsData||(this._templates=[a("<div>").addClass(c.dotClass).append(a("<span>")).prop("outerHTML")]),this._controls.$absolute=(c.dotsContainer?a(c.dotsContainer):a("<div>").addClass(c.dotsClass).appendTo(this.$element)).addClass("disabled"),this._controls.$absolute.on("click","div",a.proxy(function(b){var d=a(b.target).parent().is(this._controls.$absolute)?a(b.target).index():a(b.target).parent().index();b.preventDefault(),this.to(d,c.dotsSpeed)},this));for(b in this._overrides)this._core[b]=a.proxy(this[b],this)},e.prototype.destroy=function(){var a,b,c,d;for(a in this._handlers)this.$element.off(a,this._handlers[a]);for(b in this._controls)this._controls[b].remove();for(d in this.overides)this._core[d]=this._overrides[d];for(c in Object.getOwnPropertyNames(this))"function"!=typeof this[c]&&(this[c]=null)},e.prototype.update=function(){var a,b,c,d=this._core.clones().length/2,e=d+this._core.items().length,f=this._core.maximum(!0),g=this._core.settings,h=g.center||g.autoWidth||g.dotsData?1:g.dotsEach||g.items;if("page"!==g.slideBy&&(g.slideBy=Math.min(g.slideBy,g.items)),g.dots||"page"==g.slideBy)for(this._pages=[],a=d,b=0,c=0;a<e;a++){if(b>=h||0===b){if(this._pages.push({start:Math.min(f,a-d),end:a-d+h-1}),Math.min(f,a-d)===f)break;b=0,++c}b+=this._core.mergers(this._core.relative(a))}},e.prototype.draw=function(){var b,c=this._core.settings,d=this._core.items().length<=c.items,e=this._core.relative(this._core.current()),f=c.loop||c.rewind;this._controls.$relative.toggleClass("disabled",!c.nav||d),c.nav&&(this._controls.$previous.toggleClass("disabled",!f&&e<=this._core.minimum(!0)),this._controls.$next.toggleClass("disabled",!f&&e>=this._core.maximum(!0))),this._controls.$absolute.toggleClass("disabled",!c.dots||d),c.dots&&(b=this._pages.length-this._controls.$absolute.children().length,c.dotsData&&0!==b?this._controls.$absolute.html(this._templates.join("")):b>0?this._controls.$absolute.append(new Array(b+1).join(this._templates[0])):b<0&&this._controls.$absolute.children().slice(b).remove(),this._controls.$absolute.find(".active").removeClass("active"),this._controls.$absolute.children().eq(a.inArray(this.current(),this._pages)).addClass("active"))},e.prototype.onTrigger=function(b){var c=this._core.settings;b.page={index:a.inArray(this.current(),this._pages),count:this._pages.length,size:c&&(c.center||c.autoWidth||c.dotsData?1:c.dotsEach||c.items)}},e.prototype.current=function(){var b=this._core.relative(this._core.current());return a.grep(this._pages,a.proxy(function(a,c){return a.start<=b&&a.end>=b},this)).pop()},e.prototype.getPosition=function(b){var c,d,e=this._core.settings;return"page"==e.slideBy?(c=a.inArray(this.current(),this._pages),d=this._pages.length,b?++c:--c,c=this._pages[(c%d+d)%d].start):(c=this._core.relative(this._core.current()),d=this._core.items().length,b?c+=e.slideBy:c-=e.slideBy),c},e.prototype.next=function(b){a.proxy(this._overrides.to,this._core)(this.getPosition(!0),b)},e.prototype.prev=function(b){a.proxy(this._overrides.to,this._core)(this.getPosition(!1),b)},e.prototype.to=function(b,c,d){var e;!d&&this._pages.length?(e=this._pages.length,a.proxy(this._overrides.to,this._core)(this._pages[(b%e+e)%e].start,c)):a.proxy(this._overrides.to,this._core)(b,c)},a.fn.owlCarousel.Constructor.Plugins.Navigation=e}(window.Zepto||window.jQuery,window,document),function(a,b,c,d){"use strict";var e=function(c){this._core=c,this._hashes={},this.$element=this._core.$element,this._handlers={"initialized.owl.carousel":a.proxy(function(c){c.namespace&&"URLHash"===this._core.settings.startPosition&&a(b).trigger("hashchange.owl.navigation")},this),"prepared.owl.carousel":a.proxy(function(b){if(b.namespace){var c=a(b.content).find("[data-hash]").addBack("[data-hash]").attr("data-hash");if(!c)return;this._hashes[c]=b.content}},this),"changed.owl.carousel":a.proxy(function(c){if(c.namespace&&"position"===c.property.name){var d=this._core.items(this._core.relative(this._core.current())),e=a.map(this._hashes,function(a,b){return a===d?b:null}).join();if(!e||b.location.hash.slice(1)===e)return;b.location.hash=e}},this)},this._core.options=a.extend({},e.Defaults,this._core.options),this.$element.on(this._handlers),a(b).on("hashchange.owl.navigation",a.proxy(function(a){var c=b.location.hash.substring(1),e=this._core.$stage.children(),f=this._hashes[c]&&e.index(this._hashes[c]);f!==d&&f!==this._core.current()&&this._core.to(this._core.relative(f),!1,!0)},this))};e.Defaults={URLhashListener:!1},e.prototype.destroy=function(){var c,d;a(b).off("hashchange.owl.navigation");for(c in this._handlers)this._core.$element.off(c,this._handlers[c]);for(d in Object.getOwnPropertyNames(this))"function"!=typeof this[d]&&(this[d]=null)},a.fn.owlCarousel.Constructor.Plugins.Hash=e}(window.Zepto||window.jQuery,window,document),function(a,b,c,d){function e(b,c){var e=!1,f=b.charAt(0).toUpperCase()+b.slice(1);return a.each((b+" "+h.join(f+" ")+f).split(" "),function(a,b){if(g[b]!==d)return e=!c||b,!1}),e}function f(a){return e(a,!0)}var g=a("<support>").get(0).style,h="Webkit Moz O ms".split(" "),i={transition:{end:{WebkitTransition:"webkitTransitionEnd",MozTransition:"transitionend",OTransition:"oTransitionEnd",transition:"transitionend"}},animation:{end:{WebkitAnimation:"webkitAnimationEnd",MozAnimation:"animationend",OAnimation:"oAnimationEnd",animation:"animationend"}}},j={csstransforms:function(){return!!e("transform")},csstransforms3d:function(){return!!e("perspective")},csstransitions:function(){return!!e("transition")},cssanimations:function(){return!!e("animation")}};j.csstransitions()&&(a.support.transition=new String(f("transition")),a.support.transition.end=i.transition.end[a.support.transition]),j.cssanimations()&&(a.support.animation=new String(f("animation")),a.support.animation.end=i.animation.end[a.support.animation]),j.csstransforms()&&(a.support.transform=new String(f("transform")),a.support.transform3d=j.csstransforms3d())}(window.Zepto||window.jQuery,window,document);
\ No newline at end of file
diff --git a/public/static/home/assets/js/slick.min.js b/public/static/home/assets/js/slick.min.js
new file mode 100644
index 0000000..42172c2
--- /dev/null
+++ b/public/static/home/assets/js/slick.min.js
@@ -0,0 +1 @@
+!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}});
diff --git a/public/static/home/assets/js/theme-pluginjs.js b/public/static/home/assets/js/theme-pluginjs.js
new file mode 100644
index 0000000..e20797c
--- /dev/null
+++ b/public/static/home/assets/js/theme-pluginjs.js
@@ -0,0 +1,146 @@
+/*dnslider js */
+
+!function(t){"function"==typeof define&&define.amd?define(["jquery"],t):"object"==typeof exports?t(require("jquery")):t(jQuery)}(function(t){"use strict";var i="dnSlide",n="1.0.0";t[i]&&t[i].version>n||(t[i]=function(t,i){return this.container=t,this.options=i,this.api=["init","destroy","hide","show"],this.init(),this},t[i].version=n,t[i].defaults={switching:"normal",isOddShow:!1,precentWidth:"50%",autoPlay:!1,delay:5e3,scale:.9,speed:500,verticalAlign:"middle",afterClickBtnFn:null},t[i].prototype={init:function(){var i=this;this.data(),this.settingDOM(),this.isIE7=/MSIE 6.0|MSIE 7.0/gi.test(window.navigator.userAgent),this.dnSlideMain=this.container.find(".dnSlide-main"),this.dnSlideItems=this.container.find("ul.dnSlide-list"),this.dnSlideLi=this.container.find(".dnSlide-item"),this.firstItem=this.container.find("ul.dnSlide-list > li:first-child"),this.dnSlideItemsLength=this.container.find("ul.dnSlide-list>li").length,this.dnSlideFirstItem=this.container.find("ul.dnSlide-list>li:first-child"),this.dnSlideLastItem=this.container.find("ul.dnSlide-list>li:last-child"),this.options.isOddShow&&this.isEvenPicNum(),this.options.response&&this.container.addClass("dn-response"),this.prevBtn=this.container.find(".dnSlide-left-btn"),this.nextBtn=this.container.find(".dnSlide-right-btn"),this.prevBtn=this.container.find("div.dnSlide-left-btn"),this.nextBtn=this.container.find("div.dnSlide-right-btn"),this.rotateFlag=!0,this.clearLiStyle(),this.countSettingValue(),this.setPositionValue(),this.setDefaultLiJson(),"custom"===this.options.switching&&this.dnSlideLi.off().on("click",function(){i.clickCurrentLI(t(this).index())}),this.options.autoPlay&&(this.autoPlay(),this.container.hover(function(){clearTimeout(i.timer)},function(){i.autoPlay()})),this.prevBtn.off().on("click",function(t){t.stopPropagation();var n=i.options.afterClickPrevBtnFn;i.rotateFlag&&(i.rotateFlag=!1,i.dnSlideRotate("right")),"function"==typeof n&&n&&n()}),this.nextBtn.off().on("click",function(t){t.stopPropagation();var n=i.options.afterClickNextBtnFn;i.rotateFlag&&(i.rotateFlag=!1,i.dnSlideRotate("left")),"function"==typeof n&&n&&n()}),t(window).resize(function(){i.WndwResize()})},data:function(){this.container.data(i)||this.container.data(i,{target:this.container})},destroy:function(){this.container.empty().html(this.defalutHtml)},hide:function(t){this.container.addClass("dnSlide-hide"),t&&"function"==typeof t&&t()},show:function(t){this.container.removeClass("dnSlide-hide"),t&&"function"==typeof t&&t()},settingDOM:function(){var t=this,i="normal"===this.options.switching?"<div class='dnSlide-btn dnSlide-left-btn'></div><div class='dnSlide-btn dnSlide-right-btn'></div>":null;this.defalutHtml=this.container.html(),this.resourceSrcArr=this.container.find("img").map(function(t,i){return i.src});var n=this.container.html('<ul class="dnSlide-list"></ul>').find(".dnSlide-list");jQuery.each(this.resourceSrcArr,function(i,e){n.append('<li class="dnSlide-item"><a href="javascript:void(0)"><img class="slide-img" src="'+t.resourceSrcArr[i]+'" width="100%"></a></li>')}),n.parents(".dnSlide-main").append(i)},WndwResize:function(){var t=this,i="";i&&(clearTimeout(i),i=null),i=setTimeout(function(){t.clearLiStyle(),t.countSettingValue(),t.setPositionValue(),t.setDefaultLiJson()},250)},getCustomSetting:function(){var t=this.setting;return t&&""!==t?t:{}},clearLiStyle:function(){this.dnSlideLi.attr("style","")},countSettingValue:function(){this.options.response;var t="100%",i=Math.floor(this.dnSlideItemsLength/2);this.firstItem.css({width:this.dnSlideItems.width()*(parseFloat(this.options.precentWidth.replace("px",""))/100)}),this.firstItem.css({height:this.dnSlideFirstItem.find(".slide-img").height()}),this.container.css({width:null,height:this.dnSlideFirstItem.find(".slide-img").height()}),this.prevBtn.css({width:(this.container.width()-this.firstItem.width())/2,height:t}),this.nextBtn.css({width:(this.container.width()-this.firstItem.width())/2,height:t}),this.dnSlideFirstItem.css({left:(this.container.width()-this.firstItem.width())/2,zIndex:i})},setPositionValue:function(){var i=this,n=(this.options.response,Math.floor(this.dnSlideItemsLength/2)),e=this.container.find(".dnSlide-list > li").slice(1),s=e.slice(0,e.length/2),d=e.slice(e.length/2),h=(this.container.width()-this.firstItem.width())/2,l=h/n,o=this.dnSlideFirstItem.width(),a=this.dnSlideFirstItem.height();s.each(function(e,s){o*=i.options.scale,a*=i.options.scale;var d=e;t(s).css({width:o,height:a,zIndex:--n,opacity:1/++d,left:h+i.dnSlideFirstItem.width()+ ++e*l-o,top:i.settingVerticalAlign(a)})});var r=s.last().width(),c=s.last().height(),f=Math.floor(this.dnSlideItemsLength/2);d.each(function(e,s){t(s).css({width:r,height:c,zIndex:n++,opacity:1/f--,left:l*e,top:i.settingVerticalAlign(c)}),r/=i.options.scale,c/=i.options.scale})},settingVerticalAlign:function(t){var i=this.options.verticalAlign,n=this.dnSlideFirstItem.find(".slide-img").height();return"middle"===i?(n-t)/2:"top"===i?0:"bottom"===i?n-t:(n-t)/2},dnSlideRotate:function(i){var n=this,e=[],s=[];"left"===i?(this.dnSlideItems.find("li").each(function(i,s){var d=t(s).prev().get(0)?t(s).prev():n.dnSlideLastItem,h=d.width(),l=d.height(),o=d.css("zIndex"),a=d.css("top"),r=d.css("left"),c=d.css("opacity");e.push(o),t(s).animate({width:h,height:l,top:a,left:r,opacity:c},n.options.speed,function(){n.rotateFlag=!0})}),this.dnSlideItems.find("li").each(function(i){t(this).css("zIndex",e[i]),s.push(parseInt(e[i]))})):"right"===i&&(this.dnSlideItems.find("li").each(function(i,s){var d=t(s).next().get(0)?t(s).next():n.dnSlideFirstItem,h=d.width(),l=d.height(),o=d.css("zIndex"),a=d.css("top"),r=d.css("left"),c=d.css("opacity");e.push(o),t(s).animate({width:h,height:l,top:a,left:r,opacity:c},function(){n.rotateFlag=!0})}),this.dnSlideItems.find("li").each(function(i){t(this).css("zIndex",e[i]),s.push(parseInt(e[i]))}));var d=Math.max.apply(null,s),h=jQuery.inArray(d,s);this.options.afterClickBtnFn.apply(this,[h])},setDefaultLiJson:function(){this.setliArr=this.dnSlideLi.map(function(i,n){var e=[];return e.push({width:t(n).css("width"),height:t(n).css("height"),opacity:t(n).css("opacity"),"z-index":t(n).css("z-index"),left:t(n).css("left"),top:t(n).css("top"),current:i}),e}).get()},clickCurrentLI:function(i){var n=this,e=this.dnSlideLi,s=e.map(function(i){return t(this).index()}).get(),d=s,h=d.splice(d.indexOf(i),n.dnSlideItemsLength);n.rotateFlag=!1,h.reverse().forEach(function(t,i){d.unshift(h[i])}),this.setliArr.forEach(function(t,i){t.index=s[i],e.eq(n.setliArr[i].index).css("zIndex",n.setliArr[i]["z-index"]).animate(n.setliArr[i],function(){n.rotateFlag=!1})})},autoPlay:function(){var t=this;this.timer=setInterval(function(){t.dnSlideRotate("left")},t.options.delay)},isEvenPicNum:function(){this.dnSlideItemsLength%2==0&&(this.dnSlideItems.append(this.dnSlideFirstItem.clone()),this.dnSlideItemsLength=this.dnSlide.find("ul.dnSlide-list>li").length,this.dnSlideFirstItem=this.dnSlide.find("ul.dnSlide-list>li:first-child"),this.dnSlideLastItem=this.dnSlide.find("ul.dnSlide-list>li:last-child"))},_api_:function(){var i=this,n={};return t.each(this.api,function(t){var e=this;n[e]=function(){var t=i[e].apply(i,arguments);return void 0===t?n:t}}),n}},t.fn[i]=function(n){return n=t.extend(!0,{},t[i].defaults,n),this.each(function(){t(this).data(i,new t[i](t(this),n)._api_()),t(this).addClass("done")})})});
+
+
+/* animate text heading */
+
+jQuery(document).ready(function($){var animationDelay=2500,barAnimationDelay=3800,barWaiting=barAnimationDelay-3000,lettersDelay=50,typeLettersDelay=150,selectionDuration=500,typeAnimationDelay=selectionDuration+800,revealDuration=600,revealAnimationDelay=1500;initHeadline();function initHeadline(){singleLetters($('.cd-headline.letters').find('b'));animateHeadline($('.cd-headline'))}
+function singleLetters($words){$words.each(function(){var word=$(this),letters=word.text().split(''),selected=word.hasClass('is-visible');for(i in letters){if(word.parents('.rotate-2').length>0)letters[i]='<em>'+letters[i]+'</em>';letters[i]=(selected)?'<i class="in">'+letters[i]+'</i>':'<i>'+letters[i]+'</i>'}
+var newLetters=letters.join('');word.html(newLetters).css('opacity',1)})}
+function animateHeadline($headlines){var duration=animationDelay;$headlines.each(function(){var headline=$(this);if(headline.hasClass('loading-bar')){duration=barAnimationDelay;setTimeout(function(){headline.find('.cd-words-wrapper').addClass('is-loading')},barWaiting)}else if(headline.hasClass('clip')){var spanWrapper=headline.find('.cd-words-wrapper'),newWidth=spanWrapper.width()+10
+spanWrapper.css('width',newWidth)}else if(!headline.hasClass('type')){var words=headline.find('.cd-words-wrapper b'),width=0;words.each(function(){var wordWidth=$(this).width();if(wordWidth>width)width=wordWidth});headline.find('.cd-words-wrapper').css('width',width)};setTimeout(function(){hideWord(headline.find('.is-visible').eq(0))},duration)})}
+function hideWord($word){var nextWord=takeNext($word);if($word.parents('.cd-headline').hasClass('type')){var parentSpan=$word.parent('.cd-words-wrapper');parentSpan.addClass('selected').removeClass('waiting');setTimeout(function(){parentSpan.removeClass('selected');$word.removeClass('is-visible').addClass('is-hidden').children('i').removeClass('in').addClass('out')},selectionDuration);setTimeout(function(){showWord(nextWord,typeLettersDelay)},typeAnimationDelay)}else if($word.parents('.cd-headline').hasClass('letters')){var bool=($word.children('i').length>=nextWord.children('i').length)?!0:!1;hideLetter($word.find('i').eq(0),$word,bool,lettersDelay);showLetter(nextWord.find('i').eq(0),nextWord,bool,lettersDelay)}else if($word.parents('.cd-headline').hasClass('clip')){$word.parents('.cd-words-wrapper').animate({width:'2px'},revealDuration,function(){switchWord($word,nextWord);showWord(nextWord)})}else if($word.parents('.cd-headline').hasClass('loading-bar')){$word.parents('.cd-words-wrapper').removeClass('is-loading');switchWord($word,nextWord);setTimeout(function(){hideWord(nextWord)},barAnimationDelay);setTimeout(function(){$word.parents('.cd-words-wrapper').addClass('is-loading')},barWaiting)}else{switchWord($word,nextWord);setTimeout(function(){hideWord(nextWord)},animationDelay)}}
+function showWord($word,$duration){if($word.parents('.cd-headline').hasClass('type')){showLetter($word.find('i').eq(0),$word,!1,$duration);$word.addClass('is-visible').removeClass('is-hidden')}else if($word.parents('.cd-headline').hasClass('clip')){$word.parents('.cd-words-wrapper').animate({'width':$word.width()+10},revealDuration,function(){setTimeout(function(){hideWord($word)},revealAnimationDelay)})}}
+function hideLetter($letter,$word,$bool,$duration){$letter.removeClass('in').addClass('out');if(!$letter.is(':last-child')){setTimeout(function(){hideLetter($letter.next(),$word,$bool,$duration)},$duration)}else if($bool){setTimeout(function(){hideWord(takeNext($word))},animationDelay)}
+if($letter.is(':last-child')&&$('html').hasClass('no-csstransitions')){var nextWord=takeNext($word);switchWord($word,nextWord)}}
+function showLetter($letter,$word,$bool,$duration){$letter.addClass('in').removeClass('out');if(!$letter.is(':last-child')){setTimeout(function(){showLetter($letter.next(),$word,$bool,$duration)},$duration)}else{if($word.parents('.cd-headline').hasClass('type')){setTimeout(function(){$word.parents('.cd-words-wrapper').addClass('waiting')},200)}
+if(!$bool){setTimeout(function(){hideWord($word)},animationDelay)}}}
+function takeNext($word){return(!$word.is(':last-child'))?$word.next():$word.parent().children().eq(0)}
+function takePrev($word){return(!$word.is(':first-child'))?$word.prev():$word.parent().children().last()}
+function switchWord($oldWord,$newWord){$oldWord.removeClass('is-visible').addClass('is-hidden');$newWord.removeClass('is-hidden').addClass('is-visible')}})
+
+/*
+ * jQuery One Page Nav Plugin
+ * http://github.com/davist11/jQuery-One-Page-Nav
+ *
+ * Copyright (c) 2010 Trevor Davis (http://trevordavis.net)
+ * Dual licensed under the MIT and GPL licenses.
+ * Uses the same license as jQuery, see:
+ * http://jquery.org/license
+ *
+ * @version 3.0.0
+ *
+ * Example usage:
+ * $('#nav').onePageNav({
+ * currentClass: 'current',
+ * changeHash: false,
+ * scrollSpeed: 750
+ * });
+ */
+!function(t,i,n,s){var e=function(s,e){this.elem=s,this.$elem=t(s),this.options=e,this.metadata=this.$elem.data("plugin-options"),this.$win=t(i),this.sections={},this.didScroll=!1,this.$doc=t(n),this.docHeight=this.$doc.height()};e.prototype={defaults:{navItems:"a",currentClass:"current",changeHash:!1,easing:"swing",filter:"",scrollSpeed:750,scrollThreshold:.5,begin:!1,end:!1,scrollChange:!1},init:function(){return this.config=t.extend({},this.defaults,this.options,this.metadata),this.$nav=this.$elem.find(this.config.navItems),""!==this.config.filter&&(this.$nav=this.$nav.filter(this.config.filter)),this.$nav.on("click.onePageNav",t.proxy(this.handleClick,this)),this.getPositions(),this.bindInterval(),this.$win.on("resize.onePageNav",t.proxy(this.getPositions,this)),this},adjustNav:function(t,i){t.$elem.find("."+t.config.currentClass).removeClass(t.config.currentClass),i.addClass(t.config.currentClass)},bindInterval:function(){var t,i=this;i.$win.on("scroll.onePageNav",function(){i.didScroll=!0}),i.t=setInterval(function(){t=i.$doc.height(),i.didScroll&&(i.didScroll=!1,i.scrollChange()),t!==i.docHeight&&(i.docHeight=t,i.getPositions())},250)},getHash:function(t){return t.attr("href").split("#")[1]},getPositions:function(){var i,n,s,e=this;e.$nav.each(function(){i=e.getHash(t(this)),s=t("#"+i),s.length&&(n=s.offset().top,e.sections[i]=Math.round(n))})},getSection:function(t){var i=null,n=Math.round(this.$win.height()*this.config.scrollThreshold);for(var s in this.sections)this.sections[s]-n<t&&(i=s);return i},handleClick:function(n){var s=this,e=t(n.currentTarget),o=e.parent(),a="#"+s.getHash(e);o.hasClass(s.config.currentClass)||(s.config.begin&&s.config.begin(),s.adjustNav(s,o),s.unbindInterval(),s.scrollTo(a,function(){s.config.changeHash&&(i.location.hash=a),s.bindInterval(),s.config.end&&s.config.end()})),n.preventDefault()},scrollChange:function(){var t,i=this.$win.scrollTop(),n=this.getSection(i);null!==n&&(t=this.$elem.find('a[href$="#'+n+'"]').parent(),t.hasClass(this.config.currentClass)||(this.adjustNav(this,t),this.config.scrollChange&&this.config.scrollChange(t)))},scrollTo:function(i,n){var s=t(i).offset().top;t("html, body").animate({scrollTop:s-this.config.scrollOffset},this.config.scrollSpeed,this.config.easing,n)},unbindInterval:function(){clearInterval(this.t),this.$win.unbind("scroll.onePageNav")}},e.defaults=e.prototype.defaults,t.fn.onePageNav=function(t){return this.each(function(){new e(this,t).init()})}}(jQuery,window,document);
+
+/* direction hover js */
+
+!function(a){a.fn.directionalHover=function(b){function c(a,b,c,e,f,g,h,i){var n=0;g/2>=e-i&&(n^=j),c-h>=f/2&&(n^=k),e-i>g/2&&(n^=l),f/2>c-h&&(n^=m),d(n,a,b,c-h,e-i,f/2,g/2)}function d(a,b,c,d,i,j,k){e(a,n)?f(d,i,j,k)?h(b,c,0,2*-j):h(b,c,2*-k,0):e(a,o)?g(d,i,j,k)?h(b,c,2*-k,0):h(b,c,0,2*j):e(a,p)?g(d,i,j,k)?h(b,c,0,2*-j):h(b,c,2*k,0):e(a,q)&&(f(d,i,j,k)?h(b,c,2*k,0):h(b,c,0,2*j))}function e(a,b){return(a&b)===b}function f(a,b,c,d){return 0>d*a-c*b}function g(a,b,c,d){return 0>c*(b-d)+d*a-c*d}function h(a,b,c,d){"in"===b?a.animate({top:c,left:d},0,function(){a.stop().animate({top:0,left:0},i.speed,i.easing)}):"out"===b&&a.animate({top:0,left:0},0,function(){a.stop().animate({top:c,left:d},i.speed,i.easing)})}var i=a.extend({},a.fn.directionalHover.defaults,b),j=1,k=2,l=4,m=8,n=j|m,o=j|k,p=l|m,q=l|k;return this.css({position:"relative",overflow:"hidden"}),this.find("."+i.overlay).css({position:"absolute",top:"-100%"}),this.each(function(){var b=a(this);b.hover(function(a){c(b.find("."+i.overlay),"in",a.pageX,a.pageY,b.width(),b.height(),Math.floor(b.offset().left),b.offset().top)},function(a){c(b.find("."+i.overlay),"out",a.pageX,a.pageY,b.width(),b.height(),Math.floor(b.offset().left),b.offset().top)})})},a.fn.directionalHover.defaults={overlay:"dh-overlay",easing:"swing",speed:400}}(jQuery);
+
+/* counter up */
+(function($){"use strict";$.fn.counterUp=function(options){var settings=$.extend({time:400,delay:10,offset:100,beginAt:0,formatter:false,lowgo:"window",callback:function(){}},options),s;return this.each(function(){var $this=$(this),counter={time:$(this).data("counterup-time")||settings.time,delay:$(this).data("counterup-delay")||settings.delay,offset:$(this).data("counterup-offset")||settings.offset,beginAt:$(this).data("counterup-beginat")||settings.beginAt,lowgo:$(this).data("counterup-lowgo")||settings.lowgo};var counterUpper=function(){var nums=[];var divisions=counter.time/counter.delay;var num=$(this).attr("data-num")?$(this).attr("data-num"):$this.text();var isComma=/[0-9]+,[0-9]+/.test(num);num=num.replace(/,/g,"");var decimalPlaces=(num.split(".")[1]||[]).length;if(counter.beginAt>num)counter.beginAt=num;var isTime=/[0-9]+:[0-9]+:[0-9]+/.test(num);if(isTime){var times=num.split(":"),m=1;s=0;while(times.length>0){s+=m*parseInt(times.pop(),10);m*=60}}for(var i=divisions;i>=counter.beginAt/num*divisions;i--){var newNum=parseFloat(num/divisions*i).toFixed(decimalPlaces);if(isTime){newNum=parseInt(s/divisions*i);var hours=parseInt(newNum/3600)%24;var minutes=parseInt(newNum/60)%60;var seconds=parseInt(newNum%60,10);newNum=(hours<10?"0"+hours:hours)+":"+(minutes<10?"0"+minutes:minutes)+":"+(seconds<10?"0"+seconds:seconds)}if(isComma){while(/(\d+)(\d{3})/.test(newNum.toString())){newNum=newNum.toString().replace(/(\d+)(\d{3})/,"$1"+","+"$2")}}if(settings.formatter){newNum=settings.formatter.call(this,newNum)}nums.unshift(newNum)}$this.data("counterup-nums",nums);$this.text(counter.beginAt);var f=function(){if(!$this.data("counterup-nums")){settings.callback.call(this);return}$this.html($this.data("counterup-nums").shift());if($this.data("counterup-nums").length){setTimeout($this.data("counterup-func"),counter.delay)}else{$this.data("counterup-nums",null);$this.data("counterup-func",null);settings.callback.call(this)}};$this.data("counterup-func",f);setTimeout($this.data("counterup-func"),counter.delay)};$this.waypoint(function(direction){counterUpper();this.destroy()},{offset:counter.offset+"%",lowgo:counter.lowgo})})}})(jQuery);
+
+
+/*!
+ * The Final Countdown for jQuery v2.2.0 (http://hilios.github.io/jQuery.countdown/)
+ * Copyright (c) 2016 Edson Hilios
+ * Permission is hereby granted, free of charge, to any person obtaining a copy of
+ * this software and associated documentation files (the "Software"), to deal in
+ * the Software without restriction, including without limitation the rights to
+ * use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of
+ * the Software, and to permit persons to whom the Software is furnished to do so,
+ * subject to the following conditions:
+ *
+ * The above copyright notice and this permission notice shall be included in all
+ * copies or substantial portions of the Software.
+ *
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS
+ * FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR
+ * COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER
+ * IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
+ * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
+ */
+!function(a){"use strict";"function"==typeof define&&define.amd?define(["jquery"],a):a(jQuery)}(function(a){"use strict";function b(a){if(a instanceof Date)return a;if(String(a).match(g))return String(a).match(/^[0-9]*$/)&&(a=Number(a)),String(a).match(/\-/)&&(a=String(a).replace(/\-/g,"/")),new Date(a);throw new Error("Couldn't cast `"+a+"` to a date object.")}function c(a){var b=a.toString().replace(/([.?*+^$[\]\\(){}|-])/g,"\\$1");return new RegExp(b)}function d(a){return function(b){var d=b.match(/%(-|!)?[A-Z]{1}(:[^;]+;)?/gi);if(d)for(var f=0,g=d.length;f<g;++f){var h=d[f].match(/%(-|!)?([a-zA-Z]{1})(:[^;]+;)?/),j=c(h[0]),k=h[1]||"",l=h[3]||"",m=null;h=h[2],i.hasOwnProperty(h)&&(m=i[h],m=Number(a[m])),null!==m&&("!"===k&&(m=e(l,m)),""===k&&m<10&&(m="0"+m.toString()),b=b.replace(j,m.toString()))}return b=b.replace(/%%/,"%")}}function e(a,b){var c="s",d="";return a&&(a=a.replace(/(:|;|\s)/gi,"").split(/\,/),1===a.length?c=a[0]:(d=a[0],c=a[1])),Math.abs(b)>1?c:d}var f=[],g=[],h={precision:100,elapse:!1,defer:!1};g.push(/^[0-9]*$/.source),g.push(/([0-9]{1,2}\/){2}[0-9]{4}( [0-9]{1,2}(:[0-9]{2}){2})?/.source),g.push(/[0-9]{4}([\/\-][0-9]{1,2}){2}( [0-9]{1,2}(:[0-9]{2}){2})?/.source),g=new RegExp(g.join("|"));var i={Y:"years",m:"months",n:"daysToMonth",d:"daysToWeek",w:"weeks",W:"weeksToMonth",H:"hours",M:"minutes",S:"seconds",D:"totalDays",I:"totalHours",N:"totalMinutes",T:"totalSeconds"},j=function(b,c,d){this.el=b,this.$el=a(b),this.interval=null,this.offset={},this.options=a.extend({},h),this.instanceNumber=f.length,f.push(this),this.$el.data("countdown-instance",this.instanceNumber),d&&("function"==typeof d?(this.$el.on("update.countdown",d),this.$el.on("stoped.countdown",d),this.$el.on("finish.countdown",d)):this.options=a.extend({},h,d)),this.setFinalDate(c),this.options.defer===!1&&this.start()};a.extend(j.prototype,{start:function(){null!==this.interval&&clearInterval(this.interval);var a=this;this.update(),this.interval=setInterval(function(){a.update.call(a)},this.options.precision)},stop:function(){clearInterval(this.interval),this.interval=null,this.dispatchEvent("stoped")},toggle:function(){this.interval?this.stop():this.start()},pause:function(){this.stop()},resume:function(){this.start()},remove:function(){this.stop.call(this),f[this.instanceNumber]=null,delete this.$el.data().countdownInstance},setFinalDate:function(a){this.finalDate=b(a)},update:function(){if(0===this.$el.closest("html").length)return void this.remove();var b,c=void 0!==a._data(this.el,"events"),d=new Date;b=this.finalDate.getTime()-d.getTime(),b=Math.ceil(b/1e3),b=!this.options.elapse&&b<0?0:Math.abs(b),this.totalSecsLeft!==b&&c&&(this.totalSecsLeft=b,this.elapsed=d>=this.finalDate,this.offset={seconds:this.totalSecsLeft%60,minutes:Math.floor(this.totalSecsLeft/60)%60,hours:Math.floor(this.totalSecsLeft/60/60)%24,days:Math.floor(this.totalSecsLeft/60/60/24)%7,daysToWeek:Math.floor(this.totalSecsLeft/60/60/24)%7,daysToMonth:Math.floor(this.totalSecsLeft/60/60/24%30.4368),weeks:Math.floor(this.totalSecsLeft/60/60/24/7),weeksToMonth:Math.floor(this.totalSecsLeft/60/60/24/7)%4,months:Math.floor(this.totalSecsLeft/60/60/24/30.4368),years:Math.abs(this.finalDate.getFullYear()-d.getFullYear()),totalDays:Math.floor(this.totalSecsLeft/60/60/24),totalHours:Math.floor(this.totalSecsLeft/60/60),totalMinutes:Math.floor(this.totalSecsLeft/60),totalSeconds:this.totalSecsLeft},this.options.elapse||0!==this.totalSecsLeft?this.dispatchEvent("update"):(this.stop(),this.dispatchEvent("finish")))},dispatchEvent:function(b){var c=a.Event(b+".countdown");c.finalDate=this.finalDate,c.elapsed=this.elapsed,c.offset=a.extend({},this.offset),c.strftime=d(this.offset),this.$el.trigger(c)}}),a.fn.countdown=function(){var b=Array.prototype.slice.call(arguments,0);return this.each(function(){var c=a(this).data("countdown-instance");if(void 0!==c){var d=f[c],e=b[0];j.prototype.hasOwnProperty(e)?d[e].apply(d,b.slice(1)):null===String(e).match(/^[$A-Z_][0-9A-Z_$]*$/i)?(d.setFinalDate.call(d,e),d.start()):a.error("Method %s does not exist on jQuery.countdown".replace(/\%s/gi,e))}else new j(this,b[0],b[1])})}});
+
+
+
+/*!
+ * headroom.js v0.9.4 - Give your page some headroom. Hide your header until you need it
+ * Copyright (c) 2018 Nick Williams - http://wicky.nillia.ms/headroom.js
+ * License: MIT
+ */
+
+!function(a,b){"use strict";"function"==typeof define&&define.amd?define([],b):"object"==typeof exports?module.exports=b():a.Headroom=b()}(this,function(){"use strict";function a(a){this.callback=a,this.ticking=!1}function b(a){return a&&"undefined"!=typeof window&&(a===window||a.nodeType)}function c(a){if(arguments.length<=0)throw new Error("Missing arguments in extend function");var d,e,f=a||{};for(e=1;e<arguments.length;e++){var g=arguments[e]||{};for(d in g)"object"!=typeof f[d]||b(f[d])?f[d]=f[d]||g[d]:f[d]=c(f[d],g[d])}return f}function d(a){return a===Object(a)?a:{down:a,up:a}}function e(a,b){b=c(b,e.options),this.lastKnownScrollY=0,this.elem=a,this.tolerance=d(b.tolerance),this.classes=b.classes,this.offset=b.offset,this.scroller=b.scroller,this.initialised=!1,this.onPin=b.onPin,this.onUnpin=b.onUnpin,this.onTop=b.onTop,this.onNotTop=b.onNotTop,this.onBottom=b.onBottom,this.onNotBottom=b.onNotBottom}var f={bind:!!function(){}.bind,classList:"classList"in document.documentElement,rAF:!!(window.requestAnimationFrame||window.webkitRequestAnimationFrame||window.mozRequestAnimationFrame)};return window.requestAnimationFrame=window.requestAnimationFrame||window.webkitRequestAnimationFrame||window.mozRequestAnimationFrame,a.prototype={constructor:a,update:function(){this.callback&&this.callback(),this.ticking=!1},requestTick:function(){this.ticking||(requestAnimationFrame(this.rafCallback||(this.rafCallback=this.update.bind(this))),this.ticking=!0)},handleEvent:function(){this.requestTick()}},e.prototype={constructor:e,init:function(){if(e.cutsTheMustard)return this.debouncer=new a(this.update.bind(this)),this.elem.classList.add(this.classes.initial),setTimeout(this.attachEvent.bind(this),100),this},destroy:function(){var a=this.classes;this.initialised=!1;for(var b in a)a.hasOwnProperty(b)&&this.elem.classList.remove(a[b]);this.scroller.removeEventListener("scroll",this.debouncer,!1)},attachEvent:function(){this.initialised||(this.lastKnownScrollY=this.getScrollY(),this.initialised=!0,this.scroller.addEventListener("scroll",this.debouncer,!1),this.debouncer.handleEvent())},unpin:function(){var a=this.elem.classList,b=this.classes;!a.contains(b.pinned)&&a.contains(b.unpinned)||(a.add(b.unpinned),a.remove(b.pinned),this.onUnpin&&this.onUnpin.call(this))},pin:function(){var a=this.elem.classList,b=this.classes;a.contains(b.unpinned)&&(a.remove(b.unpinned),a.add(b.pinned),this.onPin&&this.onPin.call(this))},top:function(){var a=this.elem.classList,b=this.classes;a.contains(b.top)||(a.add(b.top),a.remove(b.notTop),this.onTop&&this.onTop.call(this))},notTop:function(){var a=this.elem.classList,b=this.classes;a.contains(b.notTop)||(a.add(b.notTop),a.remove(b.top),this.onNotTop&&this.onNotTop.call(this))},bottom:function(){var a=this.elem.classList,b=this.classes;a.contains(b.bottom)||(a.add(b.bottom),a.remove(b.notBottom),this.onBottom&&this.onBottom.call(this))},notBottom:function(){var a=this.elem.classList,b=this.classes;a.contains(b.notBottom)||(a.add(b.notBottom),a.remove(b.bottom),this.onNotBottom&&this.onNotBottom.call(this))},getScrollY:function(){return void 0!==this.scroller.pageYOffset?this.scroller.pageYOffset:void 0!==this.scroller.scrollTop?this.scroller.scrollTop:(document.documentElement||document.body.parentNode||document.body).scrollTop},getViewportHeight:function(){return window.innerHeight||document.documentElement.clientHeight||document.body.clientHeight},getElementPhysicalHeight:function(a){return Math.max(a.offsetHeight,a.clientHeight)},getScrollerPhysicalHeight:function(){return this.scroller===window||this.scroller===document.body?this.getViewportHeight():this.getElementPhysicalHeight(this.scroller)},getDocumentHeight:function(){var a=document.body,b=document.documentElement;return Math.max(a.scrollHeight,b.scrollHeight,a.offsetHeight,b.offsetHeight,a.clientHeight,b.clientHeight)},getElementHeight:function(a){return Math.max(a.scrollHeight,a.offsetHeight,a.clientHeight)},getScrollerHeight:function(){return this.scroller===window||this.scroller===document.body?this.getDocumentHeight():this.getElementHeight(this.scroller)},isOutOfBounds:function(a){var b=a<0,c=a+this.getScrollerPhysicalHeight()>this.getScrollerHeight();return b||c},toleranceExceeded:function(a,b){return Math.abs(a-this.lastKnownScrollY)>=this.tolerance[b]},shouldUnpin:function(a,b){var c=a>this.lastKnownScrollY,d=a>=this.offset;return c&&d&&b},shouldPin:function(a,b){var c=a<this.lastKnownScrollY,d=a<=this.offset;return c&&b||d},update:function(){var a=this.getScrollY(),b=a>this.lastKnownScrollY?"down":"up",c=this.toleranceExceeded(a,b);this.isOutOfBounds(a)||(a<=this.offset?this.top():this.notTop(),a+this.getViewportHeight()>=this.getScrollerHeight()?this.bottom():this.notBottom(),this.shouldUnpin(a,c)?this.unpin():this.shouldPin(a,c)&&this.pin(),this.lastKnownScrollY=a)}},e.options={tolerance:{up:0,down:0},offset:0,scroller:window,classes:{pinned:"headroom--pinned",unpinned:"headroom--unpinned",top:"headroom--top",notTop:"headroom--not-top",bottom:"headroom--bottom",notBottom:"headroom--not-bottom",initial:"headroom"}},e.cutsTheMustard="undefined"!=typeof f&&f.rAF&&f.bind&&f.classList,e});
+
+
+
+/**
+ * jquery-circle-progress - jQuery Plugin to draw animated circular progress bars:
+ * {@link http://kottenator.github.io/jquery-circle-progress/}
+ *
+ * @author Rostyslav Bryzgunov <kottenator@gmail.com>
+ * @version 1.2.2
+ * @licence MIT
+ * @preserve
+ */
+ !function(i){if("function"==typeof define&&define.amd)define(["jquery"],i);else if("object"==typeof module&&module.exports){var t=require("jquery");i(t),module.exports=t}else i(jQuery)}(function(i){function t(i){this.init(i)}t.prototype={value:0,size:100,startAngle:-Math.PI,thickness:"auto",fill:{gradient:["#3aeabb","#fdd250"]},emptyFill:"rgba(0, 0, 0, .1)",animation:{duration:1200,easing:"circleProgressEasing"},animationStartValue:0,reverse:!1,lineCap:"butt",insertMode:"prepend",constructor:t,el:null,canvas:null,ctx:null,radius:0,arcFill:null,lastFrameValue:0,init:function(t){i.extend(this,t),this.radius=this.size/2,this.initWidget(),this.initFill(),this.draw(),this.el.trigger("circle-inited")},initWidget:function(){this.canvas||(this.canvas=i("<canvas>")["prepend"==this.insertMode?"prependTo":"appendTo"](this.el)[0]);var t=this.canvas;if(t.width=this.size,t.height=this.size,this.ctx=t.getContext("2d"),window.devicePixelRatio>1){var e=window.devicePixelRatio;t.style.width=t.style.height=this.size+"px",t.width=t.height=this.size*e,this.ctx.scale(e,e)}},initFill:function(){function t(){var t=i("<canvas>")[0];t.width=e.size,t.height=e.size,t.getContext("2d").drawImage(g,0,0,r,r),e.arcFill=e.ctx.createPattern(t,"no-repeat"),e.drawFrame(e.lastFrameValue)}var e=this,a=this.fill,n=this.ctx,r=this.size;if(!a)throw Error("The fill is not specified!");if("string"==typeof a&&(a={color:a}),a.color&&(this.arcFill=a.color),a.gradient){var s=a.gradient;if(1==s.length)this.arcFill=s[0];else if(s.length>1){for(var l=a.gradientAngle||0,o=a.gradientDirection||[r/2*(1-Math.cos(l)),r/2*(1+Math.sin(l)),r/2*(1+Math.cos(l)),r/2*(1-Math.sin(l))],h=n.createLinearGradient.apply(n,o),c=0;c<s.length;c++){var d=s[c],u=c/(s.length-1);i.isArray(d)&&(u=d[1],d=d[0]),h.addColorStop(u,d)}this.arcFill=h}}if(a.image){var g;a.image instanceof Image?g=a.image:(g=new Image,g.src=a.image),g.complete?t():g.onload=t}},draw:function(){this.animation?this.drawAnimated(this.value):this.drawFrame(this.value)},drawFrame:function(i){this.lastFrameValue=i,this.ctx.clearRect(0,0,this.size,this.size),this.drawEmptyArc(i),this.drawArc(i)},drawArc:function(i){if(0!==i){var t=this.ctx,e=this.radius,a=this.getThickness(),n=this.startAngle;t.save(),t.beginPath(),this.reverse?t.arc(e,e,e-a/2,n-2*Math.PI*i,n):t.arc(e,e,e-a/2,n,n+2*Math.PI*i),t.lineWidth=a,t.lineCap=this.lineCap,t.strokeStyle=this.arcFill,t.stroke(),t.restore()}},drawEmptyArc:function(i){var t=this.ctx,e=this.radius,a=this.getThickness(),n=this.startAngle;i<1&&(t.save(),t.beginPath(),i<=0?t.arc(e,e,e-a/2,0,2*Math.PI):this.reverse?t.arc(e,e,e-a/2,n,n-2*Math.PI*i):t.arc(e,e,e-a/2,n+2*Math.PI*i,n),t.lineWidth=a,t.strokeStyle=this.emptyFill,t.stroke(),t.restore())},drawAnimated:function(t){var e=this,a=this.el,n=i(this.canvas);n.stop(!0,!1),a.trigger("circle-animation-start"),n.css({animationProgress:0}).animate({animationProgress:1},i.extend({},this.animation,{step:function(i){var n=e.animationStartValue*(1-i)+t*i;e.drawFrame(n),a.trigger("circle-animation-progress",[i,n])}})).promise().always(function(){a.trigger("circle-animation-end")})},getThickness:function(){return i.isNumeric(this.thickness)?this.thickness:this.size/14},getValue:function(){return this.value},setValue:function(i){this.animation&&(this.animationStartValue=this.lastFrameValue),this.value=i,this.draw()}},i.circleProgress={defaults:t.prototype},i.easing.circleProgressEasing=function(i){return i<.5?(i=2*i,.5*i*i*i):(i=2-2*i,1-.5*i*i*i)},i.fn.circleProgress=function(e,a){var n="circle-progress",r=this.data(n);if("widget"==e){if(!r)throw Error('Calling "widget" method on not initialized instance is forbidden');return r.canvas}if("value"==e){if(!r)throw Error('Calling "value" method on not initialized instance is forbidden');if("undefined"==typeof a)return r.getValue();var s=arguments[1];return this.each(function(){i(this).data(n).setValue(s)})}return this.each(function(){var a=i(this),r=a.data(n),s=i.isPlainObject(e)?e:{};if(r)r.init(s);else{var l=i.extend({},a.data());"string"==typeof l.fill&&(l.fill=JSON.parse(l.fill)),"string"==typeof l.animation&&(l.animation=JSON.parse(l.animation)),s=i.extend(l,s),s.el=a,r=new t(s),a.data(n,r)}})}});
+
+
+
+/*! WOW - v1.0.2 - 2014-10-28
+* Copyright (c) 2014 Matthieu Aussaguel; Licensed MIT */(function(){'use strict';var a,b,c,d,e,f=function(a,b){return function(){return a.apply(b,arguments)}},g=[].indexOf||function(a){for(var b=0,c=this.length;c>b;b++)if(b in this&&this[b]===a)return b;return-1};b=function(){function a(){}return a.prototype.extend=function(a,b){var c,d;for(c in b)d=b[c],null==a[c]&&(a[c]=d);return a},a.prototype.isMobile=function(a){return/Android|webOS|iPhone|iPad|iPod|BlackBerry|IEMobile|Opera Mini/i.test(a)},a.prototype.addEvent=function(a,b,c){return null!=a.addEventListener?a.addEventListener(b,c,!1):null!=a.attachEvent?a.attachEvent("on"+b,c):a[b]=c},a.prototype.removeEvent=function(a,b,c){return null!=a.removeEventListener?a.removeEventListener(b,c,!1):null!=a.detachEvent?a.detachEvent("on"+b,c):delete a[b]},a.prototype.innerHeight=function(){return"innerHeight"in window?window.innerHeight:document.documentElement.clientHeight},a}(),c=this.WeakMap||this.MozWeakMap||(c=function(){function a(){this.keys=[],this.values=[]}return a.prototype.get=function(a){var b,c,d,e,f;for(f=this.keys,b=d=0,e=f.length;e>d;b=++d)if(c=f[b],c===a)return this.values[b]},a.prototype.set=function(a,b){var c,d,e,f,g;for(g=this.keys,c=e=0,f=g.length;f>e;c=++e)if(d=g[c],d===a)return void(this.values[c]=b);return this.keys.push(a),this.values.push(b)},a}()),a=this.MutationObserver||this.WebkitMutationObserver||this.MozMutationObserver||(a=function(){function a(){"undefined"!=typeof console&&null!==console&&console.warn("MutationObserver is not supported by your browser."),"undefined"!=typeof console&&null!==console&&console.warn("WOW.js cannot detect dom mutations, please call .sync() after loading new content.")}return a.notSupported=!0,a.prototype.observe=function(){},a}()),d=this.getComputedStyle||function(a){return this.getPropertyValue=function(b){var c;return"float"===b&&(b="styleFloat"),e.test(b)&&b.replace(e,function(a,b){return b.toUpperCase()}),(null!=(c=a.currentStyle)?c[b]:void 0)||null},this},e=/(\-([a-z]){1})/g,this.WOW=function(){function e(a){null==a&&(a={}),this.scrollCallback=f(this.scrollCallback,this),this.scrollHandler=f(this.scrollHandler,this),this.start=f(this.start,this),this.scrolled=!0,this.config=this.util().extend(a,this.defaults),this.animationNameCache=new c}return e.prototype.defaults={boxClass:"wow",animateClass:"animated",offset:0,mobile:!0,live:!0},e.prototype.init=function(){var a;return this.element=window.document.documentElement,"interactive"===(a=document.readyState)||"complete"===a?this.start():this.util().addEvent(document,"DOMContentLoaded",this.start),this.finished=[]},e.prototype.start=function(){var b,c,d,e;if(this.stopped=!1,this.boxes=function(){var a,c,d,e;for(d=this.element.querySelectorAll("."+this.config.boxClass),e=[],a=0,c=d.length;c>a;a++)b=d[a],e.push(b);return e}.call(this),this.all=function(){var a,c,d,e;for(d=this.boxes,e=[],a=0,c=d.length;c>a;a++)b=d[a],e.push(b);return e}.call(this),this.boxes.length)if(this.disabled())this.resetStyle();else for(e=this.boxes,c=0,d=e.length;d>c;c++)b=e[c],this.applyStyle(b,!0);return this.disabled()||(this.util().addEvent(window,"scroll",this.scrollHandler),this.util().addEvent(window,"resize",this.scrollHandler),this.interval=setInterval(this.scrollCallback,50)),this.config.live?new a(function(a){return function(b){var c,d,e,f,g;for(g=[],e=0,f=b.length;f>e;e++)d=b[e],g.push(function(){var a,b,e,f;for(e=d.addedNodes||[],f=[],a=0,b=e.length;b>a;a++)c=e[a],f.push(this.doSync(c));return f}.call(a));return g}}(this)).observe(document.body,{childList:!0,subtree:!0}):void 0},e.prototype.stop=function(){return this.stopped=!0,this.util().removeEvent(window,"scroll",this.scrollHandler),this.util().removeEvent(window,"resize",this.scrollHandler),null!=this.interval?clearInterval(this.interval):void 0},e.prototype.sync=function(){return a.notSupported?this.doSync(this.element):void 0},e.prototype.doSync=function(a){var b,c,d,e,f;if(null==a&&(a=this.element),1===a.nodeType){for(a=a.parentNode||a,e=a.querySelectorAll("."+this.config.boxClass),f=[],c=0,d=e.length;d>c;c++)b=e[c],g.call(this.all,b)<0?(this.boxes.push(b),this.all.push(b),this.stopped||this.disabled()?this.resetStyle():this.applyStyle(b,!0),f.push(this.scrolled=!0)):f.push(void 0);return f}},e.prototype.show=function(a){return this.applyStyle(a),a.className=""+a.className+" "+this.config.animateClass},e.prototype.applyStyle=function(a,b){var c,d,e;return d=a.getAttribute("data-wow-duration"),c=a.getAttribute("data-wow-delay"),e=a.getAttribute("data-wow-iteration"),this.animate(function(f){return function(){return f.customStyle(a,b,d,c,e)}}(this))},e.prototype.animate=function(){return"requestAnimationFrame"in window?function(a){return window.requestAnimationFrame(a)}:function(a){return a()}}(),e.prototype.resetStyle=function(){var a,b,c,d,e;for(d=this.boxes,e=[],b=0,c=d.length;c>b;b++)a=d[b],e.push(a.style.visibility="visible");return e},e.prototype.customStyle=function(a,b,c,d,e){return b&&this.cacheAnimationName(a),a.style.visibility=b?"hidden":"visible",c&&this.vendorSet(a.style,{animationDuration:c}),d&&this.vendorSet(a.style,{animationDelay:d}),e&&this.vendorSet(a.style,{animationIterationCount:e}),this.vendorSet(a.style,{animationName:b?"none":this.cachedAnimationName(a)}),a},e.prototype.vendors=["moz","webkit"],e.prototype.vendorSet=function(a,b){var c,d,e,f;f=[];for(c in b)d=b[c],a[""+c]=d,f.push(function(){var b,f,g,h;for(g=this.vendors,h=[],b=0,f=g.length;f>b;b++)e=g[b],h.push(a[""+e+c.charAt(0).toUpperCase()+c.substr(1)]=d);return h}.call(this));return f},e.prototype.vendorCSS=function(a,b){var c,e,f,g,h,i;for(e=d(a),c=e.getPropertyCSSValue(b),i=this.vendors,g=0,h=i.length;h>g;g++)f=i[g],c=c||e.getPropertyCSSValue("-"+f+"-"+b);return c},e.prototype.animationName=function(a){var b;try{b=this.vendorCSS(a,"animation-name").cssText}catch(c){b=d(a).getPropertyValue("animation-name")}return"none"===b?"":b},e.prototype.cacheAnimationName=function(a){return this.animationNameCache.set(a,this.animationName(a))},e.prototype.cachedAnimationName=function(a){return this.animationNameCache.get(a)},e.prototype.scrollHandler=function(){return this.scrolled=!0},e.prototype.scrollCallback=function(){var a;return!this.scrolled||(this.scrolled=!1,this.boxes=function(){var b,c,d,e;for(d=this.boxes,e=[],b=0,c=d.length;c>b;b++)a=d[b],a&&(this.isVisible(a)?this.show(a):e.push(a));return e}.call(this),this.boxes.length||this.config.live)?void 0:this.stop()},e.prototype.offsetTop=function(a){for(var b;void 0===a.offsetTop;)a=a.parentNode;for(b=a.offsetTop;a=a.offsetParent;)b+=a.offsetTop;return b},e.prototype.isVisible=function(a){var b,c,d,e,f;return c=a.getAttribute("data-wow-offset")||this.config.offset,f=window.pageYOffset,e=f+Math.min(this.element.clientHeight,this.util().innerHeight())-c,d=this.offsetTop(a),b=d+a.clientHeight,e>=d&&b>=f},e.prototype.util=function(){return null!=this._util?this._util:this._util=new b},e.prototype.disabled=function(){return!this.config.mobile&&this.util().isMobile(navigator.userAgent)},e}()}).call(this);
+
+/*!
+Waypoints - 4.0.1
+Copyright � 2011-2016 Caleb Troughton
+Licensed under the MIT license.
+://github.com/imakewebthings/waypoints/blob/master/licenses.txt
+*/
+!function(){"use strict";function t(o){if(!o)throw new Error("No options passed to Waypoint constructor");if(!o.element)throw new Error("No element option passed to Waypoint constructor");if(!o.handler)throw new Error("No handler option passed to Waypoint constructor");this.key="waypoint-"+e,this.options=t.Adapter.extend({},t.defaults,o),this.element=this.options.element,this.adapter=new t.Adapter(this.element),this.callback=o.handler,this.axis=this.options.horizontal?"horizontal":"vertical",this.enabled=this.options.enabled,this.triggerPoint=null,this.group=t.Group.findOrCreate({name:this.options.group,axis:this.axis}),this.lowgo=t.lowgo.findOrCreateByElement(this.options.lowgo),t.offsetAliases[this.options.offset]&&(this.options.offset=t.offsetAliases[this.options.offset]),this.group.add(this),this.lowgo.add(this),i[this.key]=this,e+=1}var e=0,i={};t.prototype.queueTrigger=function(t){this.group.queueTrigger(this,t)},t.prototype.trigger=function(t){this.enabled&&this.callback&&this.callback.apply(this,t)},t.prototype.destroy=function(){this.lowgo.remove(this),this.group.remove(this),delete i[this.key]},t.prototype.disable=function(){return this.enabled=!1,this},t.prototype.enable=function(){return this.lowgo.refresh(),this.enabled=!0,this},t.prototype.next=function(){return this.group.next(this)},t.prototype.previous=function(){return this.group.previous(this)},t.invokeAll=function(t){var e=[];for(var o in i)e.push(i[o]);for(var n=0,r=e.length;r>n;n++)e[n][t]()},t.destroyAll=function(){t.invokeAll("destroy")},t.disableAll=function(){t.invokeAll("disable")},t.enableAll=function(){t.lowgo.refreshAll();for(var e in i)i[e].enabled=!0;return this},t.refreshAll=function(){t.lowgo.refreshAll()},t.viewportHeight=function(){return window.innerHeight||document.documentElement.clientHeight},t.viewportWidth=function(){return document.documentElement.clientWidth},t.adapters=[],t.defaults={lowgo:window,continuous:!0,enabled:!0,group:"default",horizontal:!1,offset:0},t.offsetAliases={"bottom-in-view":function(){return this.lowgo.innerHeight()-this.adapter.outerHeight()},"right-in-view":function(){return this.lowgo.innerWidth()-this.adapter.outerWidth()}},window.Waypoint=t}(),function(){"use strict";function t(t){window.setTimeout(t,1e3/60)}function e(t){this.element=t,this.Adapter=n.Adapter,this.adapter=new this.Adapter(t),this.key="waypoint-lowgo-"+i,this.didScroll=!1,this.didResize=!1,this.oldScroll={x:this.adapter.scrollLeft(),y:this.adapter.scrollTop()},this.waypoints={vertical:{},horizontal:{}},t.waypointlowgoKey=this.key,o[t.waypointlowgoKey]=this,i+=1,n.windowlowgo||(n.windowlowgo=!0,n.windowlowgo=new e(window)),this.createThrottledScrollHandler(),this.createThrottledResizeHandler()}var i=0,o={},n=window.Waypoint,r=window.onload;e.prototype.add=function(t){var e=t.options.horizontal?"horizontal":"vertical";this.waypoints[e][t.key]=t,this.refresh()},e.prototype.checkEmpty=function(){var t=this.Adapter.isEmptyObject(this.waypoints.horizontal),e=this.Adapter.isEmptyObject(this.waypoints.vertical),i=this.element==this.element.window;t&&e&&!i&&(this.adapter.off(".waypoints"),delete o[this.key])},e.prototype.createThrottledResizeHandler=function(){function t(){e.handleResize(),e.didResize=!1}var e=this;this.adapter.on("resize.waypoints",function(){e.didResize||(e.didResize=!0,n.requestAnimationFrame(t))})},e.prototype.createThrottledScrollHandler=function(){function t(){e.handleScroll(),e.didScroll=!1}var e=this;this.adapter.on("scroll.waypoints",function(){(!e.didScroll||n.isTouch)&&(e.didScroll=!0,n.requestAnimationFrame(t))})},e.prototype.handleResize=function(){n.lowgo.refreshAll()},e.prototype.handleScroll=function(){var t={},e={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 i in e){var o=e[i],n=o.newScroll>o.oldScroll,r=n?o.forward:o.backward;for(var s in this.waypoints[i]){var a=this.waypoints[i][s];if(null!==a.triggerPoint){var l=o.oldScroll<a.triggerPoint,h=o.newScroll>=a.triggerPoint,p=l&&h,u=!l&&!h;(p||u)&&(a.queueTrigger(r),t[a.group.id]=a.group)}}}for(var c in t)t[c].flushTriggers();this.oldScroll={x:e.horizontal.newScroll,y:e.vertical.newScroll}},e.prototype.innerHeight=function(){return this.element==this.element.window?n.viewportHeight():this.adapter.innerHeight()},e.prototype.remove=function(t){delete this.waypoints[t.axis][t.key],this.checkEmpty()},e.prototype.innerWidth=function(){return this.element==this.element.window?n.viewportWidth():this.adapter.innerWidth()},e.prototype.destroy=function(){var t=[];for(var e in this.waypoints)for(var i in this.waypoints[e])t.push(this.waypoints[e][i]);for(var o=0,n=t.length;n>o;o++)t[o].destroy()},e.prototype.refresh=function(){var t,e=this.element==this.element.window,i=e?void 0:this.adapter.offset(),o={};this.handleScroll(),t={horizontal:{lowgoOffset:e?0:i.left,lowgoScroll:e?0:this.oldScroll.x,lowgoDimension:this.innerWidth(),oldScroll:this.oldScroll.x,forward:"right",backward:"left",offsetProp:"left"},vertical:{lowgoOffset:e?0:i.top,lowgoScroll:e?0:this.oldScroll.y,lowgoDimension:this.innerHeight(),oldScroll:this.oldScroll.y,forward:"down",backward:"up",offsetProp:"top"}};for(var r in t){var s=t[r];for(var a in this.waypoints[r]){var l,h,p,u,c,d=this.waypoints[r][a],f=d.options.offset,w=d.triggerPoint,y=0,g=null==w;d.element!==d.element.window&&(y=d.adapter.offset()[s.offsetProp]),"function"==typeof f?f=f.apply(d):"string"==typeof f&&(f=parseFloat(f),d.options.offset.indexOf("%")>-1&&(f=Math.ceil(s.lowgoDimension*f/100))),l=s.lowgoScroll-s.lowgoOffset,d.triggerPoint=Math.floor(y+l-f),h=w<s.oldScroll,p=d.triggerPoint>=s.oldScroll,u=h&&p,c=!h&&!p,!g&&u?(d.queueTrigger(s.backward),o[d.group.id]=d.group):!g&&c?(d.queueTrigger(s.forward),o[d.group.id]=d.group):g&&s.oldScroll>=d.triggerPoint&&(d.queueTrigger(s.forward),o[d.group.id]=d.group)}}return n.requestAnimationFrame(function(){for(var t in o)o[t].flushTriggers()}),this},e.findOrCreateByElement=function(t){return e.findByElement(t)||new e(t)},e.refreshAll=function(){for(var t in o)o[t].refresh()},e.findByElement=function(t){return o[t.waypointlowgoKey]},window.onload=function(){r&&r(),e.refreshAll()},n.requestAnimationFrame=function(e){var i=window.requestAnimationFrame||window.mozRequestAnimationFrame||window.webkitRequestAnimationFrame||t;i.call(window,e)},n.lowgo=e}(),function(){"use strict";function t(t,e){return t.triggerPoint-e.triggerPoint}function e(t,e){return e.triggerPoint-t.triggerPoint}function i(t){this.name=t.name,this.axis=t.axis,this.id=this.name+"-"+this.axis,this.waypoints=[],this.clearTriggerQueues(),o[this.axis][this.name]=this}var o={vertical:{},horizontal:{}},n=window.Waypoint;i.prototype.add=function(t){this.waypoints.push(t)},i.prototype.clearTriggerQueues=function(){this.triggerQueues={up:[],down:[],left:[],right:[]}},i.prototype.flushTriggers=function(){for(var i in this.triggerQueues){var o=this.triggerQueues[i],n="up"===i||"left"===i;o.sort(n?e:t);for(var r=0,s=o.length;s>r;r+=1){var a=o[r];(a.options.continuous||r===o.length-1)&&a.trigger([i])}}this.clearTriggerQueues()},i.prototype.next=function(e){this.waypoints.sort(t);var i=n.Adapter.inArray(e,this.waypoints),o=i===this.waypoints.length-1;return o?null:this.waypoints[i+1]},i.prototype.previous=function(e){this.waypoints.sort(t);var i=n.Adapter.inArray(e,this.waypoints);return i?this.waypoints[i-1]:null},i.prototype.queueTrigger=function(t,e){this.triggerQueues[e].push(t)},i.prototype.remove=function(t){var e=n.Adapter.inArray(t,this.waypoints);e>-1&&this.waypoints.splice(e,1)},i.prototype.first=function(){return this.waypoints[0]},i.prototype.last=function(){return this.waypoints[this.waypoints.length-1]},i.findOrCreate=function(t){return o[t.axis][t.name]||new i(t)},n.Group=i}(),function(){"use strict";function t(t){this.$element=e(t)}var e=window.jQuery,i=window.Waypoint;e.each(["innerHeight","innerWidth","off","offset","on","outerHeight","outerWidth","scrollLeft","scrollTop"],function(e,i){t.prototype[i]=function(){var t=Array.prototype.slice.call(arguments);return this.$element[i].apply(this.$element,t)}}),e.each(["extend","inArray","isEmptyObject"],function(i,o){t[o]=e[o]}),i.adapters.push({name:"jquery",Adapter:t}),i.Adapter=t}(),function(){"use strict";function t(t){return function(){var i=[],o=arguments[0];return t.isFunction(arguments[0])&&(o=t.extend({},arguments[1]),o.handler=arguments[0]),this.each(function(){var n=t.extend({},o,{element:this});"string"==typeof n.lowgo&&(n.lowgo=t(this).closest(n.lowgo)[0]),i.push(new e(n))}),i}}var e=window.Waypoint;window.jQuery&&(window.jQuery.fn.waypoint=t(window.jQuery)),window.Zepto&&(window.Zepto.fn.waypoint=t(window.Zepto))}();
+
+/* scroll fixed */
+(function(a){a.isScrollToFixed=function(b){return !!a(b).data("ScrollToFixed")};a.ScrollToFixed=function(d,i){var m=this;m.$el=a(d);m.el=d;m.$el.data("ScrollToFixed",m);var c=false;var H=m.$el;var I;var F;var k;var e;var z;var E=0;var r=0;var j=-1;var f=-1;var u=null;var A;var g;function v(){H.trigger("preUnfixed.ScrollToFixed");l();H.trigger("unfixed.ScrollToFixed");f=-1;E=H.offset().top;r=H.offset().left;if(m.options.offsets){r+=(H.offset().left-H.position().left)}if(j==-1){j=r}I=H.css("position");c=true;if(m.options.bottom!=-1){H.trigger("preFixed.ScrollToFixed");x();H.trigger("fixed.ScrollToFixed")}}function o(){var J=m.options.limit;if(!J){return 0}if(typeof(J)==="function"){return J.apply(H)}return J}function q(){return I==="fixed"}function y(){return I==="absolute"}function h(){return !(q()||y())}function x(){if(!q()){var J=H[0].getBoundingClientRect();u.css({display:H.css("display"),width:J.width,height:J.height,"float":H.css("float")});cssOptions={"z-index":m.options.zIndex,position:"fixed",top:m.options.bottom==-1?t():"",bottom:m.options.bottom==-1?"":m.options.bottom,"margin-left":"0px"};if(!m.options.dontSetWidth){cssOptions.width=H.css("width")}H.css(cssOptions);H.addClass(m.options.baseClassName);if(m.options.className){H.addClass(m.options.className)}I="fixed"}}function b(){var K=o();var J=r;if(m.options.removeOffsets){J="";K=K-E}cssOptions={position:"absolute",top:K,left:J,"margin-left":"0px",bottom:""};if(!m.options.dontSetWidth){cssOptions.width=H.css("width")}H.css(cssOptions);I="absolute"}function l(){if(!h()){f=-1;u.css("display","none");H.css({"z-index":z,width:"",position:F,left:"",top:e,"margin-left":""});H.removeClass("scroll-to-fixed-fixed");if(m.options.className){H.removeClass(m.options.className)}I=null}}function w(J){if(J!=f){H.css("left",r-J);f=J}}function t(){var J=m.options.marginTop;if(!J){return 0}if(typeof(J)==="function"){return J.apply(H)}return J}function B(){if(!a.isScrollToFixed(H)||H.is(":hidden")){return}var M=c;var L=h();if(!c){v()}else{if(h()){E=H.offset().top;r=H.offset().left}}var J=a(window).scrollLeft();var N=a(window).scrollTop();var K=o();if(m.options.minWidth&&a(window).width()<m.options.minWidth){if(!h()||!M){p();H.trigger("preUnfixed.ScrollToFixed");l();H.trigger("unfixed.ScrollToFixed")}}else{if(m.options.maxWidth&&a(window).width()>m.options.maxWidth){if(!h()||!M){p();H.trigger("preUnfixed.ScrollToFixed");l();H.trigger("unfixed.ScrollToFixed")}}else{if(m.options.bottom==-1){if(K>0&&N>=K-t()){if(!L&&(!y()||!M)){p();H.trigger("preAbsolute.ScrollToFixed");b();H.trigger("unfixed.ScrollToFixed")}}else{if(N>=E-t()){if(!q()||!M){p();H.trigger("preFixed.ScrollToFixed");x();f=-1;H.trigger("fixed.ScrollToFixed")}w(J)}else{if(!h()||!M){p();H.trigger("preUnfixed.ScrollToFixed");l();H.trigger("unfixed.ScrollToFixed")}}}}else{if(K>0){if(N+a(window).height()-H.outerHeight(true)>=K-(t()||-n())){if(q()){p();H.trigger("preUnfixed.ScrollToFixed");if(F==="absolute"){b()}else{l()}H.trigger("unfixed.ScrollToFixed")}}else{if(!q()){p();H.trigger("preFixed.ScrollToFixed");x()}w(J);H.trigger("fixed.ScrollToFixed")}}else{w(J)}}}}}function n(){if(!m.options.bottom){return 0}return m.options.bottom}function p(){var J=H.css("position");if(J=="absolute"){H.trigger("postAbsolute.ScrollToFixed")}else{if(J=="fixed"){H.trigger("postFixed.ScrollToFixed")}else{H.trigger("postUnfixed.ScrollToFixed")}}}var D=function(J){if(H.is(":visible")){c=false;B()}else{l()}};var G=function(J){(!!window.requestAnimationFrame)?requestAnimationFrame(B):B()};var C=function(){var K=document.body;if(document.createElement&&K&&K.appendChild&&K.removeChild){var M=document.createElement("div");if(!M.getBoundingClientRect){return null}M.innerHTML="x";M.style.cssText="position:fixed;top:100px;";K.appendChild(M);var N=K.style.height,O=K.scrollTop;K.style.height="3000px";K.scrollTop=500;var J=M.getBoundingClientRect().top;K.style.height=N;var L=(J===100);K.removeChild(M);K.scrollTop=O;return L}return null};var s=function(J){J=J||window.event;if(J.preventDefault){J.preventDefault()}J.returnValue=false};m.init=function(){m.options=a.extend({},a.ScrollToFixed.defaultOptions,i);z=H.css("z-index");m.$el.css("z-index",m.options.zIndex);u=a("<div />");I=H.css("position");F=H.css("position");k=H.css("float");e=H.css("top");if(h()){m.$el.after(u)}a(window).bind("resize.ScrollToFixed",D);a(window).bind("scroll.ScrollToFixed",G);if("ontouchmove" in window){a(window).bind("touchmove.ScrollToFixed",B)}if(m.options.preFixed){H.bind("preFixed.ScrollToFixed",m.options.preFixed)}if(m.options.postFixed){H.bind("postFixed.ScrollToFixed",m.options.postFixed)}if(m.options.preUnfixed){H.bind("preUnfixed.ScrollToFixed",m.options.preUnfixed)}if(m.options.postUnfixed){H.bind("postUnfixed.ScrollToFixed",m.options.postUnfixed)}if(m.options.preAbsolute){H.bind("preAbsolute.ScrollToFixed",m.options.preAbsolute)}if(m.options.postAbsolute){H.bind("postAbsolute.ScrollToFixed",m.options.postAbsolute)}if(m.options.fixed){H.bind("fixed.ScrollToFixed",m.options.fixed)}if(m.options.unfixed){H.bind("unfixed.ScrollToFixed",m.options.unfixed)}if(m.options.spacerClass){u.addClass(m.options.spacerClass)}H.bind("resize.ScrollToFixed",function(){u.height(H.height())});H.bind("scroll.ScrollToFixed",function(){H.trigger("preUnfixed.ScrollToFixed");l();H.trigger("unfixed.ScrollToFixed");B()});H.bind("detach.ScrollToFixed",function(J){s(J);H.trigger("preUnfixed.ScrollToFixed");l();H.trigger("unfixed.ScrollToFixed");a(window).unbind("resize.ScrollToFixed",D);a(window).unbind("scroll.ScrollToFixed",G);H.unbind(".ScrollToFixed");u.remove();m.$el.removeData("ScrollToFixed")});D()};m.init()};a.ScrollToFixed.defaultOptions={marginTop:0,limit:0,bottom:-1,zIndex:1000,baseClassName:"scroll-to-fixed-fixed"};a.fn.scrollToFixed=function(b){return this.each(function(){(new a.ScrollToFixed(this,b))})}})(jQuery);
+
+
+
+/* jQuery Nice Select - v1.0
+ ://github.com/hernansartorio/jquery-nice-select
+ Made by Hern�n Sartorio */
+!function(e){e.fn.niceSelect=function(t){function s(t){t.after(e("<div></div>").addClass("nice-select").addClass(t.attr("class")||"").addClass(t.attr("disabled")?"disabled":"").attr("tabindex",t.attr("disabled")?null:"0").html('<span class="current"></span><ul class="list"></ul>'));var s=t.next(),n=t.find("option"),i=t.find("option:selected");s.find(".current").html(i.data("display")||i.text()),n.each(function(t){var n=e(this),i=n.data("display");s.find("ul").append(e("<li></li>").attr("data-value",n.val()).attr("data-display",i||null).addClass("option"+(n.is(":selected")?" selected":"")+(n.is(":disabled")?" disabled":"")).html(n.text()))})}if("string"==typeof t)return"update"==t?this.each(function(){var t=e(this),n=e(this).next(".nice-select"),i=n.hasClass("open");n.length&&(n.remove(),s(t),i&&t.next().trigger("click"))}):"destroy"==t?(this.each(function(){var t=e(this),s=e(this).next(".nice-select");s.length&&(s.remove(),t.css("display",""))}),0==e(".nice-select").length&&e(document).off(".nice_select")):console.log('Method "'+t+'" does not exist.'),this;this.hide(),this.each(function(){var t=e(this);t.next().hasClass("nice-select")||s(t)}),e(document).off(".nice_select"),e(document).on("click.nice_select",".nice-select",function(t){var s=e(this);e(".nice-select").not(s).removeClass("open"),s.toggleClass("open"),s.hasClass("open")?(s.find(".option"),s.find(".focus").removeClass("focus"),s.find(".selected").addClass("focus")):s.focus()}),e(document).on("click.nice_select",function(t){0===e(t.target).closest(".nice-select").length&&e(".nice-select").removeClass("open").find(".option")}),e(document).on("click.nice_select",".nice-select .option:not(.disabled)",function(t){var s=e(this),n=s.closest(".nice-select");n.find(".selected").removeClass("selected"),s.addClass("selected");var i=s.data("display")||s.text();n.find(".current").text(i),n.prev("select").val(s.data("value")).trigger("change")}),e(document).on("keydown.nice_select",".nice-select",function(t){var s=e(this),n=e(s.find(".focus")||s.find(".list .option.selected"));if(32==t.keyCode||13==t.keyCode)return s.hasClass("open")?n.trigger("click"):s.trigger("click"),!1;if(40==t.keyCode){if(s.hasClass("open")){var i=n.nextAll(".option:not(.disabled)").first();i.length>0&&(s.find(".focus").removeClass("focus"),i.addClass("focus"))}else s.trigger("click");return!1}if(38==t.keyCode){if(s.hasClass("open")){var l=n.prevAll(".option:not(.disabled)").first();l.length>0&&(s.find(".focus").removeClass("focus"),l.addClass("focus"))}else s.trigger("click");return!1}if(27==t.keyCode)s.hasClass("open")&&s.trigger("click");else if(9==t.keyCode&&s.hasClass("open"))return!1});var n=document.createElement("a").style;return n.cssText="pointer-events:auto","auto"!==n.pointerEvents&&e("html").addClass("no-csspointerevents"),this}}(jQuery);
+
+
+/*!
+ * scrollup v2.4.1
+ * Url: http://markgoodyear.com/labs/scrollup/
+ * Copyright (c) Mark Goodyear � @markgdyr � http://markgoodyear.com
+ * License: MIT
+ */
+!function(l,o,e){"use strict";l.fn.scrollUp=function(o){l.data(e.body,"scrollUp")||(l.data(e.body,"scrollUp",!0),l.fn.scrollUp.init(o))},l.fn.scrollUp.init=function(r){var s,t,c,i,n,a,d,p=l.fn.scrollUp.settings=l.extend({},l.fn.scrollUp.defaults,r),f=!1;switch(d=p.scrollTrigger?l(p.scrollTrigger):l("<a/>",{id:p.scrollName,href:"#top"}),p.scrollTitle&&d.attr("title",p.scrollTitle),d.appendTo("body"),p.scrollImg||p.scrollTrigger||d.html(p.scrollText),d.css({display:"none",position:"fixed",zIndex:p.zIndex}),p.activeOverlay&&l("<div/>",{id:p.scrollName+"-active"}).css({position:"absolute",top:p.scrollDistance+"px",width:"100%",borderTop:"1px dotted"+p.activeOverlay,zIndex:p.zIndex}).appendTo("body"),p.animation){case"fade":s="fadeIn",t="fadeOut",c=p.animationSpeed;break;case"slide":s="slideDown",t="slideUp",c=p.animationSpeed;break;default:s="show",t="hide",c=0}i="top"===p.scrollFrom?p.scrollDistance:l(e).height()-l(o).height()-p.scrollDistance,n=l(o).scroll(function(){l(o).scrollTop()>i?f||(d[s](c),f=!0):f&&(d[t](c),f=!1)}),p.scrollTarget?"number"==typeof p.scrollTarget?a=p.scrollTarget:"string"==typeof p.scrollTarget&&(a=Math.floor(l(p.scrollTarget).offset().top)):a=0,d.click(function(o){o.preventDefault(),l("html, body").animate({scrollTop:a},p.scrollSpeed,p.easingType)})},l.fn.scrollUp.defaults={scrollName:"scrollUp",scrollDistance:300,scrollFrom:"top",scrollSpeed:300,easingType:"linear",animation:"fade",animationSpeed:200,scrollTrigger:!1,scrollTarget:!1,scrollText:"Scroll to top",scrollTitle:!1,scrollImg:!1,activeOverlay:!1,zIndex:2147483647},l.fn.scrollUp.destroy=function(r){l.removeData(e.body,"scrollUp"),l("#"+l.fn.scrollUp.settings.scrollName).remove(),l("#"+l.fn.scrollUp.settings.scrollName+"-active").remove(),l.fn.jquery.split(".")[1]>=7?l(o).off("scroll",r):l(o).unbind("scroll",r)},l.scrollUp=l.fn.scrollUp}(jQuery,window,document);
+
+
+/* meanmenu */
+!function($){"use strict";$.fn.meanmenu=function(e){var n={meanMenuTarget:jQuery(this),meanMenuContainer:"body",meanMenuClose:"X",meanMenuCloseSize:"18px",meanMenuOpen:"<span></span><span></span><span></span>",meanRevealPosition:"right",meanRevealPositionDistance:"0",meanRevealColour:"",meanScreenWidth:"480",meanNavPush:"",meanShowChildren:!0,meanExpandableChildren:!0,meanExpand:"+",meanContract:"-",meanRemoveAttrs:!1,onePage:!1,meanDisplay:"block",removeElements:""};e=$.extend(n,e);var a=window.innerWidth||document.documentElement.clientWidth;return this.each(function(){var n=e.meanMenuTarget,t=e.meanMenuContainer,r=e.meanMenuClose,i=e.meanMenuCloseSize,s=e.meanMenuOpen,u=e.meanRevealPosition,m=e.meanRevealPositionDistance,l=e.meanRevealColour,o=e.meanScreenWidth,c=e.meanNavPush,v=".meanmenu-reveal",h=e.meanShowChildren,d=e.meanExpandableChildren,y=e.meanExpand,j=e.meanContract,Q=e.meanRemoveAttrs,f=e.onePage,g=e.meanDisplay,p=e.removeElements,C=!1;(navigator.userAgent.match(/iPhone/i)||navigator.userAgent.match(/iPod/i)||navigator.userAgent.match(/iPad/i)||navigator.userAgent.match(/Android/i)||navigator.userAgent.match(/Blackberry/i)||navigator.userAgent.match(/Windows Phone/i))&&(C=!0),(navigator.userAgent.match(/MSIE 8/i)||navigator.userAgent.match(/MSIE 7/i))&&jQuery("html").css("overflow-y","scroll");var w="",x=function(){if("center"===u){var e=window.innerWidth||document.documentElement.clientWidth,n=e/2-22+"px";w="left:"+n+";right:auto;",C?jQuery(".meanmenu-reveal").animate({left:n}):jQuery(".meanmenu-reveal").css("left",n)}},A=!1,E=!1;"right"===u&&(w="right:"+m+";left:auto;"),"left"===u&&(w="left:"+m+";right:auto;"),x();var M="",P=function(){M.html(jQuery(M).is(".meanmenu-reveal.meanclose")?r:s)},W=function(){jQuery(".mean-bar,.mean-push").remove(),jQuery(t).removeClass("mean-container"),jQuery(n).css("display",g),A=!1,E=!1,jQuery(p).removeClass("mean-remove")},b=function(){var e="background:"+l+";color:"+l+";"+w;if(o>=a){jQuery(p).addClass("mean-remove"),E=!0,jQuery(t).addClass("mean-container"),jQuery(".mean-container").prepend('<div class="mean-bar"><a href="#nav" class="meanmenu-reveal" style="'+e+'">Show Navigation</a><nav class="mean-nav"></nav></div>');var r=jQuery(n).html();jQuery(".mean-nav").html(r),Q&&jQuery("nav.mean-nav ul, nav.mean-nav ul *").each(function(){jQuery(this).is(".mean-remove")?jQuery(this).attr("class","mean-remove"):jQuery(this).removeAttr("class"),jQuery(this).removeAttr("id")}),jQuery(n).before('<div class="mean-push" />'),jQuery(".mean-push").css("margin-top",c),jQuery(n).hide(),jQuery(".meanmenu-reveal").show(),jQuery(v).html(s),M=jQuery(v),jQuery(".mean-nav ul").hide(),h?d?(jQuery(".mean-nav ul ul").each(function(){jQuery(this).children().length&&jQuery(this,"li:first").parent().append('<a class="mean-expand" href="#" style="font-size: '+i+'">'+y+"</a>")}),jQuery(".mean-expand").on("click",function(e){e.preventDefault(),jQuery(this).hasClass("mean-clicked")?(jQuery(this).text(y),jQuery(this).prev("ul").slideUp(300,function(){})):(jQuery(this).text(j),jQuery(this).prev("ul").slideDown(300,function(){})),jQuery(this).toggleClass("mean-clicked")})):jQuery(".mean-nav ul ul").show():jQuery(".mean-nav ul ul").hide(),jQuery(".mean-nav ul li").last().addClass("mean-last"),M.removeClass("meanclose"),jQuery(M).click(function(e){e.preventDefault(),A===!1?(M.css("text-align","center"),M.css("text-indent","0"),M.css("font-size",i),jQuery(".mean-nav ul:first").slideDown(),A=!0):(jQuery(".mean-nav ul:first").slideUp(),A=!1),M.toggleClass("meanclose"),P(),jQuery(p).addClass("mean-remove")}),f&&jQuery(".mean-nav ul > li > a:first-child").on("click",function(){jQuery(".mean-nav ul:first").slideUp(),A=!1,jQuery(M).toggleClass("meanclose").html(s)})}else W()};C||jQuery(window).resize(function(){a=window.innerWidth||document.documentElement.clientWidth,a>o,W(),o>=a?(b(),x()):W()}),jQuery(window).resize(function(){a=window.innerWidth||document.documentElement.clientWidth,C?(x(),o>=a?E===!1&&b():W()):(W(),o>=a&&(b(),x()))}),b()})}}(jQuery);
+
+
+/**
+ * Swiper 6.4.11
+ * Most modern mobile touch slider and framework with hardware accelerated transitions
+ * https://swiperjs.com
+ *
+ * Copyright 2014-2021 Vladimir Kharlampidi
+ *
+ * Released under the MIT License
+ *
+ * Released on: February 6, 2021
+ */
+
+!function(e,t){"object"==typeof exports&&"undefined"!=typeof module?module.exports=t():"function"==typeof define&&define.amd?define(t):(e="undefined"!=typeof globalThis?globalThis:e||self).Swiper=t()}(this,(function(){"use strict";function e(e,t){for(var a=0;a<t.length;a++){var i=t[a];i.enumerable=i.enumerable||!1,i.configurable=!0,"value"in i&&(i.writable=!0),Object.defineProperty(e,i.key,i)}}function t(){return(t=Object.assign||function(e){for(var t=1;t<arguments.length;t++){var a=arguments[t];for(var i in a)Object.prototype.hasOwnProperty.call(a,i)&&(e[i]=a[i])}return e}).apply(this,arguments)}function a(e){return null!==e&&"object"==typeof e&&"constructor"in e&&e.constructor===Object}function i(e,t){void 0===e&&(e={}),void 0===t&&(t={}),Object.keys(t).forEach((function(s){void 0===e[s]?e[s]=t[s]:a(t[s])&&a(e[s])&&Object.keys(t[s]).length>0&&i(e[s],t[s])}))}var s={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[]}}},createElementNS:function(){return{}},importNode:function(){return null},location:{hash:"",host:"",hostname:"",href:"",origin:"",pathname:"",protocol:"",search:""}};function r(){var e="undefined"!=typeof document?document:{};return i(e,s),e}var n={document:s,navigator:{userAgent:""},location:{hash:"",host:"",hostname:"",href:"",origin:"",pathname:"",protocol:"",search:""},history:{replaceState:function(){},pushState:function(){},go:function(){},back:function(){}},CustomEvent:function(){return this},addEventListener:function(){},removeEventListener:function(){},getComputedStyle:function(){return{getPropertyValue:function(){return""}}},Image:function(){},Date:function(){},screen:{},setTimeout:function(){},clearTimeout:function(){},matchMedia:function(){return{}},requestAnimationFrame:function(e){return"undefined"==typeof setTimeout?(e(),null):setTimeout(e,0)},cancelAnimationFrame:function(e){"undefined"!=typeof setTimeout&&clearTimeout(e)}};function l(){var e="undefined"!=typeof window?window:{};return i(e,n),e}function o(e){return(o=Object.setPrototypeOf?Object.getPrototypeOf:function(e){return e.__proto__||Object.getPrototypeOf(e)})(e)}function d(e,t){return(d=Object.setPrototypeOf||function(e,t){return e.__proto__=t,e})(e,t)}function p(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Date.prototype.toString.call(Reflect.construct(Date,[],(function(){}))),!0}catch(e){return!1}}function u(e,t,a){return(u=p()?Reflect.construct:function(e,t,a){var i=[null];i.push.apply(i,t);var s=new(Function.bind.apply(e,i));return a&&d(s,a.prototype),s}).apply(null,arguments)}function c(e){var t="function"==typeof Map?new Map:void 0;return(c=function(e){if(null===e||(a=e,-1===Function.toString.call(a).indexOf("[native code]")))return e;var a;if("function"!=typeof e)throw new TypeError("Super expression must either be null or a function");if(void 0!==t){if(t.has(e))return t.get(e);t.set(e,i)}function i(){return u(e,arguments,o(this).constructor)}return i.prototype=Object.create(e.prototype,{constructor:{value:i,enumerable:!1,writable:!0,configurable:!0}}),d(i,e)})(e)}var h=function(e){var t,a;function i(t){var a,i,s;return a=e.call.apply(e,[this].concat(t))||this,i=function(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}(a),s=i.__proto__,Object.defineProperty(i,"__proto__",{get:function(){return s},set:function(e){s.__proto__=e}}),a}return a=e,(t=i).prototype=Object.create(a.prototype),t.prototype.constructor=t,t.__proto__=a,i}(c(Array));function v(e){void 0===e&&(e=[]);var t=[];return e.forEach((function(e){Array.isArray(e)?t.push.apply(t,v(e)):t.push(e)})),t}function f(e,t){return Array.prototype.filter.call(e,t)}function m(e,t){var a=l(),i=r(),s=[];if(!t&&e instanceof h)return e;if(!e)return new h(s);if("string"==typeof e){var n=e.trim();if(n.indexOf("<")>=0&&n.indexOf(">")>=0){var o="div";0===n.indexOf("<li")&&(o="ul"),0===n.indexOf("<tr")&&(o="tbody"),0!==n.indexOf("<td")&&0!==n.indexOf("<th")||(o="tr"),0===n.indexOf("<tbody")&&(o="table"),0===n.indexOf("<option")&&(o="select");var d=i.createElement(o);d.innerHTML=n;for(var p=0;p<d.childNodes.length;p+=1)s.push(d.childNodes[p])}else s=function(e,t){if("string"!=typeof e)return[e];for(var a=[],i=t.querySelectorAll(e),s=0;s<i.length;s+=1)a.push(i[s]);return a}(e.trim(),t||i)}else if(e.nodeType||e===a||e===i)s.push(e);else if(Array.isArray(e)){if(e instanceof h)return e;s=e}return new h(function(e){for(var t=[],a=0;a<e.length;a+=1)-1===t.indexOf(e[a])&&t.push(e[a]);return t}(s))}m.fn=h.prototype;var g,y,w,b={addClass:function(){for(var e=arguments.length,t=new Array(e),a=0;a<e;a++)t[a]=arguments[a];var i=v(t.map((function(e){return e.split(" ")})));return this.forEach((function(e){var t;(t=e.classList).add.apply(t,i)})),this},removeClass:function(){for(var e=arguments.length,t=new Array(e),a=0;a<e;a++)t[a]=arguments[a];var i=v(t.map((function(e){return e.split(" ")})));return this.forEach((function(e){var t;(t=e.classList).remove.apply(t,i)})),this},hasClass:function(){for(var e=arguments.length,t=new Array(e),a=0;a<e;a++)t[a]=arguments[a];var i=v(t.map((function(e){return e.split(" ")})));return f(this,(function(e){return i.filter((function(t){return e.classList.contains(t)})).length>0})).length>0},toggleClass:function(){for(var e=arguments.length,t=new Array(e),a=0;a<e;a++)t[a]=arguments[a];var i=v(t.map((function(e){return e.split(" ")})));this.forEach((function(e){i.forEach((function(t){e.classList.toggle(t)}))}))},attr:function(e,t){if(1===arguments.length&&"string"==typeof e)return this[0]?this[0].getAttribute(e):void 0;for(var a=0;a<this.length;a+=1)if(2===arguments.length)this[a].setAttribute(e,t);else for(var i in e)this[a][i]=e[i],this[a].setAttribute(i,e[i]);return this},removeAttr:function(e){for(var t=0;t<this.length;t+=1)this[t].removeAttribute(e);return this},transform:function(e){for(var t=0;t<this.length;t+=1)this[t].style.transform=e;return this},transition:function(e){for(var t=0;t<this.length;t+=1)this[t].style.transitionDuration="string"!=typeof e?e+"ms":e;return this},on:function(){for(var e=arguments.length,t=new Array(e),a=0;a<e;a++)t[a]=arguments[a];var i=t[0],s=t[1],r=t[2],n=t[3];function l(e){var t=e.target;if(t){var a=e.target.dom7EventData||[];if(a.indexOf(e)<0&&a.unshift(e),m(t).is(s))r.apply(t,a);else for(var i=m(t).parents(),n=0;n<i.length;n+=1)m(i[n]).is(s)&&r.apply(i[n],a)}}function o(e){var t=e&&e.target&&e.target.dom7EventData||[];t.indexOf(e)<0&&t.unshift(e),r.apply(this,t)}"function"==typeof t[1]&&(i=t[0],r=t[1],n=t[2],s=void 0),n||(n=!1);for(var d,p=i.split(" "),u=0;u<this.length;u+=1){var c=this[u];if(s)for(d=0;d<p.length;d+=1){var h=p[d];c.dom7LiveListeners||(c.dom7LiveListeners={}),c.dom7LiveListeners[h]||(c.dom7LiveListeners[h]=[]),c.dom7LiveListeners[h].push({listener:r,proxyListener:l}),c.addEventListener(h,l,n)}else for(d=0;d<p.length;d+=1){var v=p[d];c.dom7Listeners||(c.dom7Listeners={}),c.dom7Listeners[v]||(c.dom7Listeners[v]=[]),c.dom7Listeners[v].push({listener:r,proxyListener:o}),c.addEventListener(v,o,n)}}return this},off:function(){for(var e=arguments.length,t=new Array(e),a=0;a<e;a++)t[a]=arguments[a];var i=t[0],s=t[1],r=t[2],n=t[3];"function"==typeof t[1]&&(i=t[0],r=t[1],n=t[2],s=void 0),n||(n=!1);for(var l=i.split(" "),o=0;o<l.length;o+=1)for(var d=l[o],p=0;p<this.length;p+=1){var u=this[p],c=void 0;if(!s&&u.dom7Listeners?c=u.dom7Listeners[d]:s&&u.dom7LiveListeners&&(c=u.dom7LiveListeners[d]),c&&c.length)for(var h=c.length-1;h>=0;h-=1){var v=c[h];r&&v.listener===r||r&&v.listener&&v.listener.dom7proxy&&v.listener.dom7proxy===r?(u.removeEventListener(d,v.proxyListener,n),c.splice(h,1)):r||(u.removeEventListener(d,v.proxyListener,n),c.splice(h,1))}}return this},trigger:function(){for(var e=l(),t=arguments.length,a=new Array(t),i=0;i<t;i++)a[i]=arguments[i];for(var s=a[0].split(" "),r=a[1],n=0;n<s.length;n+=1)for(var o=s[n],d=0;d<this.length;d+=1){var p=this[d];if(e.CustomEvent){var u=new e.CustomEvent(o,{detail:r,bubbles:!0,cancelable:!0});p.dom7EventData=a.filter((function(e,t){return t>0})),p.dispatchEvent(u),p.dom7EventData=[],delete p.dom7EventData}}return this},transitionEnd:function(e){var t=this;return e&&t.on("transitionend",(function a(i){i.target===this&&(e.call(this,i),t.off("transitionend",a))})),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},styles:function(){var e=l();return this[0]?e.getComputedStyle(this[0],null):{}},offset:function(){if(this.length>0){var e=l(),t=r(),a=this[0],i=a.getBoundingClientRect(),s=t.body,n=a.clientTop||s.clientTop||0,o=a.clientLeft||s.clientLeft||0,d=a===e?e.scrollY:a.scrollTop,p=a===e?e.scrollX:a.scrollLeft;return{top:i.top+d-n,left:i.left+p-o}}return null},css:function(e,t){var a,i=l();if(1===arguments.length){if("string"!=typeof e){for(a=0;a<this.length;a+=1)for(var s in e)this[a].style[s]=e[s];return this}if(this[0])return i.getComputedStyle(this[0],null).getPropertyValue(e)}if(2===arguments.length&&"string"==typeof e){for(a=0;a<this.length;a+=1)this[a].style[e]=t;return this}return this},each:function(e){return e?(this.forEach((function(t,a){e.apply(t,[t,a])})),this):this},html:function(e){if(void 0===e)return this[0]?this[0].innerHTML:null;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(e){var t,a,i=l(),s=r(),n=this[0];if(!n||void 0===e)return!1;if("string"==typeof e){if(n.matches)return n.matches(e);if(n.webkitMatchesSelector)return n.webkitMatchesSelector(e);if(n.msMatchesSelector)return n.msMatchesSelector(e);for(t=m(e),a=0;a<t.length;a+=1)if(t[a]===n)return!0;return!1}if(e===s)return n===s;if(e===i)return n===i;if(e.nodeType||e instanceof h){for(t=e.nodeType?[e]:e,a=0;a<t.length;a+=1)if(t[a]===n)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=this.length;if(e>t-1)return m([]);if(e<0){var a=t+e;return m(a<0?[]:[this[a]])}return m([this[e]])},append:function(){for(var e,t=r(),a=0;a<arguments.length;a+=1){e=a<0||arguments.length<=a?void 0:arguments[a];for(var i=0;i<this.length;i+=1)if("string"==typeof e){var s=t.createElement("div");for(s.innerHTML=e;s.firstChild;)this[i].appendChild(s.firstChild)}else if(e instanceof h)for(var n=0;n<e.length;n+=1)this[i].appendChild(e[n]);else this[i].appendChild(e)}return this},prepend:function(e){var t,a,i=r();for(t=0;t<this.length;t+=1)if("string"==typeof e){var s=i.createElement("div");for(s.innerHTML=e,a=s.childNodes.length-1;a>=0;a-=1)this[t].insertBefore(s.childNodes[a],this[t].childNodes[0])}else if(e instanceof h)for(a=0;a<e.length;a+=1)this[t].insertBefore(e[a],this[t].childNodes[0]);else this[t].insertBefore(e,this[t].childNodes[0]);return this},next:function(e){return this.length>0?e?this[0].nextElementSibling&&m(this[0].nextElementSibling).is(e)?m([this[0].nextElementSibling]):m([]):this[0].nextElementSibling?m([this[0].nextElementSibling]):m([]):m([])},nextAll:function(e){var t=[],a=this[0];if(!a)return m([]);for(;a.nextElementSibling;){var i=a.nextElementSibling;e?m(i).is(e)&&t.push(i):t.push(i),a=i}return m(t)},prev:function(e){if(this.length>0){var t=this[0];return e?t.previousElementSibling&&m(t.previousElementSibling).is(e)?m([t.previousElementSibling]):m([]):t.previousElementSibling?m([t.previousElementSibling]):m([])}return m([])},prevAll:function(e){var t=[],a=this[0];if(!a)return m([]);for(;a.previousElementSibling;){var i=a.previousElementSibling;e?m(i).is(e)&&t.push(i):t.push(i),a=i}return m(t)},parent:function(e){for(var t=[],a=0;a<this.length;a+=1)null!==this[a].parentNode&&(e?m(this[a].parentNode).is(e)&&t.push(this[a].parentNode):t.push(this[a].parentNode));return m(t)},parents:function(e){for(var t=[],a=0;a<this.length;a+=1)for(var i=this[a].parentNode;i;)e?m(i).is(e)&&t.push(i):t.push(i),i=i.parentNode;return m(t)},closest:function(e){var t=this;return void 0===e?m([]):(t.is(e)||(t=t.parents(e).eq(0)),t)},find:function(e){for(var t=[],a=0;a<this.length;a+=1)for(var i=this[a].querySelectorAll(e),s=0;s<i.length;s+=1)t.push(i[s]);return m(t)},children:function(e){for(var t=[],a=0;a<this.length;a+=1)for(var i=this[a].children,s=0;s<i.length;s+=1)e&&!m(i[s]).is(e)||t.push(i[s]);return m(t)},filter:function(e){return m(f(this,e))},remove:function(){for(var e=0;e<this.length;e+=1)this[e].parentNode&&this[e].parentNode.removeChild(this[e]);return this}};function E(e,t){return void 0===t&&(t=0),setTimeout(e,t)}function x(){return Date.now()}function T(e,t){void 0===t&&(t="x");var a,i,s,r=l(),n=r.getComputedStyle(e,null);return r.WebKitCSSMatrix?((i=n.transform||n.webkitTransform).split(",").length>6&&(i=i.split(", ").map((function(e){return e.replace(",",".")})).join(", ")),s=new r.WebKitCSSMatrix("none"===i?"":i)):a=(s=n.MozTransform||n.OTransform||n.MsTransform||n.msTransform||n.transform||n.getPropertyValue("transform").replace("translate(","matrix(1, 0, 0, 1,")).toString().split(","),"x"===t&&(i=r.WebKitCSSMatrix?s.m41:16===a.length?parseFloat(a[12]):parseFloat(a[4])),"y"===t&&(i=r.WebKitCSSMatrix?s.m42:16===a.length?parseFloat(a[13]):parseFloat(a[5])),i||0}function C(e){return"object"==typeof e&&null!==e&&e.constructor&&e.constructor===Object}function S(){for(var e=Object(arguments.length<=0?void 0:arguments[0]),t=1;t<arguments.length;t+=1){var a=t<0||arguments.length<=t?void 0:arguments[t];if(null!=a)for(var i=Object.keys(Object(a)),s=0,r=i.length;s<r;s+=1){var n=i[s],l=Object.getOwnPropertyDescriptor(a,n);void 0!==l&&l.enumerable&&(C(e[n])&&C(a[n])?S(e[n],a[n]):!C(e[n])&&C(a[n])?(e[n]={},S(e[n],a[n])):e[n]=a[n])}}return e}function M(e,t){Object.keys(t).forEach((function(a){C(t[a])&&Object.keys(t[a]).forEach((function(i){"function"==typeof t[a][i]&&(t[a][i]=t[a][i].bind(e))})),e[a]=t[a]}))}function z(){return g||(g=function(){var e=l(),t=r();return{touch:!!("ontouchstart"in e||e.DocumentTouch&&t instanceof e.DocumentTouch),pointerEvents:!!e.PointerEvent&&"maxTouchPoints"in e.navigator&&e.navigator.maxTouchPoints>=0,observer:"MutationObserver"in e||"WebkitMutationObserver"in e,passiveListener:function(){var t=!1;try{var a=Object.defineProperty({},"passive",{get:function(){t=!0}});e.addEventListener("testPassiveListener",null,a)}catch(e){}return t}(),gestures:"ongesturestart"in e}}()),g}function P(e){return void 0===e&&(e={}),y||(y=function(e){var t=(void 0===e?{}:e).userAgent,a=z(),i=l(),s=i.navigator.platform,r=t||i.navigator.userAgent,n={ios:!1,android:!1},o=i.screen.width,d=i.screen.height,p=r.match(/(Android);?[\s\/]+([\d.]+)?/),u=r.match(/(iPad).*OS\s([\d_]+)/),c=r.match(/(iPod)(.*OS\s([\d_]+))?/),h=!u&&r.match(/(iPhone\sOS|iOS)\s([\d_]+)/),v="Win32"===s,f="MacIntel"===s;return!u&&f&&a.touch&&["1024x1366","1366x1024","834x1194","1194x834","834x1112","1112x834","768x1024","1024x768","820x1180","1180x820","810x1080","1080x810"].indexOf(o+"x"+d)>=0&&((u=r.match(/(Version)\/([\d.]+)/))||(u=[0,1,"13_0_0"]),f=!1),p&&!v&&(n.os="android",n.android=!0),(u||h||c)&&(n.os="ios",n.ios=!0),n}(e)),y}function k(){return w||(w=function(){var e,t=l();return{isEdge:!!t.navigator.userAgent.match(/Edge/g),isSafari:(e=t.navigator.userAgent.toLowerCase(),e.indexOf("safari")>=0&&e.indexOf("chrome")<0&&e.indexOf("android")<0),isWebView:/(iPhone|iPod|iPad).*AppleWebKit(?!.*Safari)/i.test(t.navigator.userAgent)}}()),w}Object.keys(b).forEach((function(e){m.fn[e]=b[e]}));var L={name:"resize",create:function(){var e=this;S(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(e){var t=l();t.addEventListener("resize",e.resize.resizeHandler),t.addEventListener("orientationchange",e.resize.orientationChangeHandler)},destroy:function(e){var t=l();t.removeEventListener("resize",e.resize.resizeHandler),t.removeEventListener("orientationchange",e.resize.orientationChangeHandler)}}},$={attach:function(e,t){void 0===t&&(t={});var a=l(),i=this,s=new(a.MutationObserver||a.WebkitMutationObserver)((function(e){if(1!==e.length){var t=function(){i.emit("observerUpdate",e[0])};a.requestAnimationFrame?a.requestAnimationFrame(t):a.setTimeout(t,0)}else i.emit("observerUpdate",e[0])}));s.observe(e,{attributes:void 0===t.attributes||t.attributes,childList:void 0===t.childList||t.childList,characterData:void 0===t.characterData||t.characterData}),i.observer.observers.push(s)},init:function(){var e=this;if(e.support.observer&&e.params.observer){if(e.params.observeParents)for(var t=e.$el.parents(),a=0;a<t.length;a+=1)e.observer.attach(t[a]);e.observer.attach(e.$el[0],{childList:e.params.observeSlideChildren}),e.observer.attach(e.$wrapperEl[0],{attributes:!1})}},destroy:function(){this.observer.observers.forEach((function(e){e.disconnect()})),this.observer.observers=[]}},I={name:"observer",params:{observer:!1,observeParents:!1,observeSlideChildren:!1},create:function(){M(this,{observer:t({},$,{observers:[]})})},on:{init:function(e){e.observer.init()},destroy:function(e){e.observer.destroy()}}};function O(e){var t=this,a=r(),i=l(),s=t.touchEventsData,n=t.params,o=t.touches;if(!t.animating||!n.preventInteractionOnTransition){var d=e;d.originalEvent&&(d=d.originalEvent);var p=m(d.target);if("wrapper"!==n.touchEventsTarget||p.closest(t.wrapperEl).length)if(s.isTouchEvent="touchstart"===d.type,s.isTouchEvent||!("which"in d)||3!==d.which)if(!(!s.isTouchEvent&&"button"in d&&d.button>0))if(!s.isTouched||!s.isMoved)if(!!n.noSwipingClass&&""!==n.noSwipingClass&&d.target&&d.target.shadowRoot&&e.path&&e.path[0]&&(p=m(e.path[0])),n.noSwiping&&p.closest(n.noSwipingSelector?n.noSwipingSelector:"."+n.noSwipingClass)[0])t.allowClick=!0;else if(!n.swipeHandler||p.closest(n.swipeHandler)[0]){o.currentX="touchstart"===d.type?d.targetTouches[0].pageX:d.pageX,o.currentY="touchstart"===d.type?d.targetTouches[0].pageY:d.pageY;var u=o.currentX,c=o.currentY,h=n.edgeSwipeDetection||n.iOSEdgeSwipeDetection,v=n.edgeSwipeThreshold||n.iOSEdgeSwipeThreshold;if(h&&(u<=v||u>=i.innerWidth-v)){if("prevent"!==h)return;e.preventDefault()}if(S(s,{isTouched:!0,isMoved:!1,allowTouchCallbacks:!0,isScrolling:void 0,startMoving:void 0}),o.startX=u,o.startY=c,s.touchStartTime=x(),t.allowClick=!0,t.updateSize(),t.swipeDirection=void 0,n.threshold>0&&(s.allowThresholdMove=!1),"touchstart"!==d.type){var f=!0;p.is(s.formElements)&&(f=!1),a.activeElement&&m(a.activeElement).is(s.formElements)&&a.activeElement!==p[0]&&a.activeElement.blur();var g=f&&t.allowTouchMove&&n.touchStartPreventDefault;!n.touchStartForcePreventDefault&&!g||p[0].isContentEditable||d.preventDefault()}t.emit("touchStart",d)}}}function A(e){var t=r(),a=this,i=a.touchEventsData,s=a.params,n=a.touches,l=a.rtlTranslate,o=e;if(o.originalEvent&&(o=o.originalEvent),i.isTouched){if(!i.isTouchEvent||"touchmove"===o.type){var d="touchmove"===o.type&&o.targetTouches&&(o.targetTouches[0]||o.changedTouches[0]),p="touchmove"===o.type?d.pageX:o.pageX,u="touchmove"===o.type?d.pageY:o.pageY;if(o.preventedByNestedSwiper)return n.startX=p,void(n.startY=u);if(!a.allowTouchMove)return a.allowClick=!1,void(i.isTouched&&(S(n,{startX:p,startY:u,currentX:p,currentY:u}),i.touchStartTime=x()));if(i.isTouchEvent&&s.touchReleaseOnEdges&&!s.loop)if(a.isVertical()){if(u<n.startY&&a.translate<=a.maxTranslate()||u>n.startY&&a.translate>=a.minTranslate())return i.isTouched=!1,void(i.isMoved=!1)}else if(p<n.startX&&a.translate<=a.maxTranslate()||p>n.startX&&a.translate>=a.minTranslate())return;if(i.isTouchEvent&&t.activeElement&&o.target===t.activeElement&&m(o.target).is(i.formElements))return i.isMoved=!0,void(a.allowClick=!1);if(i.allowTouchCallbacks&&a.emit("touchMove",o),!(o.targetTouches&&o.targetTouches.length>1)){n.currentX=p,n.currentY=u;var c=n.currentX-n.startX,h=n.currentY-n.startY;if(!(a.params.threshold&&Math.sqrt(Math.pow(c,2)+Math.pow(h,2))<a.params.threshold)){var v;if(void 0===i.isScrolling)a.isHorizontal()&&n.currentY===n.startY||a.isVertical()&&n.currentX===n.startX?i.isScrolling=!1:c*c+h*h>=25&&(v=180*Math.atan2(Math.abs(h),Math.abs(c))/Math.PI,i.isScrolling=a.isHorizontal()?v>s.touchAngle:90-v>s.touchAngle);if(i.isScrolling&&a.emit("touchMoveOpposite",o),void 0===i.startMoving&&(n.currentX===n.startX&&n.currentY===n.startY||(i.startMoving=!0)),i.isScrolling)i.isTouched=!1;else if(i.startMoving){a.allowClick=!1,!s.cssMode&&o.cancelable&&o.preventDefault(),s.touchMoveStopPropagation&&!s.nested&&o.stopPropagation(),i.isMoved||(s.loop&&a.loopFix(),i.startTranslate=a.getTranslate(),a.setTransition(0),a.animating&&a.$wrapperEl.trigger("webkitTransitionEnd transitionend"),i.allowMomentumBounce=!1,!s.grabCursor||!0!==a.allowSlideNext&&!0!==a.allowSlidePrev||a.setGrabCursor(!0),a.emit("sliderFirstMove",o)),a.emit("sliderMove",o),i.isMoved=!0;var f=a.isHorizontal()?c:h;n.diff=f,f*=s.touchRatio,l&&(f=-f),a.swipeDirection=f>0?"prev":"next",i.currentTranslate=f+i.startTranslate;var g=!0,y=s.resistanceRatio;if(s.touchReleaseOnEdges&&(y=0),f>0&&i.currentTranslate>a.minTranslate()?(g=!1,s.resistance&&(i.currentTranslate=a.minTranslate()-1+Math.pow(-a.minTranslate()+i.startTranslate+f,y))):f<0&&i.currentTranslate<a.maxTranslate()&&(g=!1,s.resistance&&(i.currentTranslate=a.maxTranslate()+1-Math.pow(a.maxTranslate()-i.startTranslate-f,y))),g&&(o.preventedByNestedSwiper=!0),!a.allowSlideNext&&"next"===a.swipeDirection&&i.currentTranslate<i.startTranslate&&(i.currentTranslate=i.startTranslate),!a.allowSlidePrev&&"prev"===a.swipeDirection&&i.currentTranslate>i.startTranslate&&(i.currentTranslate=i.startTranslate),s.threshold>0){if(!(Math.abs(f)>s.threshold||i.allowThresholdMove))return void(i.currentTranslate=i.startTranslate);if(!i.allowThresholdMove)return i.allowThresholdMove=!0,n.startX=n.currentX,n.startY=n.currentY,i.currentTranslate=i.startTranslate,void(n.diff=a.isHorizontal()?n.currentX-n.startX:n.currentY-n.startY)}s.followFinger&&!s.cssMode&&((s.freeMode||s.watchSlidesProgress||s.watchSlidesVisibility)&&(a.updateActiveIndex(),a.updateSlidesClasses()),s.freeMode&&(0===i.velocities.length&&i.velocities.push({position:n[a.isHorizontal()?"startX":"startY"],time:i.touchStartTime}),i.velocities.push({position:n[a.isHorizontal()?"currentX":"currentY"],time:x()})),a.updateProgress(i.currentTranslate),a.setTranslate(i.currentTranslate))}}}}}else i.startMoving&&i.isScrolling&&a.emit("touchMoveOpposite",o)}function D(e){var t=this,a=t.touchEventsData,i=t.params,s=t.touches,r=t.rtlTranslate,n=t.$wrapperEl,l=t.slidesGrid,o=t.snapGrid,d=e;if(d.originalEvent&&(d=d.originalEvent),a.allowTouchCallbacks&&t.emit("touchEnd",d),a.allowTouchCallbacks=!1,!a.isTouched)return a.isMoved&&i.grabCursor&&t.setGrabCursor(!1),a.isMoved=!1,void(a.startMoving=!1);i.grabCursor&&a.isMoved&&a.isTouched&&(!0===t.allowSlideNext||!0===t.allowSlidePrev)&&t.setGrabCursor(!1);var p,u=x(),c=u-a.touchStartTime;if(t.allowClick&&(t.updateClickedSlide(d),t.emit("tap click",d),c<300&&u-a.lastClickTime<300&&t.emit("doubleTap doubleClick",d)),a.lastClickTime=x(),E((function(){t.destroyed||(t.allowClick=!0)})),!a.isTouched||!a.isMoved||!t.swipeDirection||0===s.diff||a.currentTranslate===a.startTranslate)return a.isTouched=!1,a.isMoved=!1,void(a.startMoving=!1);if(a.isTouched=!1,a.isMoved=!1,a.startMoving=!1,p=i.followFinger?r?t.translate:-t.translate:-a.currentTranslate,!i.cssMode)if(i.freeMode){if(p<-t.minTranslate())return void t.slideTo(t.activeIndex);if(p>-t.maxTranslate())return void(t.slides.length<o.length?t.slideTo(o.length-1):t.slideTo(t.slides.length-1));if(i.freeModeMomentum){if(a.velocities.length>1){var h=a.velocities.pop(),v=a.velocities.pop(),f=h.position-v.position,m=h.time-v.time;t.velocity=f/m,t.velocity/=2,Math.abs(t.velocity)<i.freeModeMinimumVelocity&&(t.velocity=0),(m>150||x()-h.time>300)&&(t.velocity=0)}else t.velocity=0;t.velocity*=i.freeModeMomentumVelocityRatio,a.velocities.length=0;var g=1e3*i.freeModeMomentumRatio,y=t.velocity*g,w=t.translate+y;r&&(w=-w);var b,T,C=!1,S=20*Math.abs(t.velocity)*i.freeModeMomentumBounceRatio;if(w<t.maxTranslate())i.freeModeMomentumBounce?(w+t.maxTranslate()<-S&&(w=t.maxTranslate()-S),b=t.maxTranslate(),C=!0,a.allowMomentumBounce=!0):w=t.maxTranslate(),i.loop&&i.centeredSlides&&(T=!0);else if(w>t.minTranslate())i.freeModeMomentumBounce?(w-t.minTranslate()>S&&(w=t.minTranslate()+S),b=t.minTranslate(),C=!0,a.allowMomentumBounce=!0):w=t.minTranslate(),i.loop&&i.centeredSlides&&(T=!0);else if(i.freeModeSticky){for(var M,z=0;z<o.length;z+=1)if(o[z]>-w){M=z;break}w=-(w=Math.abs(o[M]-w)<Math.abs(o[M-1]-w)||"next"===t.swipeDirection?o[M]:o[M-1])}if(T&&t.once("transitionEnd",(function(){t.loopFix()})),0!==t.velocity){if(g=r?Math.abs((-w-t.translate)/t.velocity):Math.abs((w-t.translate)/t.velocity),i.freeModeSticky){var P=Math.abs((r?-w:w)-t.translate),k=t.slidesSizesGrid[t.activeIndex];g=P<k?i.speed:P<2*k?1.5*i.speed:2.5*i.speed}}else if(i.freeModeSticky)return void t.slideToClosest();i.freeModeMomentumBounce&&C?(t.updateProgress(b),t.setTransition(g),t.setTranslate(w),t.transitionStart(!0,t.swipeDirection),t.animating=!0,n.transitionEnd((function(){t&&!t.destroyed&&a.allowMomentumBounce&&(t.emit("momentumBounce"),t.setTransition(i.speed),setTimeout((function(){t.setTranslate(b),n.transitionEnd((function(){t&&!t.destroyed&&t.transitionEnd()}))}),0))}))):t.velocity?(t.updateProgress(w),t.setTransition(g),t.setTranslate(w),t.transitionStart(!0,t.swipeDirection),t.animating||(t.animating=!0,n.transitionEnd((function(){t&&!t.destroyed&&t.transitionEnd()})))):t.updateProgress(w),t.updateActiveIndex(),t.updateSlidesClasses()}else if(i.freeModeSticky)return void t.slideToClosest();(!i.freeModeMomentum||c>=i.longSwipesMs)&&(t.updateProgress(),t.updateActiveIndex(),t.updateSlidesClasses())}else{for(var L=0,$=t.slidesSizesGrid[0],I=0;I<l.length;I+=I<i.slidesPerGroupSkip?1:i.slidesPerGroup){var O=I<i.slidesPerGroupSkip-1?1:i.slidesPerGroup;void 0!==l[I+O]?p>=l[I]&&p<l[I+O]&&(L=I,$=l[I+O]-l[I]):p>=l[I]&&(L=I,$=l[l.length-1]-l[l.length-2])}var A=(p-l[L])/$,D=L<i.slidesPerGroupSkip-1?1:i.slidesPerGroup;if(c>i.longSwipesMs){if(!i.longSwipes)return void t.slideTo(t.activeIndex);"next"===t.swipeDirection&&(A>=i.longSwipesRatio?t.slideTo(L+D):t.slideTo(L)),"prev"===t.swipeDirection&&(A>1-i.longSwipesRatio?t.slideTo(L+D):t.slideTo(L))}else{if(!i.shortSwipes)return void t.slideTo(t.activeIndex);t.navigation&&(d.target===t.navigation.nextEl||d.target===t.navigation.prevEl)?d.target===t.navigation.nextEl?t.slideTo(L+D):t.slideTo(L):("next"===t.swipeDirection&&t.slideTo(L+D),"prev"===t.swipeDirection&&t.slideTo(L))}}}function G(){var e=this,t=e.params,a=e.el;if(!a||0!==a.offsetWidth){t.breakpoints&&e.setBreakpoint();var i=e.allowSlideNext,s=e.allowSlidePrev,r=e.snapGrid;e.allowSlideNext=!0,e.allowSlidePrev=!0,e.updateSize(),e.updateSlides(),e.updateSlidesClasses(),("auto"===t.slidesPerView||t.slidesPerView>1)&&e.isEnd&&!e.isBeginning&&!e.params.centeredSlides?e.slideTo(e.slides.length-1,0,!1,!0):e.slideTo(e.activeIndex,0,!1,!0),e.autoplay&&e.autoplay.running&&e.autoplay.paused&&e.autoplay.run(),e.allowSlidePrev=s,e.allowSlideNext=i,e.params.watchOverflow&&r!==e.snapGrid&&e.checkOverflow()}}function N(e){var t=this;t.allowClick||(t.params.preventClicks&&e.preventDefault(),t.params.preventClicksPropagation&&t.animating&&(e.stopPropagation(),e.stopImmediatePropagation()))}function B(){var e=this,t=e.wrapperEl,a=e.rtlTranslate;e.previousTranslate=e.translate,e.isHorizontal()?e.translate=a?t.scrollWidth-t.offsetWidth-t.scrollLeft:-t.scrollLeft:e.translate=-t.scrollTop,-0===e.translate&&(e.translate=0),e.updateActiveIndex(),e.updateSlidesClasses();var i=e.maxTranslate()-e.minTranslate();(0===i?0:(e.translate-e.minTranslate())/i)!==e.progress&&e.updateProgress(a?-e.translate:e.translate),e.emit("setTranslate",e.translate,!1)}var H=!1;function X(){}var Y={init:!0,direction:"horizontal",touchEventsTarget:"container",initialSlide:0,speed:300,cssMode:!1,updateOnWindowResize:!0,nested:!1,width:null,height:null,preventInteractionOnTransition:!1,userAgent:null,url:null,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,loopPreventsSlide:!0,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,_emitClasses:!1},V={modular:{useParams:function(e){var t=this;t.modules&&Object.keys(t.modules).forEach((function(a){var i=t.modules[a];i.params&&S(e,i.params)}))},useModules:function(e){void 0===e&&(e={});var t=this;t.modules&&Object.keys(t.modules).forEach((function(a){var i=t.modules[a],s=e[a]||{};i.on&&t.on&&Object.keys(i.on).forEach((function(e){t.on(e,i.on[e])})),i.create&&i.create.bind(t)(s)}))}},eventsEmitter:{on:function(e,t,a){var i=this;if("function"!=typeof t)return i;var s=a?"unshift":"push";return e.split(" ").forEach((function(e){i.eventsListeners[e]||(i.eventsListeners[e]=[]),i.eventsListeners[e][s](t)})),i},once:function(e,t,a){var i=this;if("function"!=typeof t)return i;function s(){i.off(e,s),s.__emitterProxy&&delete s.__emitterProxy;for(var a=arguments.length,r=new Array(a),n=0;n<a;n++)r[n]=arguments[n];t.apply(i,r)}return s.__emitterProxy=t,i.on(e,s,a)},onAny:function(e,t){var a=this;if("function"!=typeof e)return a;var i=t?"unshift":"push";return a.eventsAnyListeners.indexOf(e)<0&&a.eventsAnyListeners[i](e),a},offAny:function(e){var t=this;if(!t.eventsAnyListeners)return t;var a=t.eventsAnyListeners.indexOf(e);return a>=0&&t.eventsAnyListeners.splice(a,1),t},off:function(e,t){var a=this;return a.eventsListeners?(e.split(" ").forEach((function(e){void 0===t?a.eventsListeners[e]=[]:a.eventsListeners[e]&&a.eventsListeners[e].forEach((function(i,s){(i===t||i.__emitterProxy&&i.__emitterProxy===t)&&a.eventsListeners[e].splice(s,1)}))})),a):a},emit:function(){var e,t,a,i=this;if(!i.eventsListeners)return i;for(var s=arguments.length,r=new Array(s),n=0;n<s;n++)r[n]=arguments[n];"string"==typeof r[0]||Array.isArray(r[0])?(e=r[0],t=r.slice(1,r.length),a=i):(e=r[0].events,t=r[0].data,a=r[0].context||i),t.unshift(a);var l=Array.isArray(e)?e:e.split(" ");return l.forEach((function(e){i.eventsAnyListeners&&i.eventsAnyListeners.length&&i.eventsAnyListeners.forEach((function(i){i.apply(a,[e].concat(t))})),i.eventsListeners&&i.eventsListeners[e]&&i.eventsListeners[e].forEach((function(e){e.apply(a,t)}))})),i}},update:{updateSize:function(){var e,t,a=this,i=a.$el;e=void 0!==a.params.width&&null!==a.params.width?a.params.width:i[0].clientWidth,t=void 0!==a.params.height&&null!==a.params.height?a.params.height:i[0].clientHeight,0===e&&a.isHorizontal()||0===t&&a.isVertical()||(e=e-parseInt(i.css("padding-left")||0,10)-parseInt(i.css("padding-right")||0,10),t=t-parseInt(i.css("padding-top")||0,10)-parseInt(i.css("padding-bottom")||0,10),Number.isNaN(e)&&(e=0),Number.isNaN(t)&&(t=0),S(a,{width:e,height:t,size:a.isHorizontal()?e:t}))},updateSlides:function(){var e=this,t=l(),a=e.params,i=e.$wrapperEl,s=e.size,r=e.rtlTranslate,n=e.wrongRTL,o=e.virtual&&a.virtual.enabled,d=o?e.virtual.slides.length:e.slides.length,p=i.children("."+e.params.slideClass),u=o?e.virtual.slides.length:p.length,c=[],h=[],v=[];function f(e,t){return!a.cssMode||t!==p.length-1}var m=a.slidesOffsetBefore;"function"==typeof m&&(m=a.slidesOffsetBefore.call(e));var g=a.slidesOffsetAfter;"function"==typeof g&&(g=a.slidesOffsetAfter.call(e));var y=e.snapGrid.length,w=e.slidesGrid.length,b=a.spaceBetween,E=-m,x=0,T=0;if(void 0!==s){var C,M;"string"==typeof b&&b.indexOf("%")>=0&&(b=parseFloat(b.replace("%",""))/100*s),e.virtualSize=-b,r?p.css({marginLeft:"",marginTop:""}):p.css({marginRight:"",marginBottom:""}),a.slidesPerColumn>1&&(C=Math.floor(u/a.slidesPerColumn)===u/e.params.slidesPerColumn?u:Math.ceil(u/a.slidesPerColumn)*a.slidesPerColumn,"auto"!==a.slidesPerView&&"row"===a.slidesPerColumnFill&&(C=Math.max(C,a.slidesPerView*a.slidesPerColumn)));for(var z,P=a.slidesPerColumn,k=C/P,L=Math.floor(u/a.slidesPerColumn),$=0;$<u;$+=1){M=0;var I=p.eq($);if(a.slidesPerColumn>1){var O=void 0,A=void 0,D=void 0;if("row"===a.slidesPerColumnFill&&a.slidesPerGroup>1){var G=Math.floor($/(a.slidesPerGroup*a.slidesPerColumn)),N=$-a.slidesPerColumn*a.slidesPerGroup*G,B=0===G?a.slidesPerGroup:Math.min(Math.ceil((u-G*P*a.slidesPerGroup)/P),a.slidesPerGroup);O=(A=N-(D=Math.floor(N/B))*B+G*a.slidesPerGroup)+D*C/P,I.css({"-webkit-box-ordinal-group":O,"-moz-box-ordinal-group":O,"-ms-flex-order":O,"-webkit-order":O,order:O})}else"column"===a.slidesPerColumnFill?(D=$-(A=Math.floor($/P))*P,(A>L||A===L&&D===P-1)&&(D+=1)>=P&&(D=0,A+=1)):A=$-(D=Math.floor($/k))*k;I.css("margin-"+(e.isHorizontal()?"top":"left"),0!==D&&a.spaceBetween&&a.spaceBetween+"px")}if("none"!==I.css("display")){if("auto"===a.slidesPerView){var H=t.getComputedStyle(I[0],null),X=I[0].style.transform,Y=I[0].style.webkitTransform;if(X&&(I[0].style.transform="none"),Y&&(I[0].style.webkitTransform="none"),a.roundLengths)M=e.isHorizontal()?I.outerWidth(!0):I.outerHeight(!0);else if(e.isHorizontal()){var V=parseFloat(H.getPropertyValue("width")||0),F=parseFloat(H.getPropertyValue("padding-left")||0),R=parseFloat(H.getPropertyValue("padding-right")||0),W=parseFloat(H.getPropertyValue("margin-left")||0),q=parseFloat(H.getPropertyValue("margin-right")||0),j=H.getPropertyValue("box-sizing");if(j&&"border-box"===j)M=V+W+q;else{var _=I[0],U=_.clientWidth;M=V+F+R+W+q+(_.offsetWidth-U)}}else{var K=parseFloat(H.getPropertyValue("height")||0),Z=parseFloat(H.getPropertyValue("padding-top")||0),J=parseFloat(H.getPropertyValue("padding-bottom")||0),Q=parseFloat(H.getPropertyValue("margin-top")||0),ee=parseFloat(H.getPropertyValue("margin-bottom")||0),te=H.getPropertyValue("box-sizing");if(te&&"border-box"===te)M=K+Q+ee;else{var ae=I[0],ie=ae.clientHeight;M=K+Z+J+Q+ee+(ae.offsetHeight-ie)}}X&&(I[0].style.transform=X),Y&&(I[0].style.webkitTransform=Y),a.roundLengths&&(M=Math.floor(M))}else M=(s-(a.slidesPerView-1)*b)/a.slidesPerView,a.roundLengths&&(M=Math.floor(M)),p[$]&&(e.isHorizontal()?p[$].style.width=M+"px":p[$].style.height=M+"px");p[$]&&(p[$].swiperSlideSize=M),v.push(M),a.centeredSlides?(E=E+M/2+x/2+b,0===x&&0!==$&&(E=E-s/2-b),0===$&&(E=E-s/2-b),Math.abs(E)<.001&&(E=0),a.roundLengths&&(E=Math.floor(E)),T%a.slidesPerGroup==0&&c.push(E),h.push(E)):(a.roundLengths&&(E=Math.floor(E)),(T-Math.min(e.params.slidesPerGroupSkip,T))%e.params.slidesPerGroup==0&&c.push(E),h.push(E),E=E+M+b),e.virtualSize+=M+b,x=M,T+=1}}if(e.virtualSize=Math.max(e.virtualSize,s)+g,r&&n&&("slide"===a.effect||"coverflow"===a.effect)&&i.css({width:e.virtualSize+a.spaceBetween+"px"}),a.setWrapperSize&&(e.isHorizontal()?i.css({width:e.virtualSize+a.spaceBetween+"px"}):i.css({height:e.virtualSize+a.spaceBetween+"px"})),a.slidesPerColumn>1&&(e.virtualSize=(M+a.spaceBetween)*C,e.virtualSize=Math.ceil(e.virtualSize/a.slidesPerColumn)-a.spaceBetween,e.isHorizontal()?i.css({width:e.virtualSize+a.spaceBetween+"px"}):i.css({height:e.virtualSize+a.spaceBetween+"px"}),a.centeredSlides)){z=[];for(var se=0;se<c.length;se+=1){var re=c[se];a.roundLengths&&(re=Math.floor(re)),c[se]<e.virtualSize+c[0]&&z.push(re)}c=z}if(!a.centeredSlides){z=[];for(var ne=0;ne<c.length;ne+=1){var le=c[ne];a.roundLengths&&(le=Math.floor(le)),c[ne]<=e.virtualSize-s&&z.push(le)}c=z,Math.floor(e.virtualSize-s)-Math.floor(c[c.length-1])>1&&c.push(e.virtualSize-s)}if(0===c.length&&(c=[0]),0!==a.spaceBetween&&(e.isHorizontal()?r?p.filter(f).css({marginLeft:b+"px"}):p.filter(f).css({marginRight:b+"px"}):p.filter(f).css({marginBottom:b+"px"})),a.centeredSlides&&a.centeredSlidesBounds){var oe=0;v.forEach((function(e){oe+=e+(a.spaceBetween?a.spaceBetween:0)}));var de=(oe-=a.spaceBetween)-s;c=c.map((function(e){return e<0?-m:e>de?de+g:e}))}if(a.centerInsufficientSlides){var pe=0;if(v.forEach((function(e){pe+=e+(a.spaceBetween?a.spaceBetween:0)})),(pe-=a.spaceBetween)<s){var ue=(s-pe)/2;c.forEach((function(e,t){c[t]=e-ue})),h.forEach((function(e,t){h[t]=e+ue}))}}S(e,{slides:p,snapGrid:c,slidesGrid:h,slidesSizesGrid:v}),u!==d&&e.emit("slidesLengthChange"),c.length!==y&&(e.params.watchOverflow&&e.checkOverflow(),e.emit("snapGridLengthChange")),h.length!==w&&e.emit("slidesGridLengthChange"),(a.watchSlidesProgress||a.watchSlidesVisibility)&&e.updateSlidesOffset()}},updateAutoHeight:function(e){var t,a=this,i=[],s=0;if("number"==typeof e?a.setTransition(e):!0===e&&a.setTransition(a.params.speed),"auto"!==a.params.slidesPerView&&a.params.slidesPerView>1)if(a.params.centeredSlides)a.visibleSlides.each((function(e){i.push(e)}));else for(t=0;t<Math.ceil(a.params.slidesPerView);t+=1){var r=a.activeIndex+t;if(r>a.slides.length)break;i.push(a.slides.eq(r)[0])}else i.push(a.slides.eq(a.activeIndex)[0]);for(t=0;t<i.length;t+=1)if(void 0!==i[t]){var n=i[t].offsetHeight;s=n>s?n:s}s&&a.$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,a=t.params,i=t.slides,s=t.rtlTranslate;if(0!==i.length){void 0===i[0].swiperSlideOffset&&t.updateSlidesOffset();var r=-e;s&&(r=e),i.removeClass(a.slideVisibleClass),t.visibleSlidesIndexes=[],t.visibleSlides=[];for(var n=0;n<i.length;n+=1){var l=i[n],o=(r+(a.centeredSlides?t.minTranslate():0)-l.swiperSlideOffset)/(l.swiperSlideSize+a.spaceBetween);if(a.watchSlidesVisibility||a.centeredSlides&&a.autoHeight){var d=-(r-l.swiperSlideOffset),p=d+t.slidesSizesGrid[n];(d>=0&&d<t.size-1||p>1&&p<=t.size||d<=0&&p>=t.size)&&(t.visibleSlides.push(l),t.visibleSlidesIndexes.push(n),i.eq(n).addClass(a.slideVisibleClass))}l.progress=s?-o:o}t.visibleSlides=m(t.visibleSlides)}},updateProgress:function(e){var t=this;if(void 0===e){var a=t.rtlTranslate?-1:1;e=t&&t.translate&&t.translate*a||0}var i=t.params,s=t.maxTranslate()-t.minTranslate(),r=t.progress,n=t.isBeginning,l=t.isEnd,o=n,d=l;0===s?(r=0,n=!0,l=!0):(n=(r=(e-t.minTranslate())/s)<=0,l=r>=1),S(t,{progress:r,isBeginning:n,isEnd:l}),(i.watchSlidesProgress||i.watchSlidesVisibility||i.centeredSlides&&i.autoHeight)&&t.updateSlidesProgress(e),n&&!o&&t.emit("reachBeginning toEdge"),l&&!d&&t.emit("reachEnd toEdge"),(o&&!n||d&&!l)&&t.emit("fromEdge"),t.emit("progress",r)},updateSlidesClasses:function(){var e,t=this,a=t.slides,i=t.params,s=t.$wrapperEl,r=t.activeIndex,n=t.realIndex,l=t.virtual&&i.virtual.enabled;a.removeClass(i.slideActiveClass+" "+i.slideNextClass+" "+i.slidePrevClass+" "+i.slideDuplicateActiveClass+" "+i.slideDuplicateNextClass+" "+i.slideDuplicatePrevClass),(e=l?t.$wrapperEl.find("."+i.slideClass+'[data-swiper-slide-index="'+r+'"]'):a.eq(r)).addClass(i.slideActiveClass),i.loop&&(e.hasClass(i.slideDuplicateClass)?s.children("."+i.slideClass+":not(."+i.slideDuplicateClass+')[data-swiper-slide-index="'+n+'"]').addClass(i.slideDuplicateActiveClass):s.children("."+i.slideClass+"."+i.slideDuplicateClass+'[data-swiper-slide-index="'+n+'"]').addClass(i.slideDuplicateActiveClass));var o=e.nextAll("."+i.slideClass).eq(0).addClass(i.slideNextClass);i.loop&&0===o.length&&(o=a.eq(0)).addClass(i.slideNextClass);var d=e.prevAll("."+i.slideClass).eq(0).addClass(i.slidePrevClass);i.loop&&0===d.length&&(d=a.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),d.hasClass(i.slideDuplicateClass)?s.children("."+i.slideClass+":not(."+i.slideDuplicateClass+')[data-swiper-slide-index="'+d.attr("data-swiper-slide-index")+'"]').addClass(i.slideDuplicatePrevClass):s.children("."+i.slideClass+"."+i.slideDuplicateClass+'[data-swiper-slide-index="'+d.attr("data-swiper-slide-index")+'"]').addClass(i.slideDuplicatePrevClass)),t.emitSlidesClasses()},updateActiveIndex:function(e){var t,a=this,i=a.rtlTranslate?a.translate:-a.translate,s=a.slidesGrid,r=a.snapGrid,n=a.params,l=a.activeIndex,o=a.realIndex,d=a.snapIndex,p=e;if(void 0===p){for(var u=0;u<s.length;u+=1)void 0!==s[u+1]?i>=s[u]&&i<s[u+1]-(s[u+1]-s[u])/2?p=u:i>=s[u]&&i<s[u+1]&&(p=u+1):i>=s[u]&&(p=u);n.normalizeSlideIndex&&(p<0||void 0===p)&&(p=0)}if(r.indexOf(i)>=0)t=r.indexOf(i);else{var c=Math.min(n.slidesPerGroupSkip,p);t=c+Math.floor((p-c)/n.slidesPerGroup)}if(t>=r.length&&(t=r.length-1),p!==l){var h=parseInt(a.slides.eq(p).attr("data-swiper-slide-index")||p,10);S(a,{snapIndex:t,realIndex:h,previousIndex:l,activeIndex:p}),a.emit("activeIndexChange"),a.emit("snapIndexChange"),o!==h&&a.emit("realIndexChange"),(a.initialized||a.params.runCallbacksOnInit)&&a.emit("slideChange")}else t!==d&&(a.snapIndex=t,a.emit("snapIndexChange"))},updateClickedSlide:function(e){var t=this,a=t.params,i=m(e.target).closest("."+a.slideClass)[0],s=!1;if(i)for(var r=0;r<t.slides.length;r+=1)t.slides[r]===i&&(s=!0);if(!i||!s)return t.clickedSlide=void 0,void(t.clickedIndex=void 0);t.clickedSlide=i,t.virtual&&t.params.virtual.enabled?t.clickedIndex=parseInt(m(i).attr("data-swiper-slide-index"),10):t.clickedIndex=m(i).index(),a.slideToClickedSlide&&void 0!==t.clickedIndex&&t.clickedIndex!==t.activeIndex&&t.slideToClickedSlide()}},translate:{getTranslate:function(e){void 0===e&&(e=this.isHorizontal()?"x":"y");var t=this,a=t.params,i=t.rtlTranslate,s=t.translate,r=t.$wrapperEl;if(a.virtualTranslate)return i?-s:s;if(a.cssMode)return s;var n=T(r[0],e);return i&&(n=-n),n||0},setTranslate:function(e,t){var a=this,i=a.rtlTranslate,s=a.params,r=a.$wrapperEl,n=a.wrapperEl,l=a.progress,o=0,d=0;a.isHorizontal()?o=i?-e:e:d=e,s.roundLengths&&(o=Math.floor(o),d=Math.floor(d)),s.cssMode?n[a.isHorizontal()?"scrollLeft":"scrollTop"]=a.isHorizontal()?-o:-d:s.virtualTranslate||r.transform("translate3d("+o+"px, "+d+"px, 0px)"),a.previousTranslate=a.translate,a.translate=a.isHorizontal()?o:d;var p=a.maxTranslate()-a.minTranslate();(0===p?0:(e-a.minTranslate())/p)!==l&&a.updateProgress(e),a.emit("setTranslate",a.translate,t)},minTranslate:function(){return-this.snapGrid[0]},maxTranslate:function(){return-this.snapGrid[this.snapGrid.length-1]},translateTo:function(e,t,a,i,s){void 0===e&&(e=0),void 0===t&&(t=this.params.speed),void 0===a&&(a=!0),void 0===i&&(i=!0);var r=this,n=r.params,l=r.wrapperEl;if(r.animating&&n.preventInteractionOnTransition)return!1;var o,d=r.minTranslate(),p=r.maxTranslate();if(o=i&&e>d?d:i&&e<p?p:e,r.updateProgress(o),n.cssMode){var u,c=r.isHorizontal();if(0===t)l[c?"scrollLeft":"scrollTop"]=-o;else if(l.scrollTo)l.scrollTo(((u={})[c?"left":"top"]=-o,u.behavior="smooth",u));else l[c?"scrollLeft":"scrollTop"]=-o;return!0}return 0===t?(r.setTransition(0),r.setTranslate(o),a&&(r.emit("beforeTransitionStart",t,s),r.emit("transitionEnd"))):(r.setTransition(t),r.setTranslate(o),a&&(r.emit("beforeTransitionStart",t,s),r.emit("transitionStart")),r.animating||(r.animating=!0,r.onTranslateToWrapperTransitionEnd||(r.onTranslateToWrapperTransitionEnd=function(e){r&&!r.destroyed&&e.target===this&&(r.$wrapperEl[0].removeEventListener("transitionend",r.onTranslateToWrapperTransitionEnd),r.$wrapperEl[0].removeEventListener("webkitTransitionEnd",r.onTranslateToWrapperTransitionEnd),r.onTranslateToWrapperTransitionEnd=null,delete r.onTranslateToWrapperTransitionEnd,a&&r.emit("transitionEnd"))}),r.$wrapperEl[0].addEventListener("transitionend",r.onTranslateToWrapperTransitionEnd),r.$wrapperEl[0].addEventListener("webkitTransitionEnd",r.onTranslateToWrapperTransitionEnd))),!0}},transition:{setTransition:function(e,t){var a=this;a.params.cssMode||a.$wrapperEl.transition(e),a.emit("setTransition",e,t)},transitionStart:function(e,t){void 0===e&&(e=!0);var a=this,i=a.activeIndex,s=a.params,r=a.previousIndex;if(!s.cssMode){s.autoHeight&&a.updateAutoHeight();var n=t;if(n||(n=i>r?"next":i<r?"prev":"reset"),a.emit("transitionStart"),e&&i!==r){if("reset"===n)return void a.emit("slideResetTransitionStart");a.emit("slideChangeTransitionStart"),"next"===n?a.emit("slideNextTransitionStart"):a.emit("slidePrevTransitionStart")}}},transitionEnd:function(e,t){void 0===e&&(e=!0);var a=this,i=a.activeIndex,s=a.previousIndex,r=a.params;if(a.animating=!1,!r.cssMode){a.setTransition(0);var n=t;if(n||(n=i>s?"next":i<s?"prev":"reset"),a.emit("transitionEnd"),e&&i!==s){if("reset"===n)return void a.emit("slideResetTransitionEnd");a.emit("slideChangeTransitionEnd"),"next"===n?a.emit("slideNextTransitionEnd"):a.emit("slidePrevTransitionEnd")}}}},slide:{slideTo:function(e,t,a,i){if(void 0===e&&(e=0),void 0===t&&(t=this.params.speed),void 0===a&&(a=!0),"number"!=typeof e&&"string"!=typeof e)throw new Error("The 'index' argument cannot have type other than 'number' or 'string'. ["+typeof e+"] given.");if("string"==typeof e){var s=parseInt(e,10);if(!isFinite(s))throw new Error("The passed-in 'index' (string) couldn't be converted to 'number'. ["+e+"] given.");e=s}var r=this,n=e;n<0&&(n=0);var l=r.params,o=r.snapGrid,d=r.slidesGrid,p=r.previousIndex,u=r.activeIndex,c=r.rtlTranslate,h=r.wrapperEl;if(r.animating&&l.preventInteractionOnTransition)return!1;var v=Math.min(r.params.slidesPerGroupSkip,n),f=v+Math.floor((n-v)/r.params.slidesPerGroup);f>=o.length&&(f=o.length-1),(u||l.initialSlide||0)===(p||0)&&a&&r.emit("beforeSlideChangeStart");var m,g=-o[f];if(r.updateProgress(g),l.normalizeSlideIndex)for(var y=0;y<d.length;y+=1){var w=-Math.floor(100*g),b=Math.floor(100*d[y]),E=Math.floor(100*d[y+1]);void 0!==d[y+1]?w>=b&&w<E-(E-b)/2?n=y:w>=b&&w<E&&(n=y+1):w>=b&&(n=y)}if(r.initialized&&n!==u){if(!r.allowSlideNext&&g<r.translate&&g<r.minTranslate())return!1;if(!r.allowSlidePrev&&g>r.translate&&g>r.maxTranslate()&&(u||0)!==n)return!1}if(m=n>u?"next":n<u?"prev":"reset",c&&-g===r.translate||!c&&g===r.translate)return r.updateActiveIndex(n),l.autoHeight&&r.updateAutoHeight(),r.updateSlidesClasses(),"slide"!==l.effect&&r.setTranslate(g),"reset"!==m&&(r.transitionStart(a,m),r.transitionEnd(a,m)),!1;if(l.cssMode){var x,T=r.isHorizontal(),C=-g;if(c&&(C=h.scrollWidth-h.offsetWidth-C),0===t)h[T?"scrollLeft":"scrollTop"]=C;else if(h.scrollTo)h.scrollTo(((x={})[T?"left":"top"]=C,x.behavior="smooth",x));else h[T?"scrollLeft":"scrollTop"]=C;return!0}return 0===t?(r.setTransition(0),r.setTranslate(g),r.updateActiveIndex(n),r.updateSlidesClasses(),r.emit("beforeTransitionStart",t,i),r.transitionStart(a,m),r.transitionEnd(a,m)):(r.setTransition(t),r.setTranslate(g),r.updateActiveIndex(n),r.updateSlidesClasses(),r.emit("beforeTransitionStart",t,i),r.transitionStart(a,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(a,m))}),r.$wrapperEl[0].addEventListener("transitionend",r.onSlideToWrapperTransitionEnd),r.$wrapperEl[0].addEventListener("webkitTransitionEnd",r.onSlideToWrapperTransitionEnd))),!0},slideToLoop:function(e,t,a,i){void 0===e&&(e=0),void 0===t&&(t=this.params.speed),void 0===a&&(a=!0);var s=this,r=e;return s.params.loop&&(r+=s.loopedSlides),s.slideTo(r,t,a,i)},slideNext:function(e,t,a){void 0===e&&(e=this.params.speed),void 0===t&&(t=!0);var i=this,s=i.params,r=i.animating,n=i.activeIndex<s.slidesPerGroupSkip?1:s.slidesPerGroup;if(s.loop){if(r&&s.loopPreventsSlide)return!1;i.loopFix(),i._clientLeft=i.$wrapperEl[0].clientLeft}return i.slideTo(i.activeIndex+n,e,t,a)},slidePrev:function(e,t,a){void 0===e&&(e=this.params.speed),void 0===t&&(t=!0);var i=this,s=i.params,r=i.animating,n=i.snapGrid,l=i.slidesGrid,o=i.rtlTranslate;if(s.loop){if(r&&s.loopPreventsSlide)return!1;i.loopFix(),i._clientLeft=i.$wrapperEl[0].clientLeft}function d(e){return e<0?-Math.floor(Math.abs(e)):Math.floor(e)}var p=d(o?i.translate:-i.translate),u=n.map((function(e){return d(e)}));n[u.indexOf(p)];var c,h=n[u.indexOf(p)-1];return void 0===h&&s.cssMode&&n.forEach((function(e){!h&&p>=e&&(h=e)})),void 0!==h&&(c=l.indexOf(h))<0&&(c=i.activeIndex-1),i.slideTo(c,e,t,a)},slideReset:function(e,t,a){return void 0===e&&(e=this.params.speed),void 0===t&&(t=!0),this.slideTo(this.activeIndex,e,t,a)},slideToClosest:function(e,t,a,i){void 0===e&&(e=this.params.speed),void 0===t&&(t=!0),void 0===i&&(i=.5);var s=this,r=s.activeIndex,n=Math.min(s.params.slidesPerGroupSkip,r),l=n+Math.floor((r-n)/s.params.slidesPerGroup),o=s.rtlTranslate?s.translate:-s.translate;if(o>=s.snapGrid[l]){var d=s.snapGrid[l];o-d>(s.snapGrid[l+1]-d)*i&&(r+=s.params.slidesPerGroup)}else{var p=s.snapGrid[l-1];o-p<=(s.snapGrid[l]-p)*i&&(r-=s.params.slidesPerGroup)}return r=Math.max(r,0),r=Math.min(r,s.slidesGrid.length-1),s.slideTo(r,e,t,a)},slideToClickedSlide:function(){var e,t=this,a=t.params,i=t.$wrapperEl,s="auto"===a.slidesPerView?t.slidesPerViewDynamic():a.slidesPerView,r=t.clickedIndex;if(a.loop){if(t.animating)return;e=parseInt(m(t.clickedSlide).attr("data-swiper-slide-index"),10),a.centeredSlides?r<t.loopedSlides-s/2||r>t.slides.length-t.loopedSlides+s/2?(t.loopFix(),r=i.children("."+a.slideClass+'[data-swiper-slide-index="'+e+'"]:not(.'+a.slideDuplicateClass+")").eq(0).index(),E((function(){t.slideTo(r)}))):t.slideTo(r):r>t.slides.length-s?(t.loopFix(),r=i.children("."+a.slideClass+'[data-swiper-slide-index="'+e+'"]:not(.'+a.slideDuplicateClass+")").eq(0).index(),E((function(){t.slideTo(r)}))):t.slideTo(r)}else t.slideTo(r)}},loop:{loopCreate:function(){var e=this,t=r(),a=e.params,i=e.$wrapperEl;i.children("."+a.slideClass+"."+a.slideDuplicateClass).remove();var s=i.children("."+a.slideClass);if(a.loopFillGroupWithBlank){var n=a.slidesPerGroup-s.length%a.slidesPerGroup;if(n!==a.slidesPerGroup){for(var l=0;l<n;l+=1){var o=m(t.createElement("div")).addClass(a.slideClass+" "+a.slideBlankClass);i.append(o)}s=i.children("."+a.slideClass)}}"auto"!==a.slidesPerView||a.loopedSlides||(a.loopedSlides=s.length),e.loopedSlides=Math.ceil(parseFloat(a.loopedSlides||a.slidesPerView,10)),e.loopedSlides+=a.loopAdditionalSlides,e.loopedSlides>s.length&&(e.loopedSlides=s.length);var d=[],p=[];s.each((function(t,a){var i=m(t);a<e.loopedSlides&&p.push(t),a<s.length&&a>=s.length-e.loopedSlides&&d.push(t),i.attr("data-swiper-slide-index",a)}));for(var u=0;u<p.length;u+=1)i.append(m(p[u].cloneNode(!0)).addClass(a.slideDuplicateClass));for(var c=d.length-1;c>=0;c-=1)i.prepend(m(d[c].cloneNode(!0)).addClass(a.slideDuplicateClass))},loopFix:function(){var e=this;e.emit("beforeLoopFix");var t,a=e.activeIndex,i=e.slides,s=e.loopedSlides,r=e.allowSlidePrev,n=e.allowSlideNext,l=e.snapGrid,o=e.rtlTranslate;e.allowSlidePrev=!0,e.allowSlideNext=!0;var d=-l[a]-e.getTranslate();if(a<s)t=i.length-3*s+a,t+=s,e.slideTo(t,0,!1,!0)&&0!==d&&e.setTranslate((o?-e.translate:e.translate)-d);else if(a>=i.length-s){t=-i.length+a+s,t+=s,e.slideTo(t,0,!1,!0)&&0!==d&&e.setTranslate((o?-e.translate:e.translate)-d)}e.allowSlidePrev=r,e.allowSlideNext=n,e.emit("loopFix")},loopDestroy:function(){var e=this,t=e.$wrapperEl,a=e.params,i=e.slides;t.children("."+a.slideClass+"."+a.slideDuplicateClass+",."+a.slideClass+"."+a.slideBlankClass).remove(),i.removeAttr("data-swiper-slide-index")}},grabCursor:{setGrabCursor:function(e){var t=this;if(!(t.support.touch||!t.params.simulateTouch||t.params.watchOverflow&&t.isLocked||t.params.cssMode)){var a=t.el;a.style.cursor="move",a.style.cursor=e?"-webkit-grabbing":"-webkit-grab",a.style.cursor=e?"-moz-grabbin":"-moz-grab",a.style.cursor=e?"grabbing":"grab"}},unsetGrabCursor:function(){var e=this;e.support.touch||e.params.watchOverflow&&e.isLocked||e.params.cssMode||(e.el.style.cursor="")}},manipulation:{appendSlide:function(e){var t=this,a=t.$wrapperEl,i=t.params;if(i.loop&&t.loopDestroy(),"object"==typeof e&&"length"in e)for(var s=0;s<e.length;s+=1)e[s]&&a.append(e[s]);else a.append(e);i.loop&&t.loopCreate(),i.observer&&t.support.observer||t.update()},prependSlide:function(e){var t=this,a=t.params,i=t.$wrapperEl,s=t.activeIndex;a.loop&&t.loopDestroy();var r=s+1;if("object"==typeof e&&"length"in e){for(var n=0;n<e.length;n+=1)e[n]&&i.prepend(e[n]);r=s+e.length}else i.prepend(e);a.loop&&t.loopCreate(),a.observer&&t.support.observer||t.update(),t.slideTo(r,0,!1)},addSlide:function(e,t){var a=this,i=a.$wrapperEl,s=a.params,r=a.activeIndex;s.loop&&(r-=a.loopedSlides,a.loopDestroy(),a.slides=i.children("."+s.slideClass));var n=a.slides.length;if(e<=0)a.prependSlide(t);else if(e>=n)a.appendSlide(t);else{for(var l=r>e?r+1:r,o=[],d=n-1;d>=e;d-=1){var p=a.slides.eq(d);p.remove(),o.unshift(p)}if("object"==typeof t&&"length"in t){for(var u=0;u<t.length;u+=1)t[u]&&i.append(t[u]);l=r>e?r+t.length:r}else i.append(t);for(var c=0;c<o.length;c+=1)i.append(o[c]);s.loop&&a.loopCreate(),s.observer&&a.support.observer||a.update(),s.loop?a.slideTo(l+a.loopedSlides,0,!1):a.slideTo(l,0,!1)}},removeSlide:function(e){var t=this,a=t.params,i=t.$wrapperEl,s=t.activeIndex;a.loop&&(s-=t.loopedSlides,t.loopDestroy(),t.slides=i.children("."+a.slideClass));var r,n=s;if("object"==typeof e&&"length"in e){for(var l=0;l<e.length;l+=1)r=e[l],t.slides[r]&&t.slides.eq(r).remove(),r<n&&(n-=1);n=Math.max(n,0)}else r=e,t.slides[r]&&t.slides.eq(r).remove(),r<n&&(n-=1),n=Math.max(n,0);a.loop&&t.loopCreate(),a.observer&&t.support.observer||t.update(),a.loop?t.slideTo(n+t.loopedSlides,0,!1):t.slideTo(n,0,!1)},removeAllSlides:function(){for(var e=[],t=0;t<this.slides.length;t+=1)e.push(t);this.removeSlide(e)}},events:{attachEvents:function(){var e=this,t=r(),a=e.params,i=e.touchEvents,s=e.el,n=e.wrapperEl,l=e.device,o=e.support;e.onTouchStart=O.bind(e),e.onTouchMove=A.bind(e),e.onTouchEnd=D.bind(e),a.cssMode&&(e.onScroll=B.bind(e)),e.onClick=N.bind(e);var d=!!a.nested;if(!o.touch&&o.pointerEvents)s.addEventListener(i.start,e.onTouchStart,!1),t.addEventListener(i.move,e.onTouchMove,d),t.addEventListener(i.end,e.onTouchEnd,!1);else{if(o.touch){var p=!("touchstart"!==i.start||!o.passiveListener||!a.passiveListeners)&&{passive:!0,capture:!1};s.addEventListener(i.start,e.onTouchStart,p),s.addEventListener(i.move,e.onTouchMove,o.passiveListener?{passive:!1,capture:d}:d),s.addEventListener(i.end,e.onTouchEnd,p),i.cancel&&s.addEventListener(i.cancel,e.onTouchEnd,p),H||(t.addEventListener("touchstart",X),H=!0)}(a.simulateTouch&&!l.ios&&!l.android||a.simulateTouch&&!o.touch&&l.ios)&&(s.addEventListener("mousedown",e.onTouchStart,!1),t.addEventListener("mousemove",e.onTouchMove,d),t.addEventListener("mouseup",e.onTouchEnd,!1))}(a.preventClicks||a.preventClicksPropagation)&&s.addEventListener("click",e.onClick,!0),a.cssMode&&n.addEventListener("scroll",e.onScroll),a.updateOnWindowResize?e.on(l.ios||l.android?"resize orientationchange observerUpdate":"resize observerUpdate",G,!0):e.on("observerUpdate",G,!0)},detachEvents:function(){var e=this,t=r(),a=e.params,i=e.touchEvents,s=e.el,n=e.wrapperEl,l=e.device,o=e.support,d=!!a.nested;if(!o.touch&&o.pointerEvents)s.removeEventListener(i.start,e.onTouchStart,!1),t.removeEventListener(i.move,e.onTouchMove,d),t.removeEventListener(i.end,e.onTouchEnd,!1);else{if(o.touch){var p=!("onTouchStart"!==i.start||!o.passiveListener||!a.passiveListeners)&&{passive:!0,capture:!1};s.removeEventListener(i.start,e.onTouchStart,p),s.removeEventListener(i.move,e.onTouchMove,d),s.removeEventListener(i.end,e.onTouchEnd,p),i.cancel&&s.removeEventListener(i.cancel,e.onTouchEnd,p)}(a.simulateTouch&&!l.ios&&!l.android||a.simulateTouch&&!o.touch&&l.ios)&&(s.removeEventListener("mousedown",e.onTouchStart,!1),t.removeEventListener("mousemove",e.onTouchMove,d),t.removeEventListener("mouseup",e.onTouchEnd,!1))}(a.preventClicks||a.preventClicksPropagation)&&s.removeEventListener("click",e.onClick,!0),a.cssMode&&n.removeEventListener("scroll",e.onScroll),e.off(l.ios||l.android?"resize orientationchange observerUpdate":"resize observerUpdate",G)}},breakpoints:{setBreakpoint:function(){var e=this,t=e.activeIndex,a=e.initialized,i=e.loopedSlides,s=void 0===i?0:i,r=e.params,n=e.$el,l=r.breakpoints;if(l&&(!l||0!==Object.keys(l).length)){var o=e.getBreakpoint(l);if(o&&e.currentBreakpoint!==o){var d=o in l?l[o]:void 0;d&&["slidesPerView","spaceBetween","slidesPerGroup","slidesPerGroupSkip","slidesPerColumn"].forEach((function(e){var t=d[e];void 0!==t&&(d[e]="slidesPerView"!==e||"AUTO"!==t&&"auto"!==t?"slidesPerView"===e?parseFloat(t):parseInt(t,10):"auto")}));var p=d||e.originalParams,u=r.slidesPerColumn>1,c=p.slidesPerColumn>1;u&&!c?(n.removeClass(r.containerModifierClass+"multirow "+r.containerModifierClass+"multirow-column"),e.emitContainerClasses()):!u&&c&&(n.addClass(r.containerModifierClass+"multirow"),"column"===p.slidesPerColumnFill&&n.addClass(r.containerModifierClass+"multirow-column"),e.emitContainerClasses());var h=p.direction&&p.direction!==r.direction,v=r.loop&&(p.slidesPerView!==r.slidesPerView||h);h&&a&&e.changeDirection(),S(e.params,p),S(e,{allowTouchMove:e.params.allowTouchMove,allowSlideNext:e.params.allowSlideNext,allowSlidePrev:e.params.allowSlidePrev}),e.currentBreakpoint=o,e.emit("_beforeBreakpoint",p),v&&a&&(e.loopDestroy(),e.loopCreate(),e.updateSlides(),e.slideTo(t-s+e.loopedSlides,0,!1)),e.emit("breakpoint",p)}}},getBreakpoint:function(e){var t=l();if(e){var a=!1,i=Object.keys(e).map((function(e){if("string"==typeof e&&0===e.indexOf("@")){var a=parseFloat(e.substr(1));return{value:t.innerHeight*a,point:e}}return{value:e,point:e}}));i.sort((function(e,t){return parseInt(e.value,10)-parseInt(t.value,10)}));for(var s=0;s<i.length;s+=1){var r=i[s],n=r.point;r.value<=t.innerWidth&&(a=n)}return a||"max"}}},checkOverflow:{checkOverflow:function(){var e=this,t=e.params,a=e.isLocked,i=e.slides.length>0&&t.slidesOffsetBefore+t.spaceBetween*(e.slides.length-1)+e.slides[0].offsetWidth*e.slides.length;t.slidesOffsetBefore&&t.slidesOffsetAfter&&i?e.isLocked=i<=e.size:e.isLocked=1===e.snapGrid.length,e.allowSlideNext=!e.isLocked,e.allowSlidePrev=!e.isLocked,a!==e.isLocked&&e.emit(e.isLocked?"lock":"unlock"),a&&a!==e.isLocked&&(e.isEnd=!1,e.navigation&&e.navigation.update())}},classes:{addClasses:function(){var e=this,t=e.classNames,a=e.params,i=e.rtl,s=e.$el,r=e.device,n=e.support,l=[];l.push("initialized"),l.push(a.direction),n.pointerEvents&&!n.touch&&l.push("pointer-events"),a.freeMode&&l.push("free-mode"),a.autoHeight&&l.push("autoheight"),i&&l.push("rtl"),a.slidesPerColumn>1&&(l.push("multirow"),"column"===a.slidesPerColumnFill&&l.push("multirow-column")),r.android&&l.push("android"),r.ios&&l.push("ios"),a.cssMode&&l.push("css-mode"),l.forEach((function(e){t.push(a.containerModifierClass+e)})),s.addClass(t.join(" ")),e.emitContainerClasses()},removeClasses:function(){var e=this,t=e.$el,a=e.classNames;t.removeClass(a.join(" ")),e.emitContainerClasses()}},images:{loadImage:function(e,t,a,i,s,r){var n,o=l();function d(){r&&r()}m(e).parent("picture")[0]||e.complete&&s?d():t?((n=new o.Image).onload=d,n.onerror=d,i&&(n.sizes=i),a&&(n.srcset=a),t&&(n.src=t)):d()},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 a=0;a<e.imagesToLoad.length;a+=1){var i=e.imagesToLoad[a];e.loadImage(i,i.currentSrc||i.getAttribute("src"),i.srcset||i.getAttribute("srcset"),i.sizes||i.getAttribute("sizes"),!0,t)}}}},F={},R=function(){function t(){for(var e,a,i=arguments.length,s=new Array(i),r=0;r<i;r++)s[r]=arguments[r];if(1===s.length&&s[0].constructor&&s[0].constructor===Object?a=s[0]:(e=s[0],a=s[1]),a||(a={}),a=S({},a),e&&!a.el&&(a.el=e),a.el&&m(a.el).length>1){var n=[];return m(a.el).each((function(e){var i=S({},a,{el:e});n.push(new t(i))})),n}var l=this;l.support=z(),l.device=P({userAgent:a.userAgent}),l.browser=k(),l.eventsListeners={},l.eventsAnyListeners=[],void 0===l.modules&&(l.modules={}),Object.keys(l.modules).forEach((function(e){var t=l.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 a)||!("enabled"in s))return;!0===a[i]&&(a[i]={enabled:!0}),"object"!=typeof a[i]||"enabled"in a[i]||(a[i].enabled=!0),a[i]||(a[i]={enabled:!1})}}));var o,d,p=S({},Y);return l.useParams(p),l.params=S({},p,F,a),l.originalParams=S({},l.params),l.passedParams=S({},a),l.params&&l.params.on&&Object.keys(l.params.on).forEach((function(e){l.on(e,l.params.on[e])})),l.params&&l.params.onAny&&l.onAny(l.params.onAny),l.$=m,S(l,{el:e,classNames:[],slides:m(),slidesGrid:[],snapGrid:[],slidesSizesGrid:[],isHorizontal:function(){return"horizontal"===l.params.direction},isVertical:function(){return"vertical"===l.params.direction},activeIndex:0,realIndex:0,isBeginning:!0,isEnd:!1,translate:0,previousTranslate:0,progress:0,velocity:0,animating:!1,allowSlideNext:l.params.allowSlideNext,allowSlidePrev:l.params.allowSlidePrev,touchEvents:(o=["touchstart","touchmove","touchend","touchcancel"],d=["mousedown","mousemove","mouseup"],l.support.pointerEvents&&(d=["pointerdown","pointermove","pointerup"]),l.touchEventsTouch={start:o[0],move:o[1],end:o[2],cancel:o[3]},l.touchEventsDesktop={start:d[0],move:d[1],end:d[2]},l.support.touch||!l.params.simulateTouch?l.touchEventsTouch:l.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:x(),clickTimeout:void 0,velocities:[],allowMomentumBounce:void 0,isTouchEvent:void 0,startMoving:void 0},allowClick:!0,allowTouchMove:l.params.allowTouchMove,touches:{startX:0,startY:0,currentX:0,currentY:0,diff:0},imagesToLoad:[],imagesLoaded:0}),l.useModules(),l.emit("_swiper"),l.params.init&&l.init(),l}var a,i,s,r=t.prototype;return r.emitContainerClasses=function(){var e=this;if(e.params._emitClasses&&e.el){var t=e.el.className.split(" ").filter((function(t){return 0===t.indexOf("swiper-container")||0===t.indexOf(e.params.containerModifierClass)}));e.emit("_containerClasses",t.join(" "))}},r.getSlideClasses=function(e){var t=this;return e.className.split(" ").filter((function(e){return 0===e.indexOf("swiper-slide")||0===e.indexOf(t.params.slideClass)})).join(" ")},r.emitSlidesClasses=function(){var e=this;if(e.params._emitClasses&&e.el){var t=[];e.slides.each((function(a){var i=e.getSlideClasses(a);t.push({slideEl:a,classNames:i}),e.emit("_slideClass",a,i)})),e.emit("_slideClasses",t)}},r.slidesPerViewDynamic=function(){var e=this,t=e.params,a=e.slides,i=e.slidesGrid,s=e.size,r=e.activeIndex,n=1;if(t.centeredSlides){for(var l,o=a[r].swiperSlideSize,d=r+1;d<a.length;d+=1)a[d]&&!l&&(n+=1,(o+=a[d].swiperSlideSize)>s&&(l=!0));for(var p=r-1;p>=0;p-=1)a[p]&&!l&&(n+=1,(o+=a[p].swiperSlideSize)>s&&(l=!0))}else for(var u=r+1;u<a.length;u+=1)i[u]-i[r]<s&&(n+=1);return n},r.update=function(){var e=this;if(e&&!e.destroyed){var t=e.snapGrid,a=e.params;a.breakpoints&&e.setBreakpoint(),e.updateSize(),e.updateSlides(),e.updateProgress(),e.updateSlidesClasses(),e.params.freeMode?(i(),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))||i(),a.watchOverflow&&t!==e.snapGrid&&e.checkOverflow(),e.emit("update")}function i(){var t=e.rtlTranslate?-1*e.translate:e.translate,a=Math.min(Math.max(t,e.maxTranslate()),e.minTranslate());e.setTranslate(a),e.updateActiveIndex(),e.updateSlidesClasses()}},r.changeDirection=function(e,t){void 0===t&&(t=!0);var a=this,i=a.params.direction;return e||(e="horizontal"===i?"vertical":"horizontal"),e===i||"horizontal"!==e&&"vertical"!==e||(a.$el.removeClass(""+a.params.containerModifierClass+i).addClass(""+a.params.containerModifierClass+e),a.emitContainerClasses(),a.params.direction=e,a.slides.each((function(t){"vertical"===e?t.style.width="":t.style.height=""})),a.emit("changeDirection"),t&&a.update()),a},r.mount=function(e){var t=this;if(t.mounted)return!0;var a,i=m(e||t.params.el);return!!(e=i[0])&&(e.swiper=t,e&&e.shadowRoot&&e.shadowRoot.querySelector?(a=m(e.shadowRoot.querySelector("."+t.params.wrapperClass))).children=function(e){return i.children(e)}:a=i.children("."+t.params.wrapperClass),S(t,{$el:i,el:e,$wrapperEl:a,wrapperEl:a[0],mounted:!0,rtl:"rtl"===e.dir.toLowerCase()||"rtl"===i.css("direction"),rtlTranslate:"horizontal"===t.params.direction&&("rtl"===e.dir.toLowerCase()||"rtl"===i.css("direction")),wrongRTL:"-webkit-box"===a.css("display")}),!0)},r.init=function(e){var t=this;return t.initialized||!1===t.mount(e)||(t.emit("beforeInit"),t.params.breakpoints&&t.setBreakpoint(),t.addClasses(),t.params.loop&&t.loopCreate(),t.updateSize(),t.updateSlides(),t.params.watchOverflow&&t.checkOverflow(),t.params.grabCursor&&t.setGrabCursor(),t.params.preloadImages&&t.preloadImages(),t.params.loop?t.slideTo(t.params.initialSlide+t.loopedSlides,0,t.params.runCallbacksOnInit):t.slideTo(t.params.initialSlide,0,t.params.runCallbacksOnInit),t.attachEvents(),t.initialized=!0,t.emit("init"),t.emit("afterInit")),t},r.destroy=function(e,t){void 0===e&&(e=!0),void 0===t&&(t=!0);var a,i=this,s=i.params,r=i.$el,n=i.$wrapperEl,l=i.slides;return void 0===i.params||i.destroyed||(i.emit("beforeDestroy"),i.initialized=!1,i.detachEvents(),s.loop&&i.loopDestroy(),t&&(i.removeClasses(),r.removeAttr("style"),n.removeAttr("style"),l&&l.length&&l.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,a=i,Object.keys(a).forEach((function(e){try{a[e]=null}catch(e){}try{delete a[e]}catch(e){}}))),i.destroyed=!0),null},t.extendDefaults=function(e){S(F,e)},t.installModule=function(e){t.prototype.modules||(t.prototype.modules={});var a=e.name||Object.keys(t.prototype.modules).length+"_"+x();t.prototype.modules[a]=e},t.use=function(e){return Array.isArray(e)?(e.forEach((function(e){return t.installModule(e)})),t):(t.installModule(e),t)},a=t,s=[{key:"extendedDefaults",get:function(){return F}},{key:"defaults",get:function(){return Y}}],(i=null)&&e(a.prototype,i),s&&e(a,s),t}();Object.keys(V).forEach((function(e){Object.keys(V[e]).forEach((function(t){R.prototype[t]=V[e][t]}))})),R.use([L,I]);var W={update:function(e){var t=this,a=t.params,i=a.slidesPerView,s=a.slidesPerGroup,r=a.centeredSlides,n=t.params.virtual,l=n.addSlidesBefore,o=n.addSlidesAfter,d=t.virtual,p=d.from,u=d.to,c=d.slides,h=d.slidesGrid,v=d.renderSlide,f=d.offset;t.updateActiveIndex();var m,g,y,w=t.activeIndex||0;m=t.rtlTranslate?"right":t.isHorizontal()?"left":"top",r?(g=Math.floor(i/2)+s+o,y=Math.floor(i/2)+s+l):(g=i+(s-1)+o,y=s+l);var b=Math.max((w||0)-y,0),E=Math.min((w||0)+g,c.length-1),x=(t.slidesGrid[b]||0)-(t.slidesGrid[0]||0);function T(){t.updateSlides(),t.updateProgress(),t.updateSlidesClasses(),t.lazy&&t.params.lazy.enabled&&t.lazy.load()}if(S(t.virtual,{from:b,to:E,offset:x,slidesGrid:t.slidesGrid}),p===b&&u===E&&!e)return t.slidesGrid!==h&&x!==f&&t.slides.css(m,x+"px"),void t.updateProgress();if(t.params.virtual.renderExternal)return t.params.virtual.renderExternal.call(t,{offset:x,from:b,to:E,slides:function(){for(var e=[],t=b;t<=E;t+=1)e.push(c[t]);return e}()}),void(t.params.virtual.renderExternalUpdate&&T());var C=[],M=[];if(e)t.$wrapperEl.find("."+t.params.slideClass).remove();else for(var z=p;z<=u;z+=1)(z<b||z>E)&&t.$wrapperEl.find("."+t.params.slideClass+'[data-swiper-slide-index="'+z+'"]').remove();for(var P=0;P<c.length;P+=1)P>=b&&P<=E&&(void 0===u||e?M.push(P):(P>u&&M.push(P),P<p&&C.push(P)));M.forEach((function(e){t.$wrapperEl.append(v(c[e],e))})),C.sort((function(e,t){return t-e})).forEach((function(e){t.$wrapperEl.prepend(v(c[e],e))})),t.$wrapperEl.children(".swiper-slide").css(m,x+"px"),T()},renderSlide:function(e,t){var a=this,i=a.params.virtual;if(i.cache&&a.virtual.cache[t])return a.virtual.cache[t];var s=i.renderSlide?m(i.renderSlide.call(a,e,t)):m('<div class="'+a.params.slideClass+'" data-swiper-slide-index="'+t+'">'+e+"</div>");return s.attr("data-swiper-slide-index")||s.attr("data-swiper-slide-index",t),i.cache&&(a.virtual.cache[t]=s),s},appendSlide:function(e){var t=this;if("object"==typeof e&&"length"in e)for(var a=0;a<e.length;a+=1)e[a]&&t.virtual.slides.push(e[a]);else t.virtual.slides.push(e);t.virtual.update(!0)},prependSlide:function(e){var t=this,a=t.activeIndex,i=a+1,s=1;if(Array.isArray(e)){for(var r=0;r<e.length;r+=1)e[r]&&t.virtual.slides.unshift(e[r]);i=a+e.length,s=e.length}else t.virtual.slides.unshift(e);if(t.params.virtual.cache){var n=t.virtual.cache,l={};Object.keys(n).forEach((function(e){var t=n[e],a=t.attr("data-swiper-slide-index");a&&t.attr("data-swiper-slide-index",parseInt(a,10)+1),l[parseInt(e,10)+s]=t})),t.virtual.cache=l}t.virtual.update(!0),t.slideTo(i,0)},removeSlide:function(e){var t=this;if(null!=e){var a=t.activeIndex;if(Array.isArray(e))for(var i=e.length-1;i>=0;i-=1)t.virtual.slides.splice(e[i],1),t.params.virtual.cache&&delete t.virtual.cache[e[i]],e[i]<a&&(a-=1),a=Math.max(a,0);else t.virtual.slides.splice(e,1),t.params.virtual.cache&&delete t.virtual.cache[e],e<a&&(a-=1),a=Math.max(a,0);t.virtual.update(!0),t.slideTo(a,0)}},removeAllSlides:function(){var e=this;e.virtual.slides=[],e.params.virtual.cache&&(e.virtual.cache={}),e.virtual.update(!0),e.slideTo(0,0)}},q={name:"virtual",params:{virtual:{enabled:!1,slides:[],cache:!0,renderSlide:null,renderExternal:null,renderExternalUpdate:!0,addSlidesBefore:0,addSlidesAfter:0}},create:function(){M(this,{virtual:t({},W,{slides:this.params.virtual.slides,cache:{}})})},on:{beforeInit:function(e){if(e.params.virtual.enabled){e.classNames.push(e.params.containerModifierClass+"virtual");var t={watchSlidesProgress:!0};S(e.params,t),S(e.originalParams,t),e.params.initialSlide||e.virtual.update()}},setTranslate:function(e){e.params.virtual.enabled&&e.virtual.update()}}},j={handle:function(e){var t=this,a=l(),i=r(),s=t.rtlTranslate,n=e;n.originalEvent&&(n=n.originalEvent);var o=n.keyCode||n.charCode,d=t.params.keyboard.pageUpDown,p=d&&33===o,u=d&&34===o,c=37===o,h=39===o,v=38===o,f=40===o;if(!t.allowSlideNext&&(t.isHorizontal()&&h||t.isVertical()&&f||u))return!1;if(!t.allowSlidePrev&&(t.isHorizontal()&&c||t.isVertical()&&v||p))return!1;if(!(n.shiftKey||n.altKey||n.ctrlKey||n.metaKey||i.activeElement&&i.activeElement.nodeName&&("input"===i.activeElement.nodeName.toLowerCase()||"textarea"===i.activeElement.nodeName.toLowerCase()))){if(t.params.keyboard.onlyInViewport&&(p||u||c||h||v||f)){var m=!1;if(t.$el.parents("."+t.params.slideClass).length>0&&0===t.$el.parents("."+t.params.slideActiveClass).length)return;var g=a.innerWidth,y=a.innerHeight,w=t.$el.offset();s&&(w.left-=t.$el[0].scrollLeft);for(var b=[[w.left,w.top],[w.left+t.width,w.top],[w.left,w.top+t.height],[w.left+t.width,w.top+t.height]],E=0;E<b.length;E+=1){var x=b[E];if(x[0]>=0&&x[0]<=g&&x[1]>=0&&x[1]<=y){if(0===x[0]&&0===x[1])continue;m=!0}}if(!m)return}t.isHorizontal()?((p||u||c||h)&&(n.preventDefault?n.preventDefault():n.returnValue=!1),((u||h)&&!s||(p||c)&&s)&&t.slideNext(),((p||c)&&!s||(u||h)&&s)&&t.slidePrev()):((p||u||v||f)&&(n.preventDefault?n.preventDefault():n.returnValue=!1),(u||f)&&t.slideNext(),(p||v)&&t.slidePrev()),t.emit("keyPress",o)}},enable:function(){var e=this,t=r();e.keyboard.enabled||(m(t).on("keydown",e.keyboard.handle),e.keyboard.enabled=!0)},disable:function(){var e=this,t=r();e.keyboard.enabled&&(m(t).off("keydown",e.keyboard.handle),e.keyboard.enabled=!1)}},_={name:"keyboard",params:{keyboard:{enabled:!1,onlyInViewport:!0,pageUpDown:!0}},create:function(){M(this,{keyboard:t({enabled:!1},j)})},on:{init:function(e){e.params.keyboard.enabled&&e.keyboard.enable()},destroy:function(e){e.keyboard.enabled&&e.keyboard.disable()}}};var U={lastScrollTime:x(),lastEventBeforeSnap:void 0,recentWheelEvents:[],event:function(){return l().navigator.userAgent.indexOf("firefox")>-1?"DOMMouseScroll":function(){var e=r(),t="onwheel",a=t in e;if(!a){var i=e.createElement("div");i.setAttribute(t,"return;"),a="function"==typeof i.onwheel}return!a&&e.implementation&&e.implementation.hasFeature&&!0!==e.implementation.hasFeature("","")&&(a=e.implementation.hasFeature("Events.wheel","3.0")),a}()?"wheel":"mousewheel"},normalize:function(e){var t=0,a=0,i=0,s=0;return"detail"in e&&(a=e.detail),"wheelDelta"in e&&(a=-e.wheelDelta/120),"wheelDeltaY"in e&&(a=-e.wheelDeltaY/120),"wheelDeltaX"in e&&(t=-e.wheelDeltaX/120),"axis"in e&&e.axis===e.HORIZONTAL_AXIS&&(t=a,a=0),i=10*t,s=10*a,"deltaY"in e&&(s=e.deltaY),"deltaX"in e&&(i=e.deltaX),e.shiftKey&&!i&&(i=s,s=0),(i||s)&&e.deltaMode&&(1===e.deltaMode?(i*=40,s*=40):(i*=800,s*=800)),i&&!t&&(t=i<1?-1:1),s&&!a&&(a=s<1?-1:1),{spinX:t,spinY:a,pixelX:i,pixelY:s}},handleMouseEnter:function(){this.mouseEntered=!0},handleMouseLeave:function(){this.mouseEntered=!1},handle:function(e){var t=e,a=this,i=a.params.mousewheel;a.params.cssMode&&t.preventDefault();var s=a.$el;if("container"!==a.params.mousewheel.eventsTarget&&(s=m(a.params.mousewheel.eventsTarget)),!a.mouseEntered&&!s[0].contains(t.target)&&!i.releaseOnEdges)return!0;t.originalEvent&&(t=t.originalEvent);var r=0,n=a.rtlTranslate?-1:1,l=U.normalize(t);if(i.forceToAxis)if(a.isHorizontal()){if(!(Math.abs(l.pixelX)>Math.abs(l.pixelY)))return!0;r=-l.pixelX*n}else{if(!(Math.abs(l.pixelY)>Math.abs(l.pixelX)))return!0;r=-l.pixelY}else r=Math.abs(l.pixelX)>Math.abs(l.pixelY)?-l.pixelX*n:-l.pixelY;if(0===r)return!0;i.invert&&(r=-r);var o=a.getTranslate()+r*i.sensitivity;if(o>=a.minTranslate()&&(o=a.minTranslate()),o<=a.maxTranslate()&&(o=a.maxTranslate()),(!!a.params.loop||!(o===a.minTranslate()||o===a.maxTranslate()))&&a.params.nested&&t.stopPropagation(),a.params.freeMode){var d={time:x(),delta:Math.abs(r),direction:Math.sign(r)},p=a.mousewheel.lastEventBeforeSnap,u=p&&d.time<p.time+500&&d.delta<=p.delta&&d.direction===p.direction;if(!u){a.mousewheel.lastEventBeforeSnap=void 0,a.params.loop&&a.loopFix();var c=a.getTranslate()+r*i.sensitivity,h=a.isBeginning,v=a.isEnd;if(c>=a.minTranslate()&&(c=a.minTranslate()),c<=a.maxTranslate()&&(c=a.maxTranslate()),a.setTransition(0),a.setTranslate(c),a.updateProgress(),a.updateActiveIndex(),a.updateSlidesClasses(),(!h&&a.isBeginning||!v&&a.isEnd)&&a.updateSlidesClasses(),a.params.freeModeSticky){clearTimeout(a.mousewheel.timeout),a.mousewheel.timeout=void 0;var f=a.mousewheel.recentWheelEvents;f.length>=15&&f.shift();var g=f.length?f[f.length-1]:void 0,y=f[0];if(f.push(d),g&&(d.delta>g.delta||d.direction!==g.direction))f.splice(0);else if(f.length>=15&&d.time-y.time<500&&y.delta-d.delta>=1&&d.delta<=6){var w=r>0?.8:.2;a.mousewheel.lastEventBeforeSnap=d,f.splice(0),a.mousewheel.timeout=E((function(){a.slideToClosest(a.params.speed,!0,void 0,w)}),0)}a.mousewheel.timeout||(a.mousewheel.timeout=E((function(){a.mousewheel.lastEventBeforeSnap=d,f.splice(0),a.slideToClosest(a.params.speed,!0,void 0,.5)}),500))}if(u||a.emit("scroll",t),a.params.autoplay&&a.params.autoplayDisableOnInteraction&&a.autoplay.stop(),c===a.minTranslate()||c===a.maxTranslate())return!0}}else{var b={time:x(),delta:Math.abs(r),direction:Math.sign(r),raw:e},T=a.mousewheel.recentWheelEvents;T.length>=2&&T.shift();var C=T.length?T[T.length-1]:void 0;if(T.push(b),C?(b.direction!==C.direction||b.delta>C.delta||b.time>C.time+150)&&a.mousewheel.animateSlider(b):a.mousewheel.animateSlider(b),a.mousewheel.releaseScroll(b))return!0}return t.preventDefault?t.preventDefault():t.returnValue=!1,!1},animateSlider:function(e){var t=this,a=l();return!(this.params.mousewheel.thresholdDelta&&e.delta<this.params.mousewheel.thresholdDelta)&&(!(this.params.mousewheel.thresholdTime&&x()-t.mousewheel.lastScrollTime<this.params.mousewheel.thresholdTime)&&(e.delta>=6&&x()-t.mousewheel.lastScrollTime<60||(e.direction<0?t.isEnd&&!t.params.loop||t.animating||(t.slideNext(),t.emit("scroll",e.raw)):t.isBeginning&&!t.params.loop||t.animating||(t.slidePrev(),t.emit("scroll",e.raw)),t.mousewheel.lastScrollTime=(new a.Date).getTime(),!1)))},releaseScroll:function(e){var t=this,a=t.params.mousewheel;if(e.direction<0){if(t.isEnd&&!t.params.loop&&a.releaseOnEdges)return!0}else if(t.isBeginning&&!t.params.loop&&a.releaseOnEdges)return!0;return!1},enable:function(){var e=this,t=U.event();if(e.params.cssMode)return e.wrapperEl.removeEventListener(t,e.mousewheel.handle),!0;if(!t)return!1;if(e.mousewheel.enabled)return!1;var a=e.$el;return"container"!==e.params.mousewheel.eventsTarget&&(a=m(e.params.mousewheel.eventsTarget)),a.on("mouseenter",e.mousewheel.handleMouseEnter),a.on("mouseleave",e.mousewheel.handleMouseLeave),a.on(t,e.mousewheel.handle),e.mousewheel.enabled=!0,!0},disable:function(){var e=this,t=U.event();if(e.params.cssMode)return e.wrapperEl.addEventListener(t,e.mousewheel.handle),!0;if(!t)return!1;if(!e.mousewheel.enabled)return!1;var a=e.$el;return"container"!==e.params.mousewheel.eventsTarget&&(a=m(e.params.mousewheel.eventsTarget)),a.off(t,e.mousewheel.handle),e.mousewheel.enabled=!1,!0}},K={update:function(){var e=this,t=e.params.navigation;if(!e.params.loop){var a=e.navigation,i=a.$nextEl,s=a.$prevEl;s&&s.length>0&&(e.isBeginning?s.addClass(t.disabledClass):s.removeClass(t.disabledClass),s[e.params.watchOverflow&&e.isLocked?"addClass":"removeClass"](t.lockClass)),i&&i.length>0&&(e.isEnd?i.addClass(t.disabledClass):i.removeClass(t.disabledClass),i[e.params.watchOverflow&&e.isLocked?"addClass":"removeClass"](t.lockClass))}},onPrevClick:function(e){var t=this;e.preventDefault(),t.isBeginning&&!t.params.loop||t.slidePrev()},onNextClick:function(e){var t=this;e.preventDefault(),t.isEnd&&!t.params.loop||t.slideNext()},init:function(){var e,t,a=this,i=a.params.navigation;(i.nextEl||i.prevEl)&&(i.nextEl&&(e=m(i.nextEl),a.params.uniqueNavElements&&"string"==typeof i.nextEl&&e.length>1&&1===a.$el.find(i.nextEl).length&&(e=a.$el.find(i.nextEl))),i.prevEl&&(t=m(i.prevEl),a.params.uniqueNavElements&&"string"==typeof i.prevEl&&t.length>1&&1===a.$el.find(i.prevEl).length&&(t=a.$el.find(i.prevEl))),e&&e.length>0&&e.on("click",a.navigation.onNextClick),t&&t.length>0&&t.on("click",a.navigation.onPrevClick),S(a.navigation,{$nextEl:e,nextEl:e&&e[0],$prevEl:t,prevEl:t&&t[0]}))},destroy:function(){var e=this,t=e.navigation,a=t.$nextEl,i=t.$prevEl;a&&a.length&&(a.off("click",e.navigation.onNextClick),a.removeClass(e.params.navigation.disabledClass)),i&&i.length&&(i.off("click",e.navigation.onPrevClick),i.removeClass(e.params.navigation.disabledClass))}},Z={update:function(){var e=this,t=e.rtl,a=e.params.pagination;if(a.el&&e.pagination.el&&e.pagination.$el&&0!==e.pagination.$el.length){var i,s=e.virtual&&e.params.virtual.enabled?e.virtual.slides.length:e.slides.length,r=e.pagination.$el,n=e.params.loop?Math.ceil((s-2*e.loopedSlides)/e.params.slidesPerGroup):e.snapGrid.length;if(e.params.loop?((i=Math.ceil((e.activeIndex-e.loopedSlides)/e.params.slidesPerGroup))>s-1-2*e.loopedSlides&&(i-=s-2*e.loopedSlides),i>n-1&&(i-=n),i<0&&"bullets"!==e.params.paginationType&&(i=n+i)):i=void 0!==e.snapIndex?e.snapIndex:e.activeIndex||0,"bullets"===a.type&&e.pagination.bullets&&e.pagination.bullets.length>0){var l,o,d,p=e.pagination.bullets;if(a.dynamicBullets&&(e.pagination.bulletSize=p.eq(0)[e.isHorizontal()?"outerWidth":"outerHeight"](!0),r.css(e.isHorizontal()?"width":"height",e.pagination.bulletSize*(a.dynamicMainBullets+4)+"px"),a.dynamicMainBullets>1&&void 0!==e.previousIndex&&(e.pagination.dynamicBulletIndex+=i-e.previousIndex,e.pagination.dynamicBulletIndex>a.dynamicMainBullets-1?e.pagination.dynamicBulletIndex=a.dynamicMainBullets-1:e.pagination.dynamicBulletIndex<0&&(e.pagination.dynamicBulletIndex=0)),l=i-e.pagination.dynamicBulletIndex,d=((o=l+(Math.min(p.length,a.dynamicMainBullets)-1))+l)/2),p.removeClass(a.bulletActiveClass+" "+a.bulletActiveClass+"-next "+a.bulletActiveClass+"-next-next "+a.bulletActiveClass+"-prev "+a.bulletActiveClass+"-prev-prev "+a.bulletActiveClass+"-main"),r.length>1)p.each((function(e){var t=m(e),s=t.index();s===i&&t.addClass(a.bulletActiveClass),a.dynamicBullets&&(s>=l&&s<=o&&t.addClass(a.bulletActiveClass+"-main"),s===l&&t.prev().addClass(a.bulletActiveClass+"-prev").prev().addClass(a.bulletActiveClass+"-prev-prev"),s===o&&t.next().addClass(a.bulletActiveClass+"-next").next().addClass(a.bulletActiveClass+"-next-next"))}));else{var u=p.eq(i),c=u.index();if(u.addClass(a.bulletActiveClass),a.dynamicBullets){for(var h=p.eq(l),v=p.eq(o),f=l;f<=o;f+=1)p.eq(f).addClass(a.bulletActiveClass+"-main");if(e.params.loop)if(c>=p.length-a.dynamicMainBullets){for(var g=a.dynamicMainBullets;g>=0;g-=1)p.eq(p.length-g).addClass(a.bulletActiveClass+"-main");p.eq(p.length-a.dynamicMainBullets-1).addClass(a.bulletActiveClass+"-prev")}else h.prev().addClass(a.bulletActiveClass+"-prev").prev().addClass(a.bulletActiveClass+"-prev-prev"),v.next().addClass(a.bulletActiveClass+"-next").next().addClass(a.bulletActiveClass+"-next-next");else h.prev().addClass(a.bulletActiveClass+"-prev").prev().addClass(a.bulletActiveClass+"-prev-prev"),v.next().addClass(a.bulletActiveClass+"-next").next().addClass(a.bulletActiveClass+"-next-next")}}if(a.dynamicBullets){var y=Math.min(p.length,a.dynamicMainBullets+4),w=(e.pagination.bulletSize*y-e.pagination.bulletSize)/2-d*e.pagination.bulletSize,b=t?"right":"left";p.css(e.isHorizontal()?b:"top",w+"px")}}if("fraction"===a.type&&(r.find("."+a.currentClass).text(a.formatFractionCurrent(i+1)),r.find("."+a.totalClass).text(a.formatFractionTotal(n))),"progressbar"===a.type){var E;E=a.progressbarOpposite?e.isHorizontal()?"vertical":"horizontal":e.isHorizontal()?"horizontal":"vertical";var x=(i+1)/n,T=1,C=1;"horizontal"===E?T=x:C=x,r.find("."+a.progressbarFillClass).transform("translate3d(0,0,0) scaleX("+T+") scaleY("+C+")").transition(e.params.speed)}"custom"===a.type&&a.renderCustom?(r.html(a.renderCustom(e,i+1,n)),e.emit("paginationRender",r[0])):e.emit("paginationUpdate",r[0]),r[e.params.watchOverflow&&e.isLocked?"addClass":"removeClass"](a.lockClass)}},render:function(){var e=this,t=e.params.pagination;if(t.el&&e.pagination.el&&e.pagination.$el&&0!==e.pagination.$el.length){var a=e.virtual&&e.params.virtual.enabled?e.virtual.slides.length:e.slides.length,i=e.pagination.$el,s="";if("bullets"===t.type){var r=e.params.loop?Math.ceil((a-2*e.loopedSlides)/e.params.slidesPerGroup):e.snapGrid.length;e.params.freeMode&&!e.params.loop&&r>a&&(r=a);for(var n=0;n<r;n+=1)t.renderBullet?s+=t.renderBullet.call(e,n,t.bulletClass):s+="<"+t.bulletElement+' class="'+t.bulletClass+'"></'+t.bulletElement+">";i.html(s),e.pagination.bullets=i.find("."+t.bulletClass.replace(/ /g,"."))}"fraction"===t.type&&(s=t.renderFraction?t.renderFraction.call(e,t.currentClass,t.totalClass):'<span class="'+t.currentClass+'"></span> / <span class="'+t.totalClass+'"></span>',i.html(s)),"progressbar"===t.type&&(s=t.renderProgressbar?t.renderProgressbar.call(e,t.progressbarFillClass):'<span class="'+t.progressbarFillClass+'"></span>',i.html(s)),"custom"!==t.type&&e.emit("paginationRender",e.pagination.$el[0])}},init:function(){var e=this,t=e.params.pagination;if(t.el){var a=m(t.el);0!==a.length&&(e.params.uniqueNavElements&&"string"==typeof t.el&&a.length>1&&(a=e.$el.find(t.el)),"bullets"===t.type&&t.clickable&&a.addClass(t.clickableClass),a.addClass(t.modifierClass+t.type),"bullets"===t.type&&t.dynamicBullets&&(a.addClass(""+t.modifierClass+t.type+"-dynamic"),e.pagination.dynamicBulletIndex=0,t.dynamicMainBullets<1&&(t.dynamicMainBullets=1)),"progressbar"===t.type&&t.progressbarOpposite&&a.addClass(t.progressbarOppositeClass),t.clickable&&a.on("click","."+t.bulletClass.replace(/ /g,"."),(function(t){t.preventDefault();var a=m(this).index()*e.params.slidesPerGroup;e.params.loop&&(a+=e.loopedSlides),e.slideTo(a)})),S(e.pagination,{$el:a,el:a[0]}))}},destroy:function(){var e=this,t=e.params.pagination;if(t.el&&e.pagination.el&&e.pagination.$el&&0!==e.pagination.$el.length){var a=e.pagination.$el;a.removeClass(t.hiddenClass),a.removeClass(t.modifierClass+t.type),e.pagination.bullets&&e.pagination.bullets.removeClass(t.bulletActiveClass),t.clickable&&a.off("click","."+t.bulletClass.replace(/ /g,"."))}}},J={setTranslate:function(){var e=this;if(e.params.scrollbar.el&&e.scrollbar.el){var t=e.scrollbar,a=e.rtlTranslate,i=e.progress,s=t.dragSize,r=t.trackSize,n=t.$dragEl,l=t.$el,o=e.params.scrollbar,d=s,p=(r-s)*i;a?(p=-p)>0?(d=s-p,p=0):-p+s>r&&(d=r+p):p<0?(d=s+p,p=0):p+s>r&&(d=r-p),e.isHorizontal()?(n.transform("translate3d("+p+"px, 0, 0)"),n[0].style.width=d+"px"):(n.transform("translate3d(0px, "+p+"px, 0)"),n[0].style.height=d+"px"),o.hide&&(clearTimeout(e.scrollbar.timeout),l[0].style.opacity=1,e.scrollbar.timeout=setTimeout((function(){l[0].style.opacity=0,l.transition(400)}),1e3))}},setTransition:function(e){var t=this;t.params.scrollbar.el&&t.scrollbar.el&&t.scrollbar.$dragEl.transition(e)},updateSize:function(){var e=this;if(e.params.scrollbar.el&&e.scrollbar.el){var t=e.scrollbar,a=t.$dragEl,i=t.$el;a[0].style.width="",a[0].style.height="";var s,r=e.isHorizontal()?i[0].offsetWidth:i[0].offsetHeight,n=e.size/e.virtualSize,l=n*(r/e.size);s="auto"===e.params.scrollbar.dragSize?r*n:parseInt(e.params.scrollbar.dragSize,10),e.isHorizontal()?a[0].style.width=s+"px":a[0].style.height=s+"px",i[0].style.display=n>=1?"none":"",e.params.scrollbar.hide&&(i[0].style.opacity=0),S(t,{trackSize:r,divider:n,moveDivider:l,dragSize:s}),t.$el[e.params.watchOverflow&&e.isLocked?"addClass":"removeClass"](e.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,a=this,i=a.scrollbar,s=a.rtlTranslate,r=i.$el,n=i.dragSize,l=i.trackSize,o=i.dragStartPos;t=(i.getPointerPosition(e)-r.offset()[a.isHorizontal()?"left":"top"]-(null!==o?o:n/2))/(l-n),t=Math.max(Math.min(t,1),0),s&&(t=1-t);var d=a.minTranslate()+(a.maxTranslate()-a.minTranslate())*t;a.updateProgress(d),a.setTranslate(d),a.updateActiveIndex(),a.updateSlidesClasses()},onDragStart:function(e){var t=this,a=t.params.scrollbar,i=t.scrollbar,s=t.$wrapperEl,r=i.$el,n=i.$dragEl;t.scrollbar.isTouched=!0,t.scrollbar.dragStartPos=e.target===n[0]||e.target===n?i.getPointerPosition(e)-e.target.getBoundingClientRect()[t.isHorizontal()?"left":"top"]:null,e.preventDefault(),e.stopPropagation(),s.transition(100),n.transition(100),i.setDragPosition(e),clearTimeout(t.scrollbar.dragTimeout),r.transition(0),a.hide&&r.css("opacity",1),t.params.cssMode&&t.$wrapperEl.css("scroll-snap-type","none"),t.emit("scrollbarDragStart",e)},onDragMove:function(e){var t=this,a=t.scrollbar,i=t.$wrapperEl,s=a.$el,r=a.$dragEl;t.scrollbar.isTouched&&(e.preventDefault?e.preventDefault():e.returnValue=!1,a.setDragPosition(e),i.transition(0),s.transition(0),r.transition(0),t.emit("scrollbarDragMove",e))},onDragEnd:function(e){var t=this,a=t.params.scrollbar,i=t.scrollbar,s=t.$wrapperEl,r=i.$el;t.scrollbar.isTouched&&(t.scrollbar.isTouched=!1,t.params.cssMode&&(t.$wrapperEl.css("scroll-snap-type",""),s.transition("")),a.hide&&(clearTimeout(t.scrollbar.dragTimeout),t.scrollbar.dragTimeout=E((function(){r.css("opacity",0),r.transition(400)}),1e3)),t.emit("scrollbarDragEnd",e),a.snapOnRelease&&t.slideToClosest())},enableDraggable:function(){var e=this;if(e.params.scrollbar.el){var t=r(),a=e.scrollbar,i=e.touchEventsTouch,s=e.touchEventsDesktop,n=e.params,l=e.support,o=a.$el[0],d=!(!l.passiveListener||!n.passiveListeners)&&{passive:!1,capture:!1},p=!(!l.passiveListener||!n.passiveListeners)&&{passive:!0,capture:!1};o&&(l.touch?(o.addEventListener(i.start,e.scrollbar.onDragStart,d),o.addEventListener(i.move,e.scrollbar.onDragMove,d),o.addEventListener(i.end,e.scrollbar.onDragEnd,p)):(o.addEventListener(s.start,e.scrollbar.onDragStart,d),t.addEventListener(s.move,e.scrollbar.onDragMove,d),t.addEventListener(s.end,e.scrollbar.onDragEnd,p)))}},disableDraggable:function(){var e=this;if(e.params.scrollbar.el){var t=r(),a=e.scrollbar,i=e.touchEventsTouch,s=e.touchEventsDesktop,n=e.params,l=e.support,o=a.$el[0],d=!(!l.passiveListener||!n.passiveListeners)&&{passive:!1,capture:!1},p=!(!l.passiveListener||!n.passiveListeners)&&{passive:!0,capture:!1};o&&(l.touch?(o.removeEventListener(i.start,e.scrollbar.onDragStart,d),o.removeEventListener(i.move,e.scrollbar.onDragMove,d),o.removeEventListener(i.end,e.scrollbar.onDragEnd,p)):(o.removeEventListener(s.start,e.scrollbar.onDragStart,d),t.removeEventListener(s.move,e.scrollbar.onDragMove,d),t.removeEventListener(s.end,e.scrollbar.onDragEnd,p)))}},init:function(){var e=this;if(e.params.scrollbar.el){var t=e.scrollbar,a=e.$el,i=e.params.scrollbar,s=m(i.el);e.params.uniqueNavElements&&"string"==typeof i.el&&s.length>1&&1===a.find(i.el).length&&(s=a.find(i.el));var r=s.find("."+e.params.scrollbar.dragClass);0===r.length&&(r=m('<div class="'+e.params.scrollbar.dragClass+'"></div>'),s.append(r)),S(t,{$el:s,el:s[0],$dragEl:r,dragEl:r[0]}),i.draggable&&t.enableDraggable()}},destroy:function(){this.scrollbar.disableDraggable()}},Q={setTransform:function(e,t){var a=this.rtl,i=m(e),s=a?-1:1,r=i.attr("data-swiper-parallax")||"0",n=i.attr("data-swiper-parallax-x"),l=i.attr("data-swiper-parallax-y"),o=i.attr("data-swiper-parallax-scale"),d=i.attr("data-swiper-parallax-opacity");if(n||l?(n=n||"0",l=l||"0"):this.isHorizontal()?(n=r,l="0"):(l=r,n="0"),n=n.indexOf("%")>=0?parseInt(n,10)*t*s+"%":n*t*s+"px",l=l.indexOf("%")>=0?parseInt(l,10)*t+"%":l*t+"px",null!=d){var p=d-(d-1)*(1-Math.abs(t));i[0].style.opacity=p}if(null==o)i.transform("translate3d("+n+", "+l+", 0px)");else{var u=o-(o-1)*(1-Math.abs(t));i.transform("translate3d("+n+", "+l+", 0px) scale("+u+")")}},setTranslate:function(){var e=this,t=e.$el,a=e.slides,i=e.progress,s=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){e.parallax.setTransform(t,i)})),a.each((function(t,a){var r=t.progress;e.params.slidesPerGroup>1&&"auto"!==e.params.slidesPerView&&(r+=Math.ceil(a/2)-i*(s.length-1)),r=Math.min(Math.max(r,-1),1),m(t).find("[data-swiper-parallax], [data-swiper-parallax-x], [data-swiper-parallax-y], [data-swiper-parallax-opacity], [data-swiper-parallax-scale]").each((function(t){e.parallax.setTransform(t,r)}))}))},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){var a=m(t),i=parseInt(a.attr("data-swiper-parallax-duration"),10)||e;0===e&&(i=0),a.transition(i)}))}},ee={getDistanceBetweenTouches:function(e){if(e.targetTouches.length<2)return 1;var t=e.targetTouches[0].pageX,a=e.targetTouches[0].pageY,i=e.targetTouches[1].pageX,s=e.targetTouches[1].pageY;return Math.sqrt(Math.pow(i-t,2)+Math.pow(s-a,2))},onGestureStart:function(e){var t=this,a=t.support,i=t.params.zoom,s=t.zoom,r=s.gesture;if(s.fakeGestureTouched=!1,s.fakeGestureMoved=!1,!a.gestures){if("touchstart"!==e.type||"touchstart"===e.type&&e.targetTouches.length<2)return;s.fakeGestureTouched=!0,r.scaleStart=ee.getDistanceBetweenTouches(e)}r.$slideEl&&r.$slideEl.length||(r.$slideEl=m(e.target).closest("."+t.params.slideClass),0===r.$slideEl.length&&(r.$slideEl=t.slides.eq(t.activeIndex)),r.$imageEl=r.$slideEl.find("img, svg, canvas, picture, .swiper-zoom-target"),r.$imageWrapEl=r.$imageEl.parent("."+i.containerClass),r.maxRatio=r.$imageWrapEl.attr("data-swiper-zoom")||i.maxRatio,0!==r.$imageWrapEl.length)?(r.$imageEl&&r.$imageEl.transition(0),t.zoom.isScaling=!0):r.$imageEl=void 0},onGestureChange:function(e){var t=this,a=t.support,i=t.params.zoom,s=t.zoom,r=s.gesture;if(!a.gestures){if("touchmove"!==e.type||"touchmove"===e.type&&e.targetTouches.length<2)return;s.fakeGestureMoved=!0,r.scaleMove=ee.getDistanceBetweenTouches(e)}r.$imageEl&&0!==r.$imageEl.length?(a.gestures?s.scale=e.scale*s.currentScale:s.scale=r.scaleMove/r.scaleStart*s.currentScale,s.scale>r.maxRatio&&(s.scale=r.maxRatio-1+Math.pow(s.scale-r.maxRatio+1,.5)),s.scale<i.minRatio&&(s.scale=i.minRatio+1-Math.pow(i.minRatio-s.scale+1,.5)),r.$imageEl.transform("translate3d(0,0,0) scale("+s.scale+")")):"gesturechange"===e.type&&s.onGestureStart(e)},onGestureEnd:function(e){var t=this,a=t.device,i=t.support,s=t.params.zoom,r=t.zoom,n=r.gesture;if(!i.gestures){if(!r.fakeGestureTouched||!r.fakeGestureMoved)return;if("touchend"!==e.type||"touchend"===e.type&&e.changedTouches.length<2&&!a.android)return;r.fakeGestureTouched=!1,r.fakeGestureMoved=!1}n.$imageEl&&0!==n.$imageEl.length&&(r.scale=Math.max(Math.min(r.scale,n.maxRatio),s.minRatio),n.$imageEl.transition(t.params.speed).transform("translate3d(0,0,0) scale("+r.scale+")"),r.currentScale=r.scale,r.isScaling=!1,1===r.scale&&(n.$slideEl=void 0))},onTouchStart:function(e){var t=this.device,a=this.zoom,i=a.gesture,s=a.image;i.$imageEl&&0!==i.$imageEl.length&&(s.isTouched||(t.android&&e.cancelable&&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,a=t.zoom,i=a.gesture,s=a.image,r=a.velocity;if(i.$imageEl&&0!==i.$imageEl.length&&(t.allowClick=!1,s.isTouched&&i.$slideEl)){s.isMoved||(s.width=i.$imageEl[0].offsetWidth,s.height=i.$imageEl[0].offsetHeight,s.startX=T(i.$imageWrapEl[0],"x")||0,s.startY=T(i.$imageWrapEl[0],"y")||0,i.slideWidth=i.$slideEl[0].offsetWidth,i.slideHeight=i.$slideEl[0].offsetHeight,i.$imageWrapEl.transition(0),t.rtl&&(s.startX=-s.startX,s.startY=-s.startY));var n=s.width*a.scale,l=s.height*a.scale;if(!(n<i.slideWidth&&l<i.slideHeight)){if(s.minX=Math.min(i.slideWidth/2-n/2,0),s.maxX=-s.minX,s.minY=Math.min(i.slideHeight/2-l/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&&!a.isScaling){if(t.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(!t.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.cancelable&&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)),r.prevPositionX||(r.prevPositionX=s.touchesCurrent.x),r.prevPositionY||(r.prevPositionY=s.touchesCurrent.y),r.prevTime||(r.prevTime=Date.now()),r.x=(s.touchesCurrent.x-r.prevPositionX)/(Date.now()-r.prevTime)/2,r.y=(s.touchesCurrent.y-r.prevPositionY)/(Date.now()-r.prevTime)/2,Math.abs(s.touchesCurrent.x-r.prevPositionX)<2&&(r.x=0),Math.abs(s.touchesCurrent.y-r.prevPositionY)<2&&(r.y=0),r.prevPositionX=s.touchesCurrent.x,r.prevPositionY=s.touchesCurrent.y,r.prevTime=Date.now(),i.$imageWrapEl.transform("translate3d("+s.currentX+"px, "+s.currentY+"px,0)")}}},onTouchEnd:function(){var e=this.zoom,t=e.gesture,a=e.image,i=e.velocity;if(t.$imageEl&&0!==t.$imageEl.length){if(!a.isTouched||!a.isMoved)return a.isTouched=!1,void(a.isMoved=!1);a.isTouched=!1,a.isMoved=!1;var s=300,r=300,n=i.x*s,l=a.currentX+n,o=i.y*r,d=a.currentY+o;0!==i.x&&(s=Math.abs((l-a.currentX)/i.x)),0!==i.y&&(r=Math.abs((d-a.currentY)/i.y));var p=Math.max(s,r);a.currentX=l,a.currentY=d;var u=a.width*e.scale,c=a.height*e.scale;a.minX=Math.min(t.slideWidth/2-u/2,0),a.maxX=-a.minX,a.minY=Math.min(t.slideHeight/2-c/2,0),a.maxY=-a.minY,a.currentX=Math.max(Math.min(a.currentX,a.maxX),a.minX),a.currentY=Math.max(Math.min(a.currentY,a.maxY),a.minY),t.$imageWrapEl.transition(p).transform("translate3d("+a.currentX+"px, "+a.currentY+"px,0)")}},onTransitionEnd:function(){var e=this,t=e.zoom,a=t.gesture;a.$slideEl&&e.previousIndex!==e.activeIndex&&(a.$imageEl&&a.$imageEl.transform("translate3d(0,0,0) scale(1)"),a.$imageWrapEl&&a.$imageWrapEl.transform("translate3d(0,0,0)"),t.scale=1,t.currentScale=1,a.$slideEl=void 0,a.$imageEl=void 0,a.$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,a,i,s,r,n,o,d,p,u,c,h,v,f,m,g,y=this,w=l(),b=y.zoom,E=y.params.zoom,x=b.gesture,T=b.image;(x.$slideEl||(y.params.virtual&&y.params.virtual.enabled&&y.virtual?x.$slideEl=y.$wrapperEl.children("."+y.params.slideActiveClass):x.$slideEl=y.slides.eq(y.activeIndex),x.$imageEl=x.$slideEl.find("img, svg, canvas, picture, .swiper-zoom-target"),x.$imageWrapEl=x.$imageEl.parent("."+E.containerClass)),x.$imageEl&&0!==x.$imageEl.length)&&(x.$slideEl.addClass(""+E.zoomedSlideClass),void 0===T.touchesStart.x&&e?(t="touchend"===e.type?e.changedTouches[0].pageX:e.pageX,a="touchend"===e.type?e.changedTouches[0].pageY:e.pageY):(t=T.touchesStart.x,a=T.touchesStart.y),b.scale=x.$imageWrapEl.attr("data-swiper-zoom")||E.maxRatio,b.currentScale=x.$imageWrapEl.attr("data-swiper-zoom")||E.maxRatio,e?(m=x.$slideEl[0].offsetWidth,g=x.$slideEl[0].offsetHeight,i=x.$slideEl.offset().left+w.scrollX+m/2-t,s=x.$slideEl.offset().top+w.scrollY+g/2-a,o=x.$imageEl[0].offsetWidth,d=x.$imageEl[0].offsetHeight,p=o*b.scale,u=d*b.scale,v=-(c=Math.min(m/2-p/2,0)),f=-(h=Math.min(g/2-u/2,0)),(r=i*b.scale)<c&&(r=c),r>v&&(r=v),(n=s*b.scale)<h&&(n=h),n>f&&(n=f)):(r=0,n=0),x.$imageWrapEl.transition(300).transform("translate3d("+r+"px, "+n+"px,0)"),x.$imageEl.transition(300).transform("translate3d(0,0,0) scale("+b.scale+")"))},out:function(){var e=this,t=e.zoom,a=e.params.zoom,i=t.gesture;i.$slideEl||(e.params.virtual&&e.params.virtual.enabled&&e.virtual?i.$slideEl=e.$wrapperEl.children("."+e.params.slideActiveClass):i.$slideEl=e.slides.eq(e.activeIndex),i.$imageEl=i.$slideEl.find("img, svg, canvas, picture, .swiper-zoom-target"),i.$imageWrapEl=i.$imageEl.parent("."+a.containerClass)),i.$imageEl&&0!==i.$imageEl.length&&(t.scale=1,t.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(""+a.zoomedSlideClass),i.$slideEl=void 0)},toggleGestures:function(e){var t=this,a=t.zoom,i=a.slideSelector,s=a.passiveListener;t.$wrapperEl[e]("gesturestart",i,a.onGestureStart,s),t.$wrapperEl[e]("gesturechange",i,a.onGestureChange,s),t.$wrapperEl[e]("gestureend",i,a.onGestureEnd,s)},enableGestures:function(){this.zoom.gesturesEnabled||(this.zoom.gesturesEnabled=!0,this.zoom.toggleGestures("on"))},disableGestures:function(){this.zoom.gesturesEnabled&&(this.zoom.gesturesEnabled=!1,this.zoom.toggleGestures("off"))},enable:function(){var e=this,t=e.support,a=e.zoom;if(!a.enabled){a.enabled=!0;var i=!("touchstart"!==e.touchEvents.start||!t.passiveListener||!e.params.passiveListeners)&&{passive:!0,capture:!1},s=!t.passiveListener||{passive:!1,capture:!0},r="."+e.params.slideClass;e.zoom.passiveListener=i,e.zoom.slideSelector=r,t.gestures?(e.$wrapperEl.on(e.touchEvents.start,e.zoom.enableGestures,i),e.$wrapperEl.on(e.touchEvents.end,e.zoom.disableGestures,i)):"touchstart"===e.touchEvents.start&&(e.$wrapperEl.on(e.touchEvents.start,r,a.onGestureStart,i),e.$wrapperEl.on(e.touchEvents.move,r,a.onGestureChange,s),e.$wrapperEl.on(e.touchEvents.end,r,a.onGestureEnd,i),e.touchEvents.cancel&&e.$wrapperEl.on(e.touchEvents.cancel,r,a.onGestureEnd,i)),e.$wrapperEl.on(e.touchEvents.move,"."+e.params.zoom.containerClass,a.onTouchMove,s)}},disable:function(){var e=this,t=e.zoom;if(t.enabled){var a=e.support;e.zoom.enabled=!1;var i=!("touchstart"!==e.touchEvents.start||!a.passiveListener||!e.params.passiveListeners)&&{passive:!0,capture:!1},s=!a.passiveListener||{passive:!1,capture:!0},r="."+e.params.slideClass;a.gestures?(e.$wrapperEl.off(e.touchEvents.start,e.zoom.enableGestures,i),e.$wrapperEl.off(e.touchEvents.end,e.zoom.disableGestures,i)):"touchstart"===e.touchEvents.start&&(e.$wrapperEl.off(e.touchEvents.start,r,t.onGestureStart,i),e.$wrapperEl.off(e.touchEvents.move,r,t.onGestureChange,s),e.$wrapperEl.off(e.touchEvents.end,r,t.onGestureEnd,i),e.touchEvents.cancel&&e.$wrapperEl.off(e.touchEvents.cancel,r,t.onGestureEnd,i)),e.$wrapperEl.off(e.touchEvents.move,"."+e.params.zoom.containerClass,t.onTouchMove,s)}}},te={loadInSlide:function(e,t){void 0===t&&(t=!0);var a=this,i=a.params.lazy;if(void 0!==e&&0!==a.slides.length){var s=a.virtual&&a.params.virtual.enabled?a.$wrapperEl.children("."+a.params.slideClass+'[data-swiper-slide-index="'+e+'"]'):a.slides.eq(e),r=s.find("."+i.elementClass+":not(."+i.loadedClass+"):not(."+i.loadingClass+")");!s.hasClass(i.elementClass)||s.hasClass(i.loadedClass)||s.hasClass(i.loadingClass)||r.push(s[0]),0!==r.length&&r.each((function(e){var r=m(e);r.addClass(i.loadingClass);var n=r.attr("data-background"),l=r.attr("data-src"),o=r.attr("data-srcset"),d=r.attr("data-sizes"),p=r.parent("picture");a.loadImage(r[0],l||n,o,d,!1,(function(){if(null!=a&&a&&(!a||a.params)&&!a.destroyed){if(n?(r.css("background-image",'url("'+n+'")'),r.removeAttr("data-background")):(o&&(r.attr("srcset",o),r.removeAttr("data-srcset")),d&&(r.attr("sizes",d),r.removeAttr("data-sizes")),p.length&&p.children("source").each((function(e){var t=m(e);t.attr("data-srcset")&&(t.attr("srcset",t.attr("data-srcset")),t.removeAttr("data-srcset"))})),l&&(r.attr("src",l),r.removeAttr("data-src"))),r.addClass(i.loadedClass).removeClass(i.loadingClass),s.find("."+i.preloaderClass).remove(),a.params.loop&&t){var e=s.attr("data-swiper-slide-index");if(s.hasClass(a.params.slideDuplicateClass)){var u=a.$wrapperEl.children('[data-swiper-slide-index="'+e+'"]:not(.'+a.params.slideDuplicateClass+")");a.lazy.loadInSlide(u.index(),!1)}else{var c=a.$wrapperEl.children("."+a.params.slideDuplicateClass+'[data-swiper-slide-index="'+e+'"]');a.lazy.loadInSlide(c.index(),!1)}}a.emit("lazyImageReady",s[0],r[0]),a.params.autoHeight&&a.updateAutoHeight()}})),a.emit("lazyImageLoad",s[0],r[0])}))}},load:function(){var e=this,t=e.$wrapperEl,a=e.params,i=e.slides,s=e.activeIndex,r=e.virtual&&a.virtual.enabled,n=a.lazy,l=a.slidesPerView;function o(e){if(r){if(t.children("."+a.slideClass+'[data-swiper-slide-index="'+e+'"]').length)return!0}else if(i[e])return!0;return!1}function d(e){return r?m(e).attr("data-swiper-slide-index"):m(e).index()}if("auto"===l&&(l=0),e.lazy.initialImageLoaded||(e.lazy.initialImageLoaded=!0),e.params.watchSlidesVisibility)t.children("."+a.slideVisibleClass).each((function(t){var a=r?m(t).attr("data-swiper-slide-index"):m(t).index();e.lazy.loadInSlide(a)}));else if(l>1)for(var p=s;p<s+l;p+=1)o(p)&&e.lazy.loadInSlide(p);else e.lazy.loadInSlide(s);if(n.loadPrevNext)if(l>1||n.loadPrevNextAmount&&n.loadPrevNextAmount>1){for(var u=n.loadPrevNextAmount,c=l,h=Math.min(s+c+Math.max(u,c),i.length),v=Math.max(s-Math.max(c,u),0),f=s+l;f<h;f+=1)o(f)&&e.lazy.loadInSlide(f);for(var g=v;g<s;g+=1)o(g)&&e.lazy.loadInSlide(g)}else{var y=t.children("."+a.slideNextClass);y.length>0&&e.lazy.loadInSlide(d(y));var w=t.children("."+a.slidePrevClass);w.length>0&&e.lazy.loadInSlide(d(w))}},checkInViewOnLoad:function(){var e=l(),t=this;if(t&&!t.destroyed){var a=t.params.lazy.scrollingElement?m(t.params.lazy.scrollingElement):m(e),i=a[0]===e,s=i?e.innerWidth:a[0].offsetWidth,r=i?e.innerHeight:a[0].offsetHeight,n=t.$el.offset(),o=!1;t.rtlTranslate&&(n.left-=t.$el[0].scrollLeft);for(var d=[[n.left,n.top],[n.left+t.width,n.top],[n.left,n.top+t.height],[n.left+t.width,n.top+t.height]],p=0;p<d.length;p+=1){var u=d[p];if(u[0]>=0&&u[0]<=s&&u[1]>=0&&u[1]<=r){if(0===u[0]&&0===u[1])continue;o=!0}}o?(t.lazy.load(),a.off("scroll",t.lazy.checkInViewOnLoad)):t.lazy.scrollHandlerAttached||(t.lazy.scrollHandlerAttached=!0,a.on("scroll",t.lazy.checkInViewOnLoad))}}},ae={LinearSpline:function(e,t){var a,i,s,r,n,l=function(e,t){for(i=-1,a=e.length;a-i>1;)e[s=a+i>>1]<=t?i=s:a=s;return a};return this.x=e,this.y=t,this.lastIndex=e.length-1,this.interpolate=function(e){return e?(n=l(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){var t=this;t.controller.spline||(t.controller.spline=t.params.loop?new ae.LinearSpline(t.slidesGrid,e.slidesGrid):new ae.LinearSpline(t.snapGrid,e.snapGrid))},setTranslate:function(e,t){var a,i,s=this,r=s.controller.control,n=s.constructor;function l(e){var t=s.rtlTranslate?-s.translate:s.translate;"slide"===s.params.controller.by&&(s.controller.getInterpolateFunction(e),i=-s.controller.spline.interpolate(-t)),i&&"container"!==s.params.controller.by||(a=(e.maxTranslate()-e.minTranslate())/(s.maxTranslate()-s.minTranslate()),i=(t-s.minTranslate())*a+e.minTranslate()),s.params.controller.inverse&&(i=e.maxTranslate()-i),e.updateProgress(i),e.setTranslate(i,s),e.updateActiveIndex(),e.updateSlidesClasses()}if(Array.isArray(r))for(var o=0;o<r.length;o+=1)r[o]!==t&&r[o]instanceof n&&l(r[o]);else r instanceof n&&t!==r&&l(r)},setTransition:function(e,t){var a,i=this,s=i.constructor,r=i.controller.control;function n(t){t.setTransition(e,i),0!==e&&(t.transitionStart(),t.params.autoHeight&&E((function(){t.updateAutoHeight()})),t.$wrapperEl.transitionEnd((function(){r&&(t.params.loop&&"slide"===i.params.controller.by&&t.loopFix(),t.transitionEnd())})))}if(Array.isArray(r))for(a=0;a<r.length;a+=1)r[a]!==t&&r[a]instanceof s&&n(r[a]);else r instanceof s&&t!==r&&n(r)}},ie={getRandomNumber:function(e){void 0===e&&(e=16);return"x".repeat(e).replace(/x/g,(function(){return Math.round(16*Math.random()).toString(16)}))},makeElFocusable:function(e){return e.attr("tabIndex","0"),e},makeElNotFocusable:function(e){return e.attr("tabIndex","-1"),e},addElRole:function(e,t){return e.attr("role",t),e},addElRoleDescription:function(e,t){return e.attr("aria-role-description",t),e},addElControls:function(e,t){return e.attr("aria-controls",t),e},addElLabel:function(e,t){return e.attr("aria-label",t),e},addElId:function(e,t){return e.attr("id",t),e},addElLive:function(e,t){return e.attr("aria-live",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,a=t.params.a11y;if(13===e.keyCode){var i=m(e.target);t.navigation&&t.navigation.$nextEl&&i.is(t.navigation.$nextEl)&&(t.isEnd&&!t.params.loop||t.slideNext(),t.isEnd?t.a11y.notify(a.lastSlideMessage):t.a11y.notify(a.nextSlideMessage)),t.navigation&&t.navigation.$prevEl&&i.is(t.navigation.$prevEl)&&(t.isBeginning&&!t.params.loop||t.slidePrev(),t.isBeginning?t.a11y.notify(a.firstSlideMessage):t.a11y.notify(a.prevSlideMessage)),t.pagination&&i.is("."+t.params.pagination.bulletClass.replace(/ /g,"."))&&i[0].click()}},notify:function(e){var t=this.a11y.liveRegion;0!==t.length&&(t.html(""),t.html(e))},updateNavigation:function(){var e=this;if(!e.params.loop&&e.navigation){var t=e.navigation,a=t.$nextEl,i=t.$prevEl;i&&i.length>0&&(e.isBeginning?(e.a11y.disableEl(i),e.a11y.makeElNotFocusable(i)):(e.a11y.enableEl(i),e.a11y.makeElFocusable(i))),a&&a.length>0&&(e.isEnd?(e.a11y.disableEl(a),e.a11y.makeElNotFocusable(a)):(e.a11y.enableEl(a),e.a11y.makeElFocusable(a)))}},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(a){var i=m(a);e.a11y.makeElFocusable(i),e.params.pagination.renderBullet||(e.a11y.addElRole(i,"button"),e.a11y.addElLabel(i,t.paginationBulletMessage.replace(/\{\{index\}\}/,i.index()+1)))}))},init:function(){var e=this,t=e.params.a11y;e.$el.append(e.a11y.liveRegion);var a=e.$el;t.containerRoleDescriptionMessage&&e.a11y.addElRoleDescription(a,t.containerRoleDescriptionMessage),t.containerMessage&&e.a11y.addElLabel(a,t.containerMessage);var i,s,r,n=e.$wrapperEl,l=n.attr("id")||"swiper-wrapper-"+e.a11y.getRandomNumber(16);e.a11y.addElId(n,l),i=e.params.autoplay&&e.params.autoplay.enabled?"off":"polite",e.a11y.addElLive(n,i),t.itemRoleDescriptionMessage&&e.a11y.addElRoleDescription(m(e.slides),t.itemRoleDescriptionMessage),e.a11y.addElRole(m(e.slides),"group"),e.slides.each((function(t){var a=m(t);e.a11y.addElLabel(a,a.index()+1+" / "+e.slides.length)})),e.navigation&&e.navigation.$nextEl&&(s=e.navigation.$nextEl),e.navigation&&e.navigation.$prevEl&&(r=e.navigation.$prevEl),s&&s.length&&(e.a11y.makeElFocusable(s),"BUTTON"!==s[0].tagName&&(e.a11y.addElRole(s,"button"),s.on("keydown",e.a11y.onEnterKey)),e.a11y.addElLabel(s,t.nextSlideMessage),e.a11y.addElControls(s,l)),r&&r.length&&(e.a11y.makeElFocusable(r),"BUTTON"!==r[0].tagName&&(e.a11y.addElRole(r,"button"),r.on("keydown",e.a11y.onEnterKey)),e.a11y.addElLabel(r,t.prevSlideMessage),e.a11y.addElControls(r,l)),e.pagination&&e.params.pagination.clickable&&e.pagination.bullets&&e.pagination.bullets.length&&e.pagination.$el.on("keydown","."+e.params.pagination.bulletClass.replace(/ /g,"."),e.a11y.onEnterKey)},destroy:function(){var e,t,a=this;a.a11y.liveRegion&&a.a11y.liveRegion.length>0&&a.a11y.liveRegion.remove(),a.navigation&&a.navigation.$nextEl&&(e=a.navigation.$nextEl),a.navigation&&a.navigation.$prevEl&&(t=a.navigation.$prevEl),e&&e.off("keydown",a.a11y.onEnterKey),t&&t.off("keydown",a.a11y.onEnterKey),a.pagination&&a.params.pagination.clickable&&a.pagination.bullets&&a.pagination.bullets.length&&a.pagination.$el.off("keydown","."+a.params.pagination.bulletClass.replace(/ /g,"."),a.a11y.onEnterKey)}},se={init:function(){var e=this,t=l();if(e.params.history){if(!t.history||!t.history.pushState)return e.params.history.enabled=!1,void(e.params.hashNavigation.enabled=!0);var a=e.history;a.initialized=!0,a.paths=se.getPathValues(e.params.url),(a.paths.key||a.paths.value)&&(a.scrollToSlide(0,a.paths.value,e.params.runCallbacksOnInit),e.params.history.replaceState||t.addEventListener("popstate",e.history.setHistoryPopState))}},destroy:function(){var e=l();this.params.history.replaceState||e.removeEventListener("popstate",this.history.setHistoryPopState)},setHistoryPopState:function(){var e=this;e.history.paths=se.getPathValues(e.params.url),e.history.scrollToSlide(e.params.speed,e.history.paths.value,!1)},getPathValues:function(e){var t=l(),a=(e?new URL(e):t.location).pathname.slice(1).split("/").filter((function(e){return""!==e})),i=a.length;return{key:a[i-2],value:a[i-1]}},setHistory:function(e,t){var a=this,i=l();if(a.history.initialized&&a.params.history.enabled){var s;s=a.params.url?new URL(a.params.url):i.location;var r=a.slides.eq(t),n=se.slugify(r.attr("data-history"));s.pathname.includes(e)||(n=e+"/"+n);var o=i.history.state;o&&o.value===n||(a.params.history.replaceState?i.history.replaceState({value:n},null,n):i.history.pushState({value:n},null,n))}},slugify:function(e){return e.toString().replace(/\s+/g,"-").replace(/[^\w-]+/g,"").replace(/--+/g,"-").replace(/^-+/,"").replace(/-+$/,"")},scrollToSlide:function(e,t,a){var i=this;if(t)for(var s=0,r=i.slides.length;s<r;s+=1){var n=i.slides.eq(s);if(se.slugify(n.attr("data-history"))===t&&!n.hasClass(i.params.slideDuplicateClass)){var l=n.index();i.slideTo(l,e,a)}}else i.slideTo(0,e,a)}},re={onHashCange:function(){var e=this,t=r();e.emit("hashChange");var a=t.location.hash.replace("#","");if(a!==e.slides.eq(e.activeIndex).attr("data-hash")){var i=e.$wrapperEl.children("."+e.params.slideClass+'[data-hash="'+a+'"]').index();if(void 0===i)return;e.slideTo(i)}},setHash:function(){var e=this,t=l(),a=r();if(e.hashNavigation.initialized&&e.params.hashNavigation.enabled)if(e.params.hashNavigation.replaceState&&t.history&&t.history.replaceState)t.history.replaceState(null,null,"#"+e.slides.eq(e.activeIndex).attr("data-hash")||""),e.emit("hashSet");else{var i=e.slides.eq(e.activeIndex),s=i.attr("data-hash")||i.attr("data-history");a.location.hash=s||"",e.emit("hashSet")}},init:function(){var e=this,t=r(),a=l();if(!(!e.params.hashNavigation.enabled||e.params.history&&e.params.history.enabled)){e.hashNavigation.initialized=!0;var i=t.location.hash.replace("#","");if(i)for(var s=0,n=e.slides.length;s<n;s+=1){var o=e.slides.eq(s);if((o.attr("data-hash")||o.attr("data-history"))===i&&!o.hasClass(e.params.slideDuplicateClass)){var d=o.index();e.slideTo(d,0,e.params.runCallbacksOnInit,!0)}}e.params.hashNavigation.watchState&&m(a).on("hashchange",e.hashNavigation.onHashCange)}},destroy:function(){var e=l();this.params.hashNavigation.watchState&&m(e).off("hashchange",this.hashNavigation.onHashCange)}},ne={run:function(){var e=this,t=e.slides.eq(e.activeIndex),a=e.params.autoplay.delay;t.attr("data-swiper-autoplay")&&(a=t.attr("data-swiper-autoplay")||e.params.autoplay.delay),clearTimeout(e.autoplay.timeout),e.autoplay.timeout=E((function(){var t;e.params.autoplay.reverseDirection?e.params.loop?(e.loopFix(),t=e.slidePrev(e.params.speed,!0,!0),e.emit("autoplay")):e.isBeginning?e.params.autoplay.stopOnLastSlide?e.autoplay.stop():(t=e.slideTo(e.slides.length-1,e.params.speed,!0,!0),e.emit("autoplay")):(t=e.slidePrev(e.params.speed,!0,!0),e.emit("autoplay")):e.params.loop?(e.loopFix(),t=e.slideNext(e.params.speed,!0,!0),e.emit("autoplay")):e.isEnd?e.params.autoplay.stopOnLastSlide?e.autoplay.stop():(t=e.slideTo(0,e.params.speed,!0,!0),e.emit("autoplay")):(t=e.slideNext(e.params.speed,!0,!0),e.emit("autoplay")),(e.params.cssMode&&e.autoplay.running||!1===t)&&e.autoplay.run()}),a)},start:function(){var e=this;return void 0===e.autoplay.timeout&&(!e.autoplay.running&&(e.autoplay.running=!0,e.emit("autoplayStart"),e.autoplay.run(),!0))},stop:function(){var e=this;return!!e.autoplay.running&&(void 0!==e.autoplay.timeout&&(e.autoplay.timeout&&(clearTimeout(e.autoplay.timeout),e.autoplay.timeout=void 0),e.autoplay.running=!1,e.emit("autoplayStop"),!0))},pause:function(e){var t=this;t.autoplay.running&&(t.autoplay.paused||(t.autoplay.timeout&&clearTimeout(t.autoplay.timeout),t.autoplay.paused=!0,0!==e&&t.params.autoplay.waitForTransition?(t.$wrapperEl[0].addEventListener("transitionend",t.autoplay.onTransitionEnd),t.$wrapperEl[0].addEventListener("webkitTransitionEnd",t.autoplay.onTransitionEnd)):(t.autoplay.paused=!1,t.autoplay.run())))},onVisibilityChange:function(){var e=this,t=r();"hidden"===t.visibilityState&&e.autoplay.running&&e.autoplay.pause(),"visible"===t.visibilityState&&e.autoplay.paused&&(e.autoplay.run(),e.autoplay.paused=!1)},onTransitionEnd:function(e){var t=this;t&&!t.destroyed&&t.$wrapperEl&&e.target===t.$wrapperEl[0]&&(t.$wrapperEl[0].removeEventListener("transitionend",t.autoplay.onTransitionEnd),t.$wrapperEl[0].removeEventListener("webkitTransitionEnd",t.autoplay.onTransitionEnd),t.autoplay.paused=!1,t.autoplay.running?t.autoplay.run():t.autoplay.stop())}},le={setTranslate:function(){for(var e=this,t=e.slides,a=0;a<t.length;a+=1){var i=e.slides.eq(a),s=-i[0].swiperSlideOffset;e.params.virtualTranslate||(s-=e.translate);var r=0;e.isHorizontal()||(r=s,s=0);var n=e.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:n}).transform("translate3d("+s+"px, "+r+"px, 0px)")}},setTransition:function(e){var t=this,a=t.slides,i=t.$wrapperEl;if(a.transition(e),t.params.virtualTranslate&&0!==e){var s=!1;a.transitionEnd((function(){if(!s&&t&&!t.destroyed){s=!0,t.animating=!1;for(var e=["webkitTransitionEnd","transitionend"],a=0;a<e.length;a+=1)i.trigger(e[a])}}))}}},oe={setTranslate:function(){var e,t=this,a=t.$el,i=t.$wrapperEl,s=t.slides,r=t.width,n=t.height,l=t.rtlTranslate,o=t.size,d=t.browser,p=t.params.cubeEffect,u=t.isHorizontal(),c=t.virtual&&t.params.virtual.enabled,h=0;p.shadow&&(u?(0===(e=i.find(".swiper-cube-shadow")).length&&(e=m('<div class="swiper-cube-shadow"></div>'),i.append(e)),e.css({height:r+"px"})):0===(e=a.find(".swiper-cube-shadow")).length&&(e=m('<div class="swiper-cube-shadow"></div>'),a.append(e)));for(var v=0;v<s.length;v+=1){var f=s.eq(v),g=v;c&&(g=parseInt(f.attr("data-swiper-slide-index"),10));var y=90*g,w=Math.floor(y/360);l&&(y=-y,w=Math.floor(-y/360));var b=Math.max(Math.min(f[0].progress,1),-1),E=0,x=0,T=0;g%4==0?(E=4*-w*o,T=0):(g-1)%4==0?(E=0,T=4*-w*o):(g-2)%4==0?(E=o+4*w*o,T=o):(g-3)%4==0&&(E=-o,T=3*o+4*o*w),l&&(E=-E),u||(x=E,E=0);var C="rotateX("+(u?0:-y)+"deg) rotateY("+(u?y:0)+"deg) translate3d("+E+"px, "+x+"px, "+T+"px)";if(b<=1&&b>-1&&(h=90*g+90*b,l&&(h=90*-g-90*b)),f.transform(C),p.slideShadows){var S=u?f.find(".swiper-slide-shadow-left"):f.find(".swiper-slide-shadow-top"),M=u?f.find(".swiper-slide-shadow-right"):f.find(".swiper-slide-shadow-bottom");0===S.length&&(S=m('<div class="swiper-slide-shadow-'+(u?"left":"top")+'"></div>'),f.append(S)),0===M.length&&(M=m('<div class="swiper-slide-shadow-'+(u?"right":"bottom")+'"></div>'),f.append(M)),S.length&&(S[0].style.opacity=Math.max(-b,0)),M.length&&(M[0].style.opacity=Math.max(b,0))}}if(i.css({"-webkit-transform-origin":"50% 50% -"+o/2+"px","-moz-transform-origin":"50% 50% -"+o/2+"px","-ms-transform-origin":"50% 50% -"+o/2+"px","transform-origin":"50% 50% -"+o/2+"px"}),p.shadow)if(u)e.transform("translate3d(0px, "+(r/2+p.shadowOffset)+"px, "+-r/2+"px) rotateX(90deg) rotateZ(0deg) scale("+p.shadowScale+")");else{var z=Math.abs(h)-90*Math.floor(Math.abs(h)/90),P=1.5-(Math.sin(2*z*Math.PI/360)/2+Math.cos(2*z*Math.PI/360)/2),k=p.shadowScale,L=p.shadowScale/P,$=p.shadowOffset;e.transform("scale3d("+k+", 1, "+L+") translate3d(0px, "+(n/2+$)+"px, "+-n/2/L+"px) rotateX(-90deg)")}var I=d.isSafari||d.isWebView?-o/2:0;i.transform("translate3d(0px,0,"+I+"px) rotateX("+(t.isHorizontal()?0:h)+"deg) rotateY("+(t.isHorizontal()?-h:0)+"deg)")},setTransition:function(e){var t=this,a=t.$el;t.slides.transition(e).find(".swiper-slide-shadow-top, .swiper-slide-shadow-right, .swiper-slide-shadow-bottom, .swiper-slide-shadow-left").transition(e),t.params.cubeEffect.shadow&&!t.isHorizontal()&&a.find(".swiper-cube-shadow").transition(e)}},de={setTranslate:function(){for(var e=this,t=e.slides,a=e.rtlTranslate,i=0;i<t.length;i+=1){var s=t.eq(i),r=s[0].progress;e.params.flipEffect.limitRotation&&(r=Math.max(Math.min(s[0].progress,1),-1));var n=-180*r,l=0,o=-s[0].swiperSlideOffset,d=0;if(e.isHorizontal()?a&&(n=-n):(d=o,o=0,l=-n,n=0),s[0].style.zIndex=-Math.abs(Math.round(r))+t.length,e.params.flipEffect.slideShadows){var p=e.isHorizontal()?s.find(".swiper-slide-shadow-left"):s.find(".swiper-slide-shadow-top"),u=e.isHorizontal()?s.find(".swiper-slide-shadow-right"):s.find(".swiper-slide-shadow-bottom");0===p.length&&(p=m('<div class="swiper-slide-shadow-'+(e.isHorizontal()?"left":"top")+'"></div>'),s.append(p)),0===u.length&&(u=m('<div class="swiper-slide-shadow-'+(e.isHorizontal()?"right":"bottom")+'"></div>'),s.append(u)),p.length&&(p[0].style.opacity=Math.max(-r,0)),u.length&&(u[0].style.opacity=Math.max(r,0))}s.transform("translate3d("+o+"px, "+d+"px, 0px) rotateX("+l+"deg) rotateY("+n+"deg)")}},setTransition:function(e){var t=this,a=t.slides,i=t.activeIndex,s=t.$wrapperEl;if(a.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;a.eq(i).transitionEnd((function(){if(!r&&t&&!t.destroyed){r=!0,t.animating=!1;for(var e=["webkitTransitionEnd","transitionend"],a=0;a<e.length;a+=1)s.trigger(e[a])}}))}}},pe={setTranslate:function(){for(var e=this,t=e.width,a=e.height,i=e.slides,s=e.slidesSizesGrid,r=e.params.coverflowEffect,n=e.isHorizontal(),l=e.translate,o=n?t/2-l:a/2-l,d=n?r.rotate:-r.rotate,p=r.depth,u=0,c=i.length;u<c;u+=1){var h=i.eq(u),v=s[u],f=(o-h[0].swiperSlideOffset-v/2)/v*r.modifier,g=n?d*f:0,y=n?0:d*f,w=-p*Math.abs(f),b=r.stretch;"string"==typeof b&&-1!==b.indexOf("%")&&(b=parseFloat(r.stretch)/100*v);var E=n?0:b*f,x=n?b*f:0,T=1-(1-r.scale)*Math.abs(f);Math.abs(x)<.001&&(x=0),Math.abs(E)<.001&&(E=0),Math.abs(w)<.001&&(w=0),Math.abs(g)<.001&&(g=0),Math.abs(y)<.001&&(y=0),Math.abs(T)<.001&&(T=0);var C="translate3d("+x+"px,"+E+"px,"+w+"px) rotateX("+y+"deg) rotateY("+g+"deg) scale("+T+")";if(h.transform(C),h[0].style.zIndex=1-Math.abs(Math.round(f)),r.slideShadows){var S=n?h.find(".swiper-slide-shadow-left"):h.find(".swiper-slide-shadow-top"),M=n?h.find(".swiper-slide-shadow-right"):h.find(".swiper-slide-shadow-bottom");0===S.length&&(S=m('<div class="swiper-slide-shadow-'+(n?"left":"top")+'"></div>'),h.append(S)),0===M.length&&(M=m('<div class="swiper-slide-shadow-'+(n?"right":"bottom")+'"></div>'),h.append(M)),S.length&&(S[0].style.opacity=f>0?f:0),M.length&&(M[0].style.opacity=-f>0?-f:0)}}},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)}},ue={init:function(){var e=this,t=e.params.thumbs;if(e.thumbs.initialized)return!1;e.thumbs.initialized=!0;var a=e.constructor;return t.swiper instanceof a?(e.thumbs.swiper=t.swiper,S(e.thumbs.swiper.originalParams,{watchSlidesProgress:!0,slideToClickedSlide:!1}),S(e.thumbs.swiper.params,{watchSlidesProgress:!0,slideToClickedSlide:!1})):C(t.swiper)&&(e.thumbs.swiper=new a(S({},t.swiper,{watchSlidesVisibility:!0,watchSlidesProgress:!0,slideToClickedSlide:!1})),e.thumbs.swiperCreated=!0),e.thumbs.swiper.$el.addClass(e.params.thumbs.thumbsContainerClass),e.thumbs.swiper.on("tap",e.thumbs.onThumbClick),!0},onThumbClick:function(){var e=this,t=e.thumbs.swiper;if(t){var a=t.clickedIndex,i=t.clickedSlide;if(!(i&&m(i).hasClass(e.params.thumbs.slideThumbActiveClass)||null==a)){var s;if(s=t.params.loop?parseInt(m(t.clickedSlide).attr("data-swiper-slide-index"),10):a,e.params.loop){var r=e.activeIndex;e.slides.eq(r).hasClass(e.params.slideDuplicateClass)&&(e.loopFix(),e._clientLeft=e.$wrapperEl[0].clientLeft,r=e.activeIndex);var n=e.slides.eq(r).prevAll('[data-swiper-slide-index="'+s+'"]').eq(0).index(),l=e.slides.eq(r).nextAll('[data-swiper-slide-index="'+s+'"]').eq(0).index();s=void 0===n?l:void 0===l?n:l-r<r-n?l:n}e.slideTo(s)}}},update:function(e){var t=this,a=t.thumbs.swiper;if(a){var i="auto"===a.params.slidesPerView?a.slidesPerViewDynamic():a.params.slidesPerView,s=t.params.thumbs.autoScrollOffset,r=s&&!a.params.loop;if(t.realIndex!==a.realIndex||r){var n,l,o=a.activeIndex;if(a.params.loop){a.slides.eq(o).hasClass(a.params.slideDuplicateClass)&&(a.loopFix(),a._clientLeft=a.$wrapperEl[0].clientLeft,o=a.activeIndex);var d=a.slides.eq(o).prevAll('[data-swiper-slide-index="'+t.realIndex+'"]').eq(0).index(),p=a.slides.eq(o).nextAll('[data-swiper-slide-index="'+t.realIndex+'"]').eq(0).index();n=void 0===d?p:void 0===p?d:p-o==o-d?o:p-o<o-d?p:d,l=t.activeIndex>t.previousIndex?"next":"prev"}else l=(n=t.realIndex)>t.previousIndex?"next":"prev";r&&(n+="next"===l?s:-1*s),a.visibleSlidesIndexes&&a.visibleSlidesIndexes.indexOf(n)<0&&(a.params.centeredSlides?n=n>o?n-Math.floor(i/2)+1:n+Math.floor(i/2)-1:n>o&&(n=n-i+1),a.slideTo(n,e?0:void 0))}var u=1,c=t.params.thumbs.slideThumbActiveClass;if(t.params.slidesPerView>1&&!t.params.centeredSlides&&(u=t.params.slidesPerView),t.params.thumbs.multipleActiveThumbs||(u=1),u=Math.floor(u),a.slides.removeClass(c),a.params.loop||a.params.virtual&&a.params.virtual.enabled)for(var h=0;h<u;h+=1)a.$wrapperEl.children('[data-swiper-slide-index="'+(t.realIndex+h)+'"]').addClass(c);else for(var v=0;v<u;v+=1)a.slides.eq(t.realIndex+v).addClass(c)}}},ce=[q,_,{name:"mousewheel",params:{mousewheel:{enabled:!1,releaseOnEdges:!1,invert:!1,forceToAxis:!1,sensitivity:1,eventsTarget:"container",thresholdDelta:null,thresholdTime:null}},create:function(){M(this,{mousewheel:{enabled:!1,lastScrollTime:x(),lastEventBeforeSnap:void 0,recentWheelEvents:[],enable:U.enable,disable:U.disable,handle:U.handle,handleMouseEnter:U.handleMouseEnter,handleMouseLeave:U.handleMouseLeave,animateSlider:U.animateSlider,releaseScroll:U.releaseScroll}})},on:{init:function(e){!e.params.mousewheel.enabled&&e.params.cssMode&&e.mousewheel.disable(),e.params.mousewheel.enabled&&e.mousewheel.enable()},destroy:function(e){e.params.cssMode&&e.mousewheel.enable(),e.mousewheel.enabled&&e.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(){M(this,{navigation:t({},K)})},on:{init:function(e){e.navigation.init(),e.navigation.update()},toEdge:function(e){e.navigation.update()},fromEdge:function(e){e.navigation.update()},destroy:function(e){e.navigation.destroy()},click:function(e,t){var a,i=e.navigation,s=i.$nextEl,r=i.$prevEl;!e.params.navigation.hideOnClick||m(t.target).is(r)||m(t.target).is(s)||(s?a=s.hasClass(e.params.navigation.hiddenClass):r&&(a=r.hasClass(e.params.navigation.hiddenClass)),!0===a?e.emit("navigationShow"):e.emit("navigationHide"),s&&s.toggleClass(e.params.navigation.hiddenClass),r&&r.toggleClass(e.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(){M(this,{pagination:t({dynamicBulletIndex:0},Z)})},on:{init:function(e){e.pagination.init(),e.pagination.render(),e.pagination.update()},activeIndexChange:function(e){(e.params.loop||void 0===e.snapIndex)&&e.pagination.update()},snapIndexChange:function(e){e.params.loop||e.pagination.update()},slidesLengthChange:function(e){e.params.loop&&(e.pagination.render(),e.pagination.update())},snapGridLengthChange:function(e){e.params.loop||(e.pagination.render(),e.pagination.update())},destroy:function(e){e.pagination.destroy()},click:function(e,t){e.params.pagination.el&&e.params.pagination.hideOnClick&&e.pagination.$el.length>0&&!m(t.target).hasClass(e.params.pagination.bulletClass)&&(!0===e.pagination.$el.hasClass(e.params.pagination.hiddenClass)?e.emit("paginationShow"):e.emit("paginationHide"),e.pagination.$el.toggleClass(e.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(){M(this,{scrollbar:t({isTouched:!1,timeout:null,dragTimeout:null},J)})},on:{init:function(e){e.scrollbar.init(),e.scrollbar.updateSize(),e.scrollbar.setTranslate()},update:function(e){e.scrollbar.updateSize()},resize:function(e){e.scrollbar.updateSize()},observerUpdate:function(e){e.scrollbar.updateSize()},setTranslate:function(e){e.scrollbar.setTranslate()},setTransition:function(e,t){e.scrollbar.setTransition(t)},destroy:function(e){e.scrollbar.destroy()}}},{name:"parallax",params:{parallax:{enabled:!1}},create:function(){M(this,{parallax:t({},Q)})},on:{beforeInit:function(e){e.params.parallax.enabled&&(e.params.watchSlidesProgress=!0,e.originalParams.watchSlidesProgress=!0)},init:function(e){e.params.parallax.enabled&&e.parallax.setTranslate()},setTranslate:function(e){e.params.parallax.enabled&&e.parallax.setTranslate()},setTransition:function(e,t){e.params.parallax.enabled&&e.parallax.setTransition(t)}}},{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;M(e,{zoom: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}},ee)});var a=1;Object.defineProperty(e.zoom,"scale",{get:function(){return a},set:function(t){if(a!==t){var i=e.zoom.gesture.$imageEl?e.zoom.gesture.$imageEl[0]:void 0,s=e.zoom.gesture.$slideEl?e.zoom.gesture.$slideEl[0]:void 0;e.emit("zoomChange",t,i,s)}a=t}})},on:{init:function(e){e.params.zoom.enabled&&e.zoom.enable()},destroy:function(e){e.zoom.disable()},touchStart:function(e,t){e.zoom.enabled&&e.zoom.onTouchStart(t)},touchEnd:function(e,t){e.zoom.enabled&&e.zoom.onTouchEnd(t)},doubleTap:function(e,t){e.params.zoom.enabled&&e.zoom.enabled&&e.params.zoom.toggle&&e.zoom.toggle(t)},transitionEnd:function(e){e.zoom.enabled&&e.params.zoom.enabled&&e.zoom.onTransitionEnd()},slideChange:function(e){e.zoom.enabled&&e.params.zoom.enabled&&e.params.cssMode&&e.zoom.onTransitionEnd()}}},{name:"lazy",params:{lazy:{checkInView:!1,enabled:!1,loadPrevNext:!1,loadPrevNextAmount:1,loadOnTransitionStart:!1,scrollingElement:"",elementClass:"swiper-lazy",loadingClass:"swiper-lazy-loading",loadedClass:"swiper-lazy-loaded",preloaderClass:"swiper-lazy-preloader"}},create:function(){M(this,{lazy:t({initialImageLoaded:!1},te)})},on:{beforeInit:function(e){e.params.lazy.enabled&&e.params.preloadImages&&(e.params.preloadImages=!1)},init:function(e){e.params.lazy.enabled&&!e.params.loop&&0===e.params.initialSlide&&(e.params.lazy.checkInView?e.lazy.checkInViewOnLoad():e.lazy.load())},scroll:function(e){e.params.freeMode&&!e.params.freeModeSticky&&e.lazy.load()},resize:function(e){e.params.lazy.enabled&&e.lazy.load()},scrollbarDragMove:function(e){e.params.lazy.enabled&&e.lazy.load()},transitionStart:function(e){e.params.lazy.enabled&&(e.params.lazy.loadOnTransitionStart||!e.params.lazy.loadOnTransitionStart&&!e.lazy.initialImageLoaded)&&e.lazy.load()},transitionEnd:function(e){e.params.lazy.enabled&&!e.params.lazy.loadOnTransitionStart&&e.lazy.load()},slideChange:function(e){e.params.lazy.enabled&&e.params.cssMode&&e.lazy.load()}}},{name:"controller",params:{controller:{control:void 0,inverse:!1,by:"slide"}},create:function(){M(this,{controller:t({control:this.params.controller.control},ae)})},on:{update:function(e){e.controller.control&&e.controller.spline&&(e.controller.spline=void 0,delete e.controller.spline)},resize:function(e){e.controller.control&&e.controller.spline&&(e.controller.spline=void 0,delete e.controller.spline)},observerUpdate:function(e){e.controller.control&&e.controller.spline&&(e.controller.spline=void 0,delete e.controller.spline)},setTranslate:function(e,t,a){e.controller.control&&e.controller.setTranslate(t,a)},setTransition:function(e,t,a){e.controller.control&&e.controller.setTransition(t,a)}}},{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}}",containerMessage:null,containerRoleDescriptionMessage:null,itemRoleDescriptionMessage:null}},create:function(){M(this,{a11y:t({},ie,{liveRegion:m('<span class="'+this.params.a11y.notificationClass+'" aria-live="assertive" aria-atomic="true"></span>')})})},on:{afterInit:function(e){e.params.a11y.enabled&&(e.a11y.init(),e.a11y.updateNavigation())},toEdge:function(e){e.params.a11y.enabled&&e.a11y.updateNavigation()},fromEdge:function(e){e.params.a11y.enabled&&e.a11y.updateNavigation()},paginationUpdate:function(e){e.params.a11y.enabled&&e.a11y.updatePagination()},destroy:function(e){e.params.a11y.enabled&&e.a11y.destroy()}}},{name:"history",params:{history:{enabled:!1,replaceState:!1,key:"slides"}},create:function(){M(this,{history:t({},se)})},on:{init:function(e){e.params.history.enabled&&e.history.init()},destroy:function(e){e.params.history.enabled&&e.history.destroy()},transitionEnd:function(e){e.history.initialized&&e.history.setHistory(e.params.history.key,e.activeIndex)},slideChange:function(e){e.history.initialized&&e.params.cssMode&&e.history.setHistory(e.params.history.key,e.activeIndex)}}},{name:"hash-navigation",params:{hashNavigation:{enabled:!1,replaceState:!1,watchState:!1}},create:function(){M(this,{hashNavigation:t({initialized:!1},re)})},on:{init:function(e){e.params.hashNavigation.enabled&&e.hashNavigation.init()},destroy:function(e){e.params.hashNavigation.enabled&&e.hashNavigation.destroy()},transitionEnd:function(e){e.hashNavigation.initialized&&e.hashNavigation.setHash()},slideChange:function(e){e.hashNavigation.initialized&&e.params.cssMode&&e.hashNavigation.setHash()}}},{name:"autoplay",params:{autoplay:{enabled:!1,delay:3e3,waitForTransition:!0,disableOnInteraction:!0,stopOnLastSlide:!1,reverseDirection:!1}},create:function(){M(this,{autoplay:t({},ne,{running:!1,paused:!1})})},on:{init:function(e){e.params.autoplay.enabled&&(e.autoplay.start(),r().addEventListener("visibilitychange",e.autoplay.onVisibilityChange))},beforeTransitionStart:function(e,t,a){e.autoplay.running&&(a||!e.params.autoplay.disableOnInteraction?e.autoplay.pause(t):e.autoplay.stop())},sliderFirstMove:function(e){e.autoplay.running&&(e.params.autoplay.disableOnInteraction?e.autoplay.stop():e.autoplay.pause())},touchEnd:function(e){e.params.cssMode&&e.autoplay.paused&&!e.params.autoplay.disableOnInteraction&&e.autoplay.run()},destroy:function(e){e.autoplay.running&&e.autoplay.stop(),r().removeEventListener("visibilitychange",e.autoplay.onVisibilityChange)}}},{name:"effect-fade",params:{fadeEffect:{crossFade:!1}},create:function(){M(this,{fadeEffect:t({},le)})},on:{beforeInit:function(e){if("fade"===e.params.effect){e.classNames.push(e.params.containerModifierClass+"fade");var t={slidesPerView:1,slidesPerColumn:1,slidesPerGroup:1,watchSlidesProgress:!0,spaceBetween:0,virtualTranslate:!0};S(e.params,t),S(e.originalParams,t)}},setTranslate:function(e){"fade"===e.params.effect&&e.fadeEffect.setTranslate()},setTransition:function(e,t){"fade"===e.params.effect&&e.fadeEffect.setTransition(t)}}},{name:"effect-cube",params:{cubeEffect:{slideShadows:!0,shadow:!0,shadowOffset:20,shadowScale:.94}},create:function(){M(this,{cubeEffect:t({},oe)})},on:{beforeInit:function(e){if("cube"===e.params.effect){e.classNames.push(e.params.containerModifierClass+"cube"),e.classNames.push(e.params.containerModifierClass+"3d");var t={slidesPerView:1,slidesPerColumn:1,slidesPerGroup:1,watchSlidesProgress:!0,resistanceRatio:0,spaceBetween:0,centeredSlides:!1,virtualTranslate:!0};S(e.params,t),S(e.originalParams,t)}},setTranslate:function(e){"cube"===e.params.effect&&e.cubeEffect.setTranslate()},setTransition:function(e,t){"cube"===e.params.effect&&e.cubeEffect.setTransition(t)}}},{name:"effect-flip",params:{flipEffect:{slideShadows:!0,limitRotation:!0}},create:function(){M(this,{flipEffect:t({},de)})},on:{beforeInit:function(e){if("flip"===e.params.effect){e.classNames.push(e.params.containerModifierClass+"flip"),e.classNames.push(e.params.containerModifierClass+"3d");var t={slidesPerView:1,slidesPerColumn:1,slidesPerGroup:1,watchSlidesProgress:!0,spaceBetween:0,virtualTranslate:!0};S(e.params,t),S(e.originalParams,t)}},setTranslate:function(e){"flip"===e.params.effect&&e.flipEffect.setTranslate()},setTransition:function(e,t){"flip"===e.params.effect&&e.flipEffect.setTransition(t)}}},{name:"effect-coverflow",params:{coverflowEffect:{rotate:50,stretch:0,depth:100,scale:1,modifier:1,slideShadows:!0}},create:function(){M(this,{coverflowEffect:t({},pe)})},on:{beforeInit:function(e){"coverflow"===e.params.effect&&(e.classNames.push(e.params.containerModifierClass+"coverflow"),e.classNames.push(e.params.containerModifierClass+"3d"),e.params.watchSlidesProgress=!0,e.originalParams.watchSlidesProgress=!0)},setTranslate:function(e){"coverflow"===e.params.effect&&e.coverflowEffect.setTranslate()},setTransition:function(e,t){"coverflow"===e.params.effect&&e.coverflowEffect.setTransition(t)}}},{name:"thumbs",params:{thumbs:{swiper:null,multipleActiveThumbs:!0,autoScrollOffset:0,slideThumbActiveClass:"swiper-slide-thumb-active",thumbsContainerClass:"swiper-container-thumbs"}},create:function(){M(this,{thumbs:t({swiper:null,initialized:!1},ue)})},on:{beforeInit:function(e){var t=e.params.thumbs;t&&t.swiper&&(e.thumbs.init(),e.thumbs.update(!0))},slideChange:function(e){e.thumbs.swiper&&e.thumbs.update()},update:function(e){e.thumbs.swiper&&e.thumbs.update()},resize:function(e){e.thumbs.swiper&&e.thumbs.update()},observerUpdate:function(e){e.thumbs.swiper&&e.thumbs.update()},setTransition:function(e,t){var a=e.thumbs.swiper;a&&a.setTransition(t)},beforeDestroy:function(e){var t=e.thumbs.swiper;t&&e.thumbs.swiperCreated&&t&&t.destroy()}}}];return R.use(ce),R}));
+//# sourceMappingURL=swiper-bundle.min.js.map
diff --git a/public/static/home/assets/js/theme.js b/public/static/home/assets/js/theme.js
new file mode 100644
index 0000000..34642ad
--- /dev/null
+++ b/public/static/home/assets/js/theme.js
@@ -0,0 +1,572 @@
+(function($) {
+ 'use strict';
+
+
+
+
+ /*==== One Page Nav ====*/
+ var top_offset = $('.one_page').height() +0;
+ $('.one_page .itpart_menu .nav_scroll').onePageNav({
+ currentClass: 'current',
+ changeHash: false,
+ scrollSpeed: 1000,
+ scrollOffset: top_offset,
+ scrollThreshold: 0.5,
+ filter: '',
+ easing: 'swing',
+ });
+
+ $(".nav_scroll > li:first-child").addClass("current");
+ /*==== sticky nav 1 ====*/
+ $('.one_page').scrollToFixed({
+ preFixed: function() {
+ $(this).find('.scroll_fixed').addClass('prefix');
+ },
+ postFixed: function() {
+ $(this).find('.scroll_fixed').addClass('postfix').removeClass('prefix');
+ }
+ });
+
+ /*==== sticky nav 2 ====*/
+ var headers1 = $('.trp_nav_area');
+ $(window).on('scroll', function() {
+
+ if ($(window).scrollTop() > 200) {
+ headers1.addClass('hbg2');
+ } else {
+ headers1.removeClass('hbg2');
+ }
+
+ });
+
+ /*==== Mobile Menu ====*/
+ $('.mobile-menu nav').meanmenu({
+ meanScreenWidth: "990",
+ meanMenuContainer: ".mobile-menu",
+ onePage: true,
+ });
+ /*==== Bootstrap Accordion ====*/
+
+ $('.faq-part .card').each(function () {
+ var $this = $(this);
+ $this.on('click', function (e) {
+ var has = $this.hasClass('active');
+ $('.faq-part .card').removeClass('active show');
+ if (has) {
+ $this.removeClass('active show');
+ } else {
+ $this.addClass('active show');
+ }
+ });
+ });
+
+
+ /*==== WOW active js ====*/
+ new WOW().init();
+
+ /*==== scrollUp ====*/
+ $.scrollUp({
+ scrollText: '<i class="fa fa-angle-up"></i>',
+ easingType: 'linear',
+ scrollSpeed: 900,
+ animation: 'fade'
+ });
+
+ /*==== Venubox ====*/
+ $('.venobox').venobox({
+
+ numeratio: true,
+
+ infinigall: true
+
+ });
+
+
+ /*==== witr swiper active ====*/
+
+ new Swiper('.swiper_active', {
+ effect: 'defult',
+ grabCursor: false,
+ speed: 2000,
+ direction: 'horizontal',
+ slidesPerView: 1,
+ spaceBetween: 30,
+ freeMode: false,
+ mousewheel: false,
+ keyboard: true,
+ loop: true,
+ autoplay: {
+ delay: 4000,
+ disableOnInteraction: false,
+ },
+ pagination: {
+ el: '.swiper-pagination',
+ clickable: true,
+ type: 'progressbar',
+ },
+ navigation: {
+ nextEl: '.swiper-button-next',
+ prevEl: '.swiper-button-prev',
+ },
+ scrollbar: {
+ el: '.scrollbar_false',
+ hide: true,
+ },
+ });
+
+ /*====== carosol active =======*/
+ $('.carosol_active').slick({
+ infinite: true,
+ autoplay: false,
+ autoplaySpeed: 5000,
+ speed: 1000,
+ slidesToShow: 1,
+ slidesToScroll: 1,
+ centerMode: true,
+ centerPadding: '',
+ arrows: false,
+ dots: false,
+ responsive: [
+ {
+ breakpoint: 1200,
+ settings: {
+ slidesToShow: 1,
+ slidesToScroll: 1,
+ }
+ },
+ {
+ breakpoint: 992,
+ settings: {
+ slidesToShow: 1,
+ slidesToScroll: 1,
+ }
+ },
+ {
+ breakpoint: 768,
+ settings: {
+ slidesToShow: 1,
+ slidesToScroll: 1,
+ }
+ }
+ // You can unslick at a given breakpoint now by adding:
+ // settings: "unslick"
+ // instead of a settings object
+ ]
+ });
+
+ /*====== porfolio project active =======*/
+
+ var witrbslick = $('.portfolio_porject_act');
+ if(witrbslick.length > 0){
+ witrbslick.slick({
+ infinite: true,
+ autoplay: false,
+ autoplaySpeed: 4000,
+ speed: 1000,
+ slidesToShow: 4,
+ slidesToScroll: 2,
+ arrows: true,
+ dots: true,
+ responsive: [
+ {
+ breakpoint: 1200,
+ settings: {
+ slidesToShow: 3,
+ slidesToScroll: 1,
+ }
+ },
+ {
+ breakpoint: 992,
+ settings: {
+ slidesToShow: 3,
+ slidesToScroll: 1,
+ }
+ },
+ {
+ breakpoint: 767,
+ settings: {
+ slidesToShow: 1,
+ slidesToScroll: 1,
+ }
+ }
+ ]
+ });
+ }
+
+ /*==== team active ====*/
+
+ var witrbslick = $('.team_active');
+ if(witrbslick.length > 0){
+ witrbslick.slick({
+ infinite: true,
+ autoplay: true,
+ autoplaySpeed: 3000,
+ speed: 700,
+ slidesToShow: 3,
+ slidesToScroll: 1,
+ arrows: true,
+ centerMode: false,
+ centerPadding: '',
+ dots: false,
+ responsive: [
+ {
+ breakpoint: 1200,
+ settings: {
+ slidesToShow: 4,
+ slidesToScroll: 1,
+ }
+ },
+ {
+ breakpoint: 992,
+ settings: {
+ slidesToShow: 2,
+ slidesToScroll: 1,
+ }
+ },
+ {
+ breakpoint: 767,
+ settings: {
+ slidesToShow: 1,
+ slidesToScroll: 1,
+ }
+ }
+ ]
+ });
+ }
+ /*==== team page active ====*/
+
+ var witrbslick = $('.team_page_active');
+ if(witrbslick.length > 0){
+ witrbslick.slick({
+ infinite: true,
+ autoplay: true,
+ autoplaySpeed: 3000,
+ speed: 700,
+ slidesToShow: 3,
+ slidesToScroll: 1,
+ arrows: true,
+ centerMode: false,
+ centerPadding: '',
+ dots: false,
+ responsive: [
+ {
+ breakpoint: 1200,
+ settings: {
+ slidesToShow: 4,
+ slidesToScroll: 1,
+ }
+ },
+ {
+ breakpoint: 992,
+ settings: {
+ slidesToShow: 2,
+ slidesToScroll: 1,
+ }
+ },
+ {
+ breakpoint: 767,
+ settings: {
+ slidesToShow: 1,
+ slidesToScroll: 1,
+ }
+ }
+ ]
+ });
+ }
+
+ /*==== testimonial area3 actve ====*/
+
+ var witrbtslick = $('.testimonial3_active');
+ if(witrbtslick.length > 0){
+ witrbtslick.slick({
+ infinite: true,
+ autoplay: true,
+ autoplaySpeed: 3000,
+ speed: 1000,
+ slidesToShow: 1,
+ slidesToScroll: 1,
+ arrows: false,
+ dots: true,
+ responsive: [
+ {
+ breakpoint: 1200,
+ settings: {
+ slidesToShow: 1,
+ slidesToScroll: 1,
+ }
+ },
+ {
+ breakpoint: 992,
+ settings: {
+ slidesToShow: 1,
+ slidesToScroll: 1,
+ }
+ },
+ {
+ breakpoint: 767,
+ settings: {
+ slidesToShow: 1,
+ slidesToScroll: 1,
+ dots:false,
+ }
+ }
+ ]
+ });
+ }
+
+
+ /*==== Brand active ====*/
+
+ var witrbslick = $('.brand_active');
+
+ if(witrbslick.length > 0){
+
+ witrbslick.slick({
+ infinite: true,
+ autoplay: true,
+ default: true,
+ autoplaySpeed: 3000,
+ speed: 1000,
+ slidesToShow: 5,
+ slidesToScroll: 1,
+ arrows: true,
+ dots: false,
+ responsive: [
+ {
+ breakpoint: 1200,
+ settings: {
+ slidesToShow: 5,
+ slidesToScroll: 1,
+ }
+ },
+ {
+ breakpoint: 992,
+ settings: {
+ slidesToShow: 4,
+ slidesToScroll: 1,
+ }
+ },
+ {
+ breakpoint: 767,
+ settings: {
+ slidesToShow: 2,
+ slidesToScroll: 1,
+ }
+ }
+ ]
+ });
+ }
+
+
+ /*==== testimonial active ====*/
+
+ var witrbtslick = $('.testimonial_active');
+ if(witrbtslick.length > 0){
+ witrbtslick.slick({
+ infinite: true,
+ autoplay: true,
+ autoplaySpeed: 3000,
+ speed: 1000,
+ slidesToShow: 2,
+ slidesToScroll: 2,
+ arrows: true,
+ dots: true,
+ responsive: [
+ {
+ breakpoint: 1200,
+ settings: {
+ slidesToShow: 2,
+ slidesToScroll: 1,
+ }
+ },
+ {
+ breakpoint: 992,
+ settings: {
+ slidesToShow: 2,
+ slidesToScroll: 1,
+ }
+ },
+ {
+ breakpoint: 767,
+ settings: {
+ slidesToShow: 1,
+ slidesToScroll: 1,
+ }
+ }
+ ]
+ });
+ }
+
+ /*==== blog active ====*/
+
+ var witrbslick = $('.blog_active');
+ if(witrbslick.length > 0){
+ witrbslick.slick({
+ infinite: true,
+ autoplay: true,
+ autoplaySpeed: 3000,
+ speed: 1000,
+ slidesToShow: 3,
+ slidesToScroll: 1,
+ arrows: false,
+ dots: false,
+ responsive: [
+ {
+ breakpoint: 1200,
+ settings: {
+ slidesToShow: 3,
+ slidesToScroll: 1,
+ }
+ },
+ {
+ breakpoint: 992,
+ settings: {
+ slidesToShow: 2,
+ slidesToScroll: 1,
+ }
+ },
+ {
+ breakpoint: 767,
+ settings: {
+ slidesToShow: 1,
+ slidesToScroll: 1,
+ }
+ }
+ ]
+ });
+ }
+
+ /*==== blog sidebar active ====*/
+
+ $('.blog_sidebar_image_act').slick({
+
+ infinite: true,
+ autoplay: true,
+ autoplaySpeed: 3000,
+ speed: 1000,
+ slidesToShow: 1,
+ slidesToScroll: 1,
+ centerMode: true,
+ centerPadding: '',
+ arrows: false,
+ dots: false,
+ responsive: [
+ {
+ breakpoint: 1200,
+ settings: {
+ slidesToShow: 1,
+ slidesToScroll: 1,
+ }
+ },
+ {
+ breakpoint: 992,
+ settings: {
+ slidesToShow: 1,
+ slidesToScroll: 1,
+ }
+ },
+ {
+ breakpoint: 768,
+ settings: {
+ slidesToShow: 1,
+ slidesToScroll: 1,
+ }
+ }
+ // You can unslick at a given breakpoint now by adding:
+ // settings: "unslick"
+ // instead of a settings object
+ ]
+ });
+
+
+ /*====== testimonial2 active =======*/
+ $('.testimonial2_active').slick({
+ infinite: true,
+ autoplay: true,
+ autoplaySpeed: 3000,
+ speed: 1000,
+ slidesToShow: 2,
+ slidesToScroll: 1,
+ arrows: true,
+ dots: false,
+ responsive: [
+ {
+ breakpoint: 1200,
+ settings: {
+ slidesToShow: 2,
+ slidesToScroll: 1,
+ }
+ },
+ {
+ breakpoint: 992,
+ settings: {
+ slidesToShow: 2,
+ slidesToScroll: 1,
+ }
+ },
+ {
+ breakpoint: 767,
+ settings: {
+ slidesToShow: 1,
+ slidesToScroll: 1,
+ }
+ }
+ // You can unslick at a given breakpoint now by adding:
+ // settings: "unslick"
+ // instead of a settings object
+ ]
+ });
+
+ /*==== Portfolio Isotope ====*/
+
+ if ($.fn.isotope) {
+
+ var $portfolio = $('.portfolio_active');
+
+ $portfolio.isotope({
+
+ itemSelector: '.grid-item',
+
+ filter: '*',
+
+ resizesContainer: true,
+
+ layoutMode: 'masonry',
+
+ transitionDuration: '0.8s'
+
+ });
+
+
+ $('.filter_menu li').on('click', function() {
+
+ $('.filter_menu li').removeClass('current_menu_item');
+
+ $(this).addClass('current_menu_item');
+
+ var selector = $(this).attr('data-filter');
+
+ $portfolio.isotope({
+
+ filter: selector,
+
+ });
+
+ });
+
+ };
+
+ /*==== counter active ====*/
+
+ $('.counter').counterUp({
+ delay: 10,
+ time: 1000
+ });
+
+
+
+})(jQuery);
+
+
+
+
diff --git a/public/static/home/assets/js/vendor/jquery-3.5.1.min.js b/public/static/home/assets/js/vendor/jquery-3.5.1.min.js
new file mode 100644
index 0000000..3ff6aee
--- /dev/null
+++ b/public/static/home/assets/js/vendor/jquery-3.5.1.min.js
@@ -0,0 +1,2 @@
+/*! jQuery v3.5.1 | (c) JS Foundation and other contributors | jquery.org/license */
+!function(e,t){"use strict";"object"==typeof module&&"object"==typeof module.exports?module.exports=e.document?t(e,!0):function(e){if(!e.document)throw new Error("jQuery requires a window with a document");return t(e)}:t(e)}("undefined"!=typeof window?window:this,function(C,e){"use strict";var t=[],r=Object.getPrototypeOf,s=t.slice,g=t.flat?function(e){return t.flat.call(e)}:function(e){return t.concat.apply([],e)},u=t.push,i=t.indexOf,n={},o=n.toString,v=n.hasOwnProperty,a=v.toString,l=a.call(Object),y={},m=function(e){return"function"==typeof e&&"number"!=typeof e.nodeType},x=function(e){return null!=e&&e===e.window},E=C.document,c={type:!0,src:!0,nonce:!0,noModule:!0};function b(e,t,n){var r,i,o=(n=n||E).createElement("script");if(o.text=e,t)for(r in c)(i=t[r]||t.getAttribute&&t.getAttribute(r))&&o.setAttribute(r,i);n.head.appendChild(o).parentNode.removeChild(o)}function w(e){return null==e?e+"":"object"==typeof e||"function"==typeof e?n[o.call(e)]||"object":typeof e}var f="3.5.1",S=function(e,t){return new S.fn.init(e,t)};function p(e){var t=!!e&&"length"in e&&e.length,n=w(e);return!m(e)&&!x(e)&&("array"===n||0===t||"number"==typeof t&&0<t&&t-1 in e)}S.fn=S.prototype={jquery:f,constructor:S,length:0,toArray:function(){return s.call(this)},get:function(e){return null==e?s.call(this):e<0?this[e+this.length]:this[e]},pushStack:function(e){var t=S.merge(this.constructor(),e);return t.prevObject=this,t},each:function(e){return S.each(this,e)},map:function(n){return this.pushStack(S.map(this,function(e,t){return n.call(e,t,e)}))},slice:function(){return this.pushStack(s.apply(this,arguments))},first:function(){return this.eq(0)},last:function(){return this.eq(-1)},even:function(){return this.pushStack(S.grep(this,function(e,t){return(t+1)%2}))},odd:function(){return this.pushStack(S.grep(this,function(e,t){return t%2}))},eq:function(e){var t=this.length,n=+e+(e<0?t:0);return this.pushStack(0<=n&&n<t?[this[n]]:[])},end:function(){return this.prevObject||this.constructor()},push:u,sort:t.sort,splice:t.splice},S.extend=S.fn.extend=function(){var e,t,n,r,i,o,a=arguments[0]||{},s=1,u=arguments.length,l=!1;for("boolean"==typeof a&&(l=a,a=arguments[s]||{},s++),"object"==typeof a||m(a)||(a={}),s===u&&(a=this,s--);s<u;s++)if(null!=(e=arguments[s]))for(t in e)r=e[t],"__proto__"!==t&&a!==r&&(l&&r&&(S.isPlainObject(r)||(i=Array.isArray(r)))?(n=a[t],o=i&&!Array.isArray(n)?[]:i||S.isPlainObject(n)?n:{},i=!1,a[t]=S.extend(l,o,r)):void 0!==r&&(a[t]=r));return a},S.extend({expando:"jQuery"+(f+Math.random()).replace(/\D/g,""),isReady:!0,error:function(e){throw new Error(e)},noop:function(){},isPlainObject:function(e){var t,n;return!(!e||"[object Object]"!==o.call(e))&&(!(t=r(e))||"function"==typeof(n=v.call(t,"constructor")&&t.constructor)&&a.call(n)===l)},isEmptyObject:function(e){var t;for(t in e)return!1;return!0},globalEval:function(e,t,n){b(e,{nonce:t&&t.nonce},n)},each:function(e,t){var n,r=0;if(p(e)){for(n=e.length;r<n;r++)if(!1===t.call(e[r],r,e[r]))break}else for(r in e)if(!1===t.call(e[r],r,e[r]))break;return e},makeArray:function(e,t){var n=t||[];return null!=e&&(p(Object(e))?S.merge(n,"string"==typeof e?[e]:e):u.call(n,e)),n},inArray:function(e,t,n){return null==t?-1:i.call(t,e,n)},merge:function(e,t){for(var n=+t.length,r=0,i=e.length;r<n;r++)e[i++]=t[r];return e.length=i,e},grep:function(e,t,n){for(var r=[],i=0,o=e.length,a=!n;i<o;i++)!t(e[i],i)!==a&&r.push(e[i]);return r},map:function(e,t,n){var r,i,o=0,a=[];if(p(e))for(r=e.length;o<r;o++)null!=(i=t(e[o],o,n))&&a.push(i);else for(o in e)null!=(i=t(e[o],o,n))&&a.push(i);return g(a)},guid:1,support:y}),"function"==typeof Symbol&&(S.fn[Symbol.iterator]=t[Symbol.iterator]),S.each("Boolean Number String Function Array Date RegExp Object Error Symbol".split(" "),function(e,t){n["[object "+t+"]"]=t.toLowerCase()});var d=function(n){var e,d,b,o,i,h,f,g,w,u,l,T,C,a,E,v,s,c,y,S="sizzle"+1*new Date,p=n.document,k=0,r=0,m=ue(),x=ue(),A=ue(),N=ue(),D=function(e,t){return e===t&&(l=!0),0},j={}.hasOwnProperty,t=[],q=t.pop,L=t.push,H=t.push,O=t.slice,P=function(e,t){for(var n=0,r=e.length;n<r;n++)if(e[n]===t)return n;return-1},R="checked|selected|async|autofocus|autoplay|controls|defer|disabled|hidden|ismap|loop|multiple|open|readonly|required|scoped",M="[\\x20\\t\\r\\n\\f]",I="(?:\\\\[\\da-fA-F]{1,6}"+M+"?|\\\\[^\\r\\n\\f]|[\\w-]|[^\0-\\x7f])+",W="\\["+M+"*("+I+")(?:"+M+"*([*^$|!~]?=)"+M+"*(?:'((?:\\\\.|[^\\\\'])*)'|\"((?:\\\\.|[^\\\\\"])*)\"|("+I+"))|)"+M+"*\\]",F=":("+I+")(?:\\((('((?:\\\\.|[^\\\\'])*)'|\"((?:\\\\.|[^\\\\\"])*)\")|((?:\\\\.|[^\\\\()[\\]]|"+W+")*)|.*)\\)|)",B=new RegExp(M+"+","g"),$=new RegExp("^"+M+"+|((?:^|[^\\\\])(?:\\\\.)*)"+M+"+$","g"),_=new RegExp("^"+M+"*,"+M+"*"),z=new RegExp("^"+M+"*([>+~]|"+M+")"+M+"*"),U=new RegExp(M+"|>"),X=new RegExp(F),V=new RegExp("^"+I+"$"),G={ID:new RegExp("^#("+I+")"),CLASS:new RegExp("^\\.("+I+")"),TAG:new RegExp("^("+I+"|[*])"),ATTR:new RegExp("^"+W),PSEUDO:new RegExp("^"+F),CHILD:new RegExp("^:(only|first|last|nth|nth-last)-(child|of-type)(?:\\("+M+"*(even|odd|(([+-]|)(\\d*)n|)"+M+"*(?:([+-]|)"+M+"*(\\d+)|))"+M+"*\\)|)","i"),bool:new RegExp("^(?:"+R+")$","i"),needslowgo:new RegExp("^"+M+"*[>+~]|:(even|odd|eq|gt|lt|nth|first|last)(?:\\("+M+"*((?:-\\d)?\\d*)"+M+"*\\)|)(?=[^-]|$)","i")},Y=/HTML$/i,Q=/^(?:input|select|textarea|button)$/i,J=/^h\d$/i,K=/^[^{]+\{\s*\[native \w/,Z=/^(?:#([\w-]+)|(\w+)|\.([\w-]+))$/,ee=/[+~]/,te=new RegExp("\\\\[\\da-fA-F]{1,6}"+M+"?|\\\\([^\\r\\n\\f])","g"),ne=function(e,t){var n="0x"+e.slice(1)-65536;return t||(n<0?String.fromCharCode(n+65536):String.fromCharCode(n>>10|55296,1023&n|56320))},re=/([\0-\x1f\x7f]|^-?\d)|^-$|[^\0-\x1f\x7f-\uFFFF\w-]/g,ie=function(e,t){return t?"\0"===e?"\ufffd":e.slice(0,-1)+"\\"+e.charCodeAt(e.length-1).toString(16)+" ":"\\"+e},oe=function(){T()},ae=be(function(e){return!0===e.disabled&&"fieldset"===e.nodeName.toLowerCase()},{dir:"parentNode",next:"legend"});try{H.apply(t=O.call(p.childNodes),p.childNodes),t[p.childNodes.length].nodeType}catch(e){H={apply:t.length?function(e,t){L.apply(e,O.call(t))}:function(e,t){var n=e.length,r=0;while(e[n++]=t[r++]);e.length=n-1}}}function se(t,e,n,r){var i,o,a,s,u,l,c,f=e&&e.ownerDocument,p=e?e.nodeType:9;if(n=n||[],"string"!=typeof t||!t||1!==p&&9!==p&&11!==p)return n;if(!r&&(T(e),e=e||C,E)){if(11!==p&&(u=Z.exec(t)))if(i=u[1]){if(9===p){if(!(a=e.getElementById(i)))return n;if(a.id===i)return n.push(a),n}else if(f&&(a=f.getElementById(i))&&y(e,a)&&a.id===i)return n.push(a),n}else{if(u[2])return H.apply(n,e.getElementsByTagName(t)),n;if((i=u[3])&&d.getElementsByClassName&&e.getElementsByClassName)return H.apply(n,e.getElementsByClassName(i)),n}if(d.qsa&&!N[t+" "]&&(!v||!v.test(t))&&(1!==p||"object"!==e.nodeName.toLowerCase())){if(c=t,f=e,1===p&&(U.test(t)||z.test(t))){(f=ee.test(t)&&ye(e.parentNode)||e)===e&&d.scope||((s=e.getAttribute("id"))?s=s.replace(re,ie):e.setAttribute("id",s=S)),o=(l=h(t)).length;while(o--)l[o]=(s?"#"+s:":scope")+" "+xe(l[o]);c=l.join(",")}try{return H.apply(n,f.querySelectorAll(c)),n}catch(e){N(t,!0)}finally{s===S&&e.removeAttribute("id")}}}return g(t.replace($,"$1"),e,n,r)}function ue(){var r=[];return function e(t,n){return r.push(t+" ")>b.cacheLength&&delete e[r.shift()],e[t+" "]=n}}function le(e){return e[S]=!0,e}function ce(e){var t=C.createElement("fieldset");try{return!!e(t)}catch(e){return!1}finally{t.parentNode&&t.parentNode.removeChild(t),t=null}}function fe(e,t){var n=e.split("|"),r=n.length;while(r--)b.attrHandle[n[r]]=t}function pe(e,t){var n=t&&e,r=n&&1===e.nodeType&&1===t.nodeType&&e.sourceIndex-t.sourceIndex;if(r)return r;if(n)while(n=n.nextSibling)if(n===t)return-1;return e?1:-1}function de(t){return function(e){return"input"===e.nodeName.toLowerCase()&&e.type===t}}function he(n){return function(e){var t=e.nodeName.toLowerCase();return("input"===t||"button"===t)&&e.type===n}}function ge(t){return function(e){return"form"in e?e.parentNode&&!1===e.disabled?"label"in e?"label"in e.parentNode?e.parentNode.disabled===t:e.disabled===t:e.isDisabled===t||e.isDisabled!==!t&&ae(e)===t:e.disabled===t:"label"in e&&e.disabled===t}}function ve(a){return le(function(o){return o=+o,le(function(e,t){var n,r=a([],e.length,o),i=r.length;while(i--)e[n=r[i]]&&(e[n]=!(t[n]=e[n]))})})}function ye(e){return e&&"undefined"!=typeof e.getElementsByTagName&&e}for(e in d=se.support={},i=se.isXML=function(e){var t=e.namespaceURI,n=(e.ownerDocument||e).documentElement;return!Y.test(t||n&&n.nodeName||"HTML")},T=se.setDocument=function(e){var t,n,r=e?e.ownerDocument||e:p;return r!=C&&9===r.nodeType&&r.documentElement&&(a=(C=r).documentElement,E=!i(C),p!=C&&(n=C.defaultView)&&n.top!==n&&(n.addEventListener?n.addEventListener("unload",oe,!1):n.attachEvent&&n.attachEvent("onunload",oe)),d.scope=ce(function(e){return a.appendChild(e).appendChild(C.createElement("div")),"undefined"!=typeof e.querySelectorAll&&!e.querySelectorAll(":scope fieldset div").length}),d.attributes=ce(function(e){return e.className="i",!e.getAttribute("className")}),d.getElementsByTagName=ce(function(e){return e.appendChild(C.createComment("")),!e.getElementsByTagName("*").length}),d.getElementsByClassName=K.test(C.getElementsByClassName),d.getById=ce(function(e){return a.appendChild(e).id=S,!C.getElementsByName||!C.getElementsByName(S).length}),d.getById?(b.filter.ID=function(e){var t=e.replace(te,ne);return function(e){return e.getAttribute("id")===t}},b.find.ID=function(e,t){if("undefined"!=typeof t.getElementById&&E){var n=t.getElementById(e);return n?[n]:[]}}):(b.filter.ID=function(e){var n=e.replace(te,ne);return function(e){var t="undefined"!=typeof e.getAttributeNode&&e.getAttributeNode("id");return t&&t.value===n}},b.find.ID=function(e,t){if("undefined"!=typeof t.getElementById&&E){var n,r,i,o=t.getElementById(e);if(o){if((n=o.getAttributeNode("id"))&&n.value===e)return[o];i=t.getElementsByName(e),r=0;while(o=i[r++])if((n=o.getAttributeNode("id"))&&n.value===e)return[o]}return[]}}),b.find.TAG=d.getElementsByTagName?function(e,t){return"undefined"!=typeof t.getElementsByTagName?t.getElementsByTagName(e):d.qsa?t.querySelectorAll(e):void 0}:function(e,t){var n,r=[],i=0,o=t.getElementsByTagName(e);if("*"===e){while(n=o[i++])1===n.nodeType&&r.push(n);return r}return o},b.find.CLASS=d.getElementsByClassName&&function(e,t){if("undefined"!=typeof t.getElementsByClassName&&E)return t.getElementsByClassName(e)},s=[],v=[],(d.qsa=K.test(C.querySelectorAll))&&(ce(function(e){var t;a.appendChild(e).innerHTML="<a id='"+S+"'></a><select id='"+S+"-\r\\' msallowcapture=''><option selected=''></option></select>",e.querySelectorAll("[msallowcapture^='']").length&&v.push("[*^$]="+M+"*(?:''|\"\")"),e.querySelectorAll("[selected]").length||v.push("\\["+M+"*(?:value|"+R+")"),e.querySelectorAll("[id~="+S+"-]").length||v.push("~="),(t=C.createElement("input")).setAttribute("name",""),e.appendChild(t),e.querySelectorAll("[name='']").length||v.push("\\["+M+"*name"+M+"*="+M+"*(?:''|\"\")"),e.querySelectorAll(":checked").length||v.push(":checked"),e.querySelectorAll("a#"+S+"+*").length||v.push(".#.+[+~]"),e.querySelectorAll("\\\f"),v.push("[\\r\\n\\f]")}),ce(function(e){e.innerHTML="<a href='' disabled='disabled'></a><select disabled='disabled'><option/></select>";var t=C.createElement("input");t.setAttribute("type","hidden"),e.appendChild(t).setAttribute("name","D"),e.querySelectorAll("[name=d]").length&&v.push("name"+M+"*[*^$|!~]?="),2!==e.querySelectorAll(":enabled").length&&v.push(":enabled",":disabled"),a.appendChild(e).disabled=!0,2!==e.querySelectorAll(":disabled").length&&v.push(":enabled",":disabled"),e.querySelectorAll("*,:x"),v.push(",.*:")})),(d.matchesSelector=K.test(c=a.matches||a.webkitMatchesSelector||a.mozMatchesSelector||a.oMatchesSelector||a.msMatchesSelector))&&ce(function(e){d.disconnectedMatch=c.call(e,"*"),c.call(e,"[s!='']:x"),s.push("!=",F)}),v=v.length&&new RegExp(v.join("|")),s=s.length&&new RegExp(s.join("|")),t=K.test(a.compareDocumentPosition),y=t||K.test(a.contains)?function(e,t){var n=9===e.nodeType?e.documentElement:e,r=t&&t.parentNode;return e===r||!(!r||1!==r.nodeType||!(n.contains?n.contains(r):e.compareDocumentPosition&&16&e.compareDocumentPosition(r)))}:function(e,t){if(t)while(t=t.parentNode)if(t===e)return!0;return!1},D=t?function(e,t){if(e===t)return l=!0,0;var n=!e.compareDocumentPosition-!t.compareDocumentPosition;return n||(1&(n=(e.ownerDocument||e)==(t.ownerDocument||t)?e.compareDocumentPosition(t):1)||!d.sortDetached&&t.compareDocumentPosition(e)===n?e==C||e.ownerDocument==p&&y(p,e)?-1:t==C||t.ownerDocument==p&&y(p,t)?1:u?P(u,e)-P(u,t):0:4&n?-1:1)}:function(e,t){if(e===t)return l=!0,0;var n,r=0,i=e.parentNode,o=t.parentNode,a=[e],s=[t];if(!i||!o)return e==C?-1:t==C?1:i?-1:o?1:u?P(u,e)-P(u,t):0;if(i===o)return pe(e,t);n=e;while(n=n.parentNode)a.unshift(n);n=t;while(n=n.parentNode)s.unshift(n);while(a[r]===s[r])r++;return r?pe(a[r],s[r]):a[r]==p?-1:s[r]==p?1:0}),C},se.matches=function(e,t){return se(e,null,null,t)},se.matchesSelector=function(e,t){if(T(e),d.matchesSelector&&E&&!N[t+" "]&&(!s||!s.test(t))&&(!v||!v.test(t)))try{var n=c.call(e,t);if(n||d.disconnectedMatch||e.document&&11!==e.document.nodeType)return n}catch(e){N(t,!0)}return 0<se(t,C,null,[e]).length},se.contains=function(e,t){return(e.ownerDocument||e)!=C&&T(e),y(e,t)},se.attr=function(e,t){(e.ownerDocument||e)!=C&&T(e);var n=b.attrHandle[t.toLowerCase()],r=n&&j.call(b.attrHandle,t.toLowerCase())?n(e,t,!E):void 0;return void 0!==r?r:d.attributes||!E?e.getAttribute(t):(r=e.getAttributeNode(t))&&r.specified?r.value:null},se.escape=function(e){return(e+"").replace(re,ie)},se.error=function(e){throw new Error("Syntax error, unrecognized expression: "+e)},se.uniqueSort=function(e){var t,n=[],r=0,i=0;if(l=!d.detectDuplicates,u=!d.sortStable&&e.slice(0),e.sort(D),l){while(t=e[i++])t===e[i]&&(r=n.push(i));while(r--)e.splice(n[r],1)}return u=null,e},o=se.getText=function(e){var t,n="",r=0,i=e.nodeType;if(i){if(1===i||9===i||11===i){if("string"==typeof e.textContent)return e.textContent;for(e=e.firstChild;e;e=e.nextSibling)n+=o(e)}else if(3===i||4===i)return e.nodeValue}else while(t=e[r++])n+=o(t);return n},(b=se.selectors={cacheLength:50,createPseudo:le,match:G,attrHandle:{},find:{},relative:{">":{dir:"parentNode",first:!0}," ":{dir:"parentNode"},"+":{dir:"previousSibling",first:!0},"~":{dir:"previousSibling"}},preFilter:{ATTR:function(e){return e[1]=e[1].replace(te,ne),e[3]=(e[3]||e[4]||e[5]||"").replace(te,ne),"~="===e[2]&&(e[3]=" "+e[3]+" "),e.slice(0,4)},CHILD:function(e){return e[1]=e[1].toLowerCase(),"nth"===e[1].slice(0,3)?(e[3]||se.error(e[0]),e[4]=+(e[4]?e[5]+(e[6]||1):2*("even"===e[3]||"odd"===e[3])),e[5]=+(e[7]+e[8]||"odd"===e[3])):e[3]&&se.error(e[0]),e},PSEUDO:function(e){var t,n=!e[6]&&e[2];return G.CHILD.test(e[0])?null:(e[3]?e[2]=e[4]||e[5]||"":n&&X.test(n)&&(t=h(n,!0))&&(t=n.indexOf(")",n.length-t)-n.length)&&(e[0]=e[0].slice(0,t),e[2]=n.slice(0,t)),e.slice(0,3))}},filter:{TAG:function(e){var t=e.replace(te,ne).toLowerCase();return"*"===e?function(){return!0}:function(e){return e.nodeName&&e.nodeName.toLowerCase()===t}},CLASS:function(e){var t=m[e+" "];return t||(t=new RegExp("(^|"+M+")"+e+"("+M+"|$)"))&&m(e,function(e){return t.test("string"==typeof e.className&&e.className||"undefined"!=typeof e.getAttribute&&e.getAttribute("class")||"")})},ATTR:function(n,r,i){return function(e){var t=se.attr(e,n);return null==t?"!="===r:!r||(t+="","="===r?t===i:"!="===r?t!==i:"^="===r?i&&0===t.indexOf(i):"*="===r?i&&-1<t.indexOf(i):"$="===r?i&&t.slice(-i.length)===i:"~="===r?-1<(" "+t.replace(B," ")+" ").indexOf(i):"|="===r&&(t===i||t.slice(0,i.length+1)===i+"-"))}},CHILD:function(h,e,t,g,v){var y="nth"!==h.slice(0,3),m="last"!==h.slice(-4),x="of-type"===e;return 1===g&&0===v?function(e){return!!e.parentNode}:function(e,t,n){var r,i,o,a,s,u,l=y!==m?"nextSibling":"previousSibling",c=e.parentNode,f=x&&e.nodeName.toLowerCase(),p=!n&&!x,d=!1;if(c){if(y){while(l){a=e;while(a=a[l])if(x?a.nodeName.toLowerCase()===f:1===a.nodeType)return!1;u=l="only"===h&&!u&&"nextSibling"}return!0}if(u=[m?c.firstChild:c.lastChild],m&&p){d=(s=(r=(i=(o=(a=c)[S]||(a[S]={}))[a.uniqueID]||(o[a.uniqueID]={}))[h]||[])[0]===k&&r[1])&&r[2],a=s&&c.childNodes[s];while(a=++s&&a&&a[l]||(d=s=0)||u.pop())if(1===a.nodeType&&++d&&a===e){i[h]=[k,s,d];break}}else if(p&&(d=s=(r=(i=(o=(a=e)[S]||(a[S]={}))[a.uniqueID]||(o[a.uniqueID]={}))[h]||[])[0]===k&&r[1]),!1===d)while(a=++s&&a&&a[l]||(d=s=0)||u.pop())if((x?a.nodeName.toLowerCase()===f:1===a.nodeType)&&++d&&(p&&((i=(o=a[S]||(a[S]={}))[a.uniqueID]||(o[a.uniqueID]={}))[h]=[k,d]),a===e))break;return(d-=v)===g||d%g==0&&0<=d/g}}},PSEUDO:function(e,o){var t,a=b.pseudos[e]||b.setFilters[e.toLowerCase()]||se.error("unsupported pseudo: "+e);return a[S]?a(o):1<a.length?(t=[e,e,"",o],b.setFilters.hasOwnProperty(e.toLowerCase())?le(function(e,t){var n,r=a(e,o),i=r.length;while(i--)e[n=P(e,r[i])]=!(t[n]=r[i])}):function(e){return a(e,0,t)}):a}},pseudos:{not:le(function(e){var r=[],i=[],s=f(e.replace($,"$1"));return s[S]?le(function(e,t,n,r){var i,o=s(e,null,r,[]),a=e.length;while(a--)(i=o[a])&&(e[a]=!(t[a]=i))}):function(e,t,n){return r[0]=e,s(r,null,n,i),r[0]=null,!i.pop()}}),has:le(function(t){return function(e){return 0<se(t,e).length}}),contains:le(function(t){return t=t.replace(te,ne),function(e){return-1<(e.textContent||o(e)).indexOf(t)}}),lang:le(function(n){return V.test(n||"")||se.error("unsupported lang: "+n),n=n.replace(te,ne).toLowerCase(),function(e){var t;do{if(t=E?e.lang:e.getAttribute("xml:lang")||e.getAttribute("lang"))return(t=t.toLowerCase())===n||0===t.indexOf(n+"-")}while((e=e.parentNode)&&1===e.nodeType);return!1}}),target:function(e){var t=n.location&&n.location.hash;return t&&t.slice(1)===e.id},root:function(e){return e===a},focus:function(e){return e===C.activeElement&&(!C.hasFocus||C.hasFocus())&&!!(e.type||e.href||~e.tabIndex)},enabled:ge(!1),disabled:ge(!0),checked:function(e){var t=e.nodeName.toLowerCase();return"input"===t&&!!e.checked||"option"===t&&!!e.selected},selected:function(e){return e.parentNode&&e.parentNode.selectedIndex,!0===e.selected},empty:function(e){for(e=e.firstChild;e;e=e.nextSibling)if(e.nodeType<6)return!1;return!0},parent:function(e){return!b.pseudos.empty(e)},header:function(e){return J.test(e.nodeName)},input:function(e){return Q.test(e.nodeName)},button:function(e){var t=e.nodeName.toLowerCase();return"input"===t&&"button"===e.type||"button"===t},text:function(e){var t;return"input"===e.nodeName.toLowerCase()&&"text"===e.type&&(null==(t=e.getAttribute("type"))||"text"===t.toLowerCase())},first:ve(function(){return[0]}),last:ve(function(e,t){return[t-1]}),eq:ve(function(e,t,n){return[n<0?n+t:n]}),even:ve(function(e,t){for(var n=0;n<t;n+=2)e.push(n);return e}),odd:ve(function(e,t){for(var n=1;n<t;n+=2)e.push(n);return e}),lt:ve(function(e,t,n){for(var r=n<0?n+t:t<n?t:n;0<=--r;)e.push(r);return e}),gt:ve(function(e,t,n){for(var r=n<0?n+t:n;++r<t;)e.push(r);return e})}}).pseudos.nth=b.pseudos.eq,{radio:!0,checkbox:!0,file:!0,password:!0,image:!0})b.pseudos[e]=de(e);for(e in{submit:!0,reset:!0})b.pseudos[e]=he(e);function me(){}function xe(e){for(var t=0,n=e.length,r="";t<n;t++)r+=e[t].value;return r}function be(s,e,t){var u=e.dir,l=e.next,c=l||u,f=t&&"parentNode"===c,p=r++;return e.first?function(e,t,n){while(e=e[u])if(1===e.nodeType||f)return s(e,t,n);return!1}:function(e,t,n){var r,i,o,a=[k,p];if(n){while(e=e[u])if((1===e.nodeType||f)&&s(e,t,n))return!0}else while(e=e[u])if(1===e.nodeType||f)if(i=(o=e[S]||(e[S]={}))[e.uniqueID]||(o[e.uniqueID]={}),l&&l===e.nodeName.toLowerCase())e=e[u]||e;else{if((r=i[c])&&r[0]===k&&r[1]===p)return a[2]=r[2];if((i[c]=a)[2]=s(e,t,n))return!0}return!1}}function we(i){return 1<i.length?function(e,t,n){var r=i.length;while(r--)if(!i[r](e,t,n))return!1;return!0}:i[0]}function Te(e,t,n,r,i){for(var o,a=[],s=0,u=e.length,l=null!=t;s<u;s++)(o=e[s])&&(n&&!n(o,r,i)||(a.push(o),l&&t.push(s)));return a}function Ce(d,h,g,v,y,e){return v&&!v[S]&&(v=Ce(v)),y&&!y[S]&&(y=Ce(y,e)),le(function(e,t,n,r){var i,o,a,s=[],u=[],l=t.length,c=e||function(e,t,n){for(var r=0,i=t.length;r<i;r++)se(e,t[r],n);return n}(h||"*",n.nodeType?[n]:n,[]),f=!d||!e&&h?c:Te(c,s,d,n,r),p=g?y||(e?d:l||v)?[]:t:f;if(g&&g(f,p,n,r),v){i=Te(p,u),v(i,[],n,r),o=i.length;while(o--)(a=i[o])&&(p[u[o]]=!(f[u[o]]=a))}if(e){if(y||d){if(y){i=[],o=p.length;while(o--)(a=p[o])&&i.push(f[o]=a);y(null,p=[],i,r)}o=p.length;while(o--)(a=p[o])&&-1<(i=y?P(e,a):s[o])&&(e[i]=!(t[i]=a))}}else p=Te(p===t?p.splice(l,p.length):p),y?y(null,t,p,r):H.apply(t,p)})}function Ee(e){for(var i,t,n,r=e.length,o=b.relative[e[0].type],a=o||b.relative[" "],s=o?1:0,u=be(function(e){return e===i},a,!0),l=be(function(e){return-1<P(i,e)},a,!0),c=[function(e,t,n){var r=!o&&(n||t!==w)||((i=t).nodeType?u(e,t,n):l(e,t,n));return i=null,r}];s<r;s++)if(t=b.relative[e[s].type])c=[be(we(c),t)];else{if((t=b.filter[e[s].type].apply(null,e[s].matches))[S]){for(n=++s;n<r;n++)if(b.relative[e[n].type])break;return Ce(1<s&&we(c),1<s&&xe(e.slice(0,s-1).concat({value:" "===e[s-2].type?"*":""})).replace($,"$1"),t,s<n&&Ee(e.slice(s,n)),n<r&&Ee(e=e.slice(n)),n<r&&xe(e))}c.push(t)}return we(c)}return me.prototype=b.filters=b.pseudos,b.setFilters=new me,h=se.tokenize=function(e,t){var n,r,i,o,a,s,u,l=x[e+" "];if(l)return t?0:l.slice(0);a=e,s=[],u=b.preFilter;while(a){for(o in n&&!(r=_.exec(a))||(r&&(a=a.slice(r[0].length)||a),s.push(i=[])),n=!1,(r=z.exec(a))&&(n=r.shift(),i.push({value:n,type:r[0].replace($," ")}),a=a.slice(n.length)),b.filter)!(r=G[o].exec(a))||u[o]&&!(r=u[o](r))||(n=r.shift(),i.push({value:n,type:o,matches:r}),a=a.slice(n.length));if(!n)break}return t?a.length:a?se.error(e):x(e,s).slice(0)},f=se.compile=function(e,t){var n,v,y,m,x,r,i=[],o=[],a=A[e+" "];if(!a){t||(t=h(e)),n=t.length;while(n--)(a=Ee(t[n]))[S]?i.push(a):o.push(a);(a=A(e,(v=o,m=0<(y=i).length,x=0<v.length,r=function(e,t,n,r,i){var o,a,s,u=0,l="0",c=e&&[],f=[],p=w,d=e||x&&b.find.TAG("*",i),h=k+=null==p?1:Math.random()||.1,g=d.length;for(i&&(w=t==C||t||i);l!==g&&null!=(o=d[l]);l++){if(x&&o){a=0,t||o.ownerDocument==C||(T(o),n=!E);while(s=v[a++])if(s(o,t||C,n)){r.push(o);break}i&&(k=h)}m&&((o=!s&&o)&&u--,e&&c.push(o))}if(u+=l,m&&l!==u){a=0;while(s=y[a++])s(c,f,t,n);if(e){if(0<u)while(l--)c[l]||f[l]||(f[l]=q.call(r));f=Te(f)}H.apply(r,f),i&&!e&&0<f.length&&1<u+y.length&&se.uniqueSort(r)}return i&&(k=h,w=p),c},m?le(r):r))).selector=e}return a},g=se.select=function(e,t,n,r){var i,o,a,s,u,l="function"==typeof e&&e,c=!r&&h(e=l.selector||e);if(n=n||[],1===c.length){if(2<(o=c[0]=c[0].slice(0)).length&&"ID"===(a=o[0]).type&&9===t.nodeType&&E&&b.relative[o[1].type]){if(!(t=(b.find.ID(a.matches[0].replace(te,ne),t)||[])[0]))return n;l&&(t=t.parentNode),e=e.slice(o.shift().value.length)}i=G.needslowgo.test(e)?0:o.length;while(i--){if(a=o[i],b.relative[s=a.type])break;if((u=b.find[s])&&(r=u(a.matches[0].replace(te,ne),ee.test(o[0].type)&&ye(t.parentNode)||t))){if(o.splice(i,1),!(e=r.length&&xe(o)))return H.apply(n,r),n;break}}}return(l||f(e,c))(r,t,!E,n,!t||ee.test(e)&&ye(t.parentNode)||t),n},d.sortStable=S.split("").sort(D).join("")===S,d.detectDuplicates=!!l,T(),d.sortDetached=ce(function(e){return 1&e.compareDocumentPosition(C.createElement("fieldset"))}),ce(function(e){return e.innerHTML="<a href='#'></a>","#"===e.firstChild.getAttribute("href")})||fe("type|href|height|width",function(e,t,n){if(!n)return e.getAttribute(t,"type"===t.toLowerCase()?1:2)}),d.attributes&&ce(function(e){return e.innerHTML="<input/>",e.firstChild.setAttribute("value",""),""===e.firstChild.getAttribute("value")})||fe("value",function(e,t,n){if(!n&&"input"===e.nodeName.toLowerCase())return e.defaultValue}),ce(function(e){return null==e.getAttribute("disabled")})||fe(R,function(e,t,n){var r;if(!n)return!0===e[t]?t.toLowerCase():(r=e.getAttributeNode(t))&&r.specified?r.value:null}),se}(C);S.find=d,S.expr=d.selectors,S.expr[":"]=S.expr.pseudos,S.uniqueSort=S.unique=d.uniqueSort,S.text=d.getText,S.isXMLDoc=d.isXML,S.contains=d.contains,S.escapeSelector=d.escape;var h=function(e,t,n){var r=[],i=void 0!==n;while((e=e[t])&&9!==e.nodeType)if(1===e.nodeType){if(i&&S(e).is(n))break;r.push(e)}return r},T=function(e,t){for(var n=[];e;e=e.nextSibling)1===e.nodeType&&e!==t&&n.push(e);return n},k=S.expr.match.needslowgo;function A(e,t){return e.nodeName&&e.nodeName.toLowerCase()===t.toLowerCase()}var N=/^<([a-z][^\/\0>:\x20\t\r\n\f]*)[\x20\t\r\n\f]*\/?>(?:<\/\1>|)$/i;function D(e,n,r){return m(n)?S.grep(e,function(e,t){return!!n.call(e,t,e)!==r}):n.nodeType?S.grep(e,function(e){return e===n!==r}):"string"!=typeof n?S.grep(e,function(e){return-1<i.call(n,e)!==r}):S.filter(n,e,r)}S.filter=function(e,t,n){var r=t[0];return n&&(e=":not("+e+")"),1===t.length&&1===r.nodeType?S.find.matchesSelector(r,e)?[r]:[]:S.find.matches(e,S.grep(t,function(e){return 1===e.nodeType}))},S.fn.extend({find:function(e){var t,n,r=this.length,i=this;if("string"!=typeof e)return this.pushStack(S(e).filter(function(){for(t=0;t<r;t++)if(S.contains(i[t],this))return!0}));for(n=this.pushStack([]),t=0;t<r;t++)S.find(e,i[t],n);return 1<r?S.uniqueSort(n):n},filter:function(e){return this.pushStack(D(this,e||[],!1))},not:function(e){return this.pushStack(D(this,e||[],!0))},is:function(e){return!!D(this,"string"==typeof e&&k.test(e)?S(e):e||[],!1).length}});var j,q=/^(?:\s*(<[\w\W]+>)[^>]*|#([\w-]+))$/;(S.fn.init=function(e,t,n){var r,i;if(!e)return this;if(n=n||j,"string"==typeof e){if(!(r="<"===e[0]&&">"===e[e.length-1]&&3<=e.length?[null,e,null]:q.exec(e))||!r[1]&&t)return!t||t.jquery?(t||n).find(e):this.constructor(t).find(e);if(r[1]){if(t=t instanceof S?t[0]:t,S.merge(this,S.parseHTML(r[1],t&&t.nodeType?t.ownerDocument||t:E,!0)),N.test(r[1])&&S.isPlainObject(t))for(r in t)m(this[r])?this[r](t[r]):this.attr(r,t[r]);return this}return(i=E.getElementById(r[2]))&&(this[0]=i,this.length=1),this}return e.nodeType?(this[0]=e,this.length=1,this):m(e)?void 0!==n.ready?n.ready(e):e(S):S.makeArray(e,this)}).prototype=S.fn,j=S(E);var L=/^(?:parents|prev(?:Until|All))/,H={children:!0,contents:!0,next:!0,prev:!0};function O(e,t){while((e=e[t])&&1!==e.nodeType);return e}S.fn.extend({has:function(e){var t=S(e,this),n=t.length;return this.filter(function(){for(var e=0;e<n;e++)if(S.contains(this,t[e]))return!0})},closest:function(e,t){var n,r=0,i=this.length,o=[],a="string"!=typeof e&&S(e);if(!k.test(e))for(;r<i;r++)for(n=this[r];n&&n!==t;n=n.parentNode)if(n.nodeType<11&&(a?-1<a.index(n):1===n.nodeType&&S.find.matchesSelector(n,e))){o.push(n);break}return this.pushStack(1<o.length?S.uniqueSort(o):o)},index:function(e){return e?"string"==typeof e?i.call(S(e),this[0]):i.call(this,e.jquery?e[0]:e):this[0]&&this[0].parentNode?this.first().prevAll().length:-1},add:function(e,t){return this.pushStack(S.uniqueSort(S.merge(this.get(),S(e,t))))},addBack:function(e){return this.add(null==e?this.prevObject:this.prevObject.filter(e))}}),S.each({parent:function(e){var t=e.parentNode;return t&&11!==t.nodeType?t:null},parents:function(e){return h(e,"parentNode")},parentsUntil:function(e,t,n){return h(e,"parentNode",n)},next:function(e){return O(e,"nextSibling")},prev:function(e){return O(e,"previousSibling")},nextAll:function(e){return h(e,"nextSibling")},prevAll:function(e){return h(e,"previousSibling")},nextUntil:function(e,t,n){return h(e,"nextSibling",n)},prevUntil:function(e,t,n){return h(e,"previousSibling",n)},siblings:function(e){return T((e.parentNode||{}).firstChild,e)},children:function(e){return T(e.firstChild)},contents:function(e){return null!=e.contentDocument&&r(e.contentDocument)?e.contentDocument:(A(e,"template")&&(e=e.content||e),S.merge([],e.childNodes))}},function(r,i){S.fn[r]=function(e,t){var n=S.map(this,i,e);return"Until"!==r.slice(-5)&&(t=e),t&&"string"==typeof t&&(n=S.filter(t,n)),1<this.length&&(H[r]||S.uniqueSort(n),L.test(r)&&n.reverse()),this.pushStack(n)}});var P=/[^\x20\t\r\n\f]+/g;function R(e){return e}function M(e){throw e}function I(e,t,n,r){var i;try{e&&m(i=e.promise)?i.call(e).done(t).fail(n):e&&m(i=e.then)?i.call(e,t,n):t.apply(void 0,[e].slice(r))}catch(e){n.apply(void 0,[e])}}S.Callbacks=function(r){var e,n;r="string"==typeof r?(e=r,n={},S.each(e.match(P)||[],function(e,t){n[t]=!0}),n):S.extend({},r);var i,t,o,a,s=[],u=[],l=-1,c=function(){for(a=a||r.once,o=i=!0;u.length;l=-1){t=u.shift();while(++l<s.length)!1===s[l].apply(t[0],t[1])&&r.stopOnFalse&&(l=s.length,t=!1)}r.memory||(t=!1),i=!1,a&&(s=t?[]:"")},f={add:function(){return s&&(t&&!i&&(l=s.length-1,u.push(t)),function n(e){S.each(e,function(e,t){m(t)?r.unique&&f.has(t)||s.push(t):t&&t.length&&"string"!==w(t)&&n(t)})}(arguments),t&&!i&&c()),this},remove:function(){return S.each(arguments,function(e,t){var n;while(-1<(n=S.inArray(t,s,n)))s.splice(n,1),n<=l&&l--}),this},has:function(e){return e?-1<S.inArray(e,s):0<s.length},empty:function(){return s&&(s=[]),this},disable:function(){return a=u=[],s=t="",this},disabled:function(){return!s},lock:function(){return a=u=[],t||i||(s=t=""),this},locked:function(){return!!a},fireWith:function(e,t){return a||(t=[e,(t=t||[]).slice?t.slice():t],u.push(t),i||c()),this},fire:function(){return f.fireWith(this,arguments),this},fired:function(){return!!o}};return f},S.extend({Deferred:function(e){var o=[["notify","progress",S.Callbacks("memory"),S.Callbacks("memory"),2],["resolve","done",S.Callbacks("once memory"),S.Callbacks("once memory"),0,"resolved"],["reject","fail",S.Callbacks("once memory"),S.Callbacks("once memory"),1,"rejected"]],i="pending",a={state:function(){return i},always:function(){return s.done(arguments).fail(arguments),this},"catch":function(e){return a.then(null,e)},pipe:function(){var i=arguments;return S.Deferred(function(r){S.each(o,function(e,t){var n=m(i[t[4]])&&i[t[4]];s[t[1]](function(){var e=n&&n.apply(this,arguments);e&&m(e.promise)?e.promise().progress(r.notify).done(r.resolve).fail(r.reject):r[t[0]+"With"](this,n?[e]:arguments)})}),i=null}).promise()},then:function(t,n,r){var u=0;function l(i,o,a,s){return function(){var n=this,r=arguments,e=function(){var e,t;if(!(i<u)){if((e=a.apply(n,r))===o.promise())throw new TypeError("Thenable self-resolution");t=e&&("object"==typeof e||"function"==typeof e)&&e.then,m(t)?s?t.call(e,l(u,o,R,s),l(u,o,M,s)):(u++,t.call(e,l(u,o,R,s),l(u,o,M,s),l(u,o,R,o.notifyWith))):(a!==R&&(n=void 0,r=[e]),(s||o.resolveWith)(n,r))}},t=s?e:function(){try{e()}catch(e){S.Deferred.exceptionHook&&S.Deferred.exceptionHook(e,t.stackTrace),u<=i+1&&(a!==M&&(n=void 0,r=[e]),o.rejectWith(n,r))}};i?t():(S.Deferred.getStackHook&&(t.stackTrace=S.Deferred.getStackHook()),C.setTimeout(t))}}return S.Deferred(function(e){o[0][3].add(l(0,e,m(r)?r:R,e.notifyWith)),o[1][3].add(l(0,e,m(t)?t:R)),o[2][3].add(l(0,e,m(n)?n:M))}).promise()},promise:function(e){return null!=e?S.extend(e,a):a}},s={};return S.each(o,function(e,t){var n=t[2],r=t[5];a[t[1]]=n.add,r&&n.add(function(){i=r},o[3-e][2].disable,o[3-e][3].disable,o[0][2].lock,o[0][3].lock),n.add(t[3].fire),s[t[0]]=function(){return s[t[0]+"With"](this===s?void 0:this,arguments),this},s[t[0]+"With"]=n.fireWith}),a.promise(s),e&&e.call(s,s),s},when:function(e){var n=arguments.length,t=n,r=Array(t),i=s.call(arguments),o=S.Deferred(),a=function(t){return function(e){r[t]=this,i[t]=1<arguments.length?s.call(arguments):e,--n||o.resolveWith(r,i)}};if(n<=1&&(I(e,o.done(a(t)).resolve,o.reject,!n),"pending"===o.state()||m(i[t]&&i[t].then)))return o.then();while(t--)I(i[t],a(t),o.reject);return o.promise()}});var W=/^(Eval|Internal|Range|Reference|Syntax|Type|URI)Error$/;S.Deferred.exceptionHook=function(e,t){C.console&&C.console.warn&&e&&W.test(e.name)&&C.console.warn("jQuery.Deferred exception: "+e.message,e.stack,t)},S.readyException=function(e){C.setTimeout(function(){throw e})};var F=S.Deferred();function B(){E.removeEventListener("DOMContentLoaded",B),C.removeEventListener("load",B),S.ready()}S.fn.ready=function(e){return F.then(e)["catch"](function(e){S.readyException(e)}),this},S.extend({isReady:!1,readyWait:1,ready:function(e){(!0===e?--S.readyWait:S.isReady)||(S.isReady=!0)!==e&&0<--S.readyWait||F.resolveWith(E,[S])}}),S.ready.then=F.then,"complete"===E.readyState||"loading"!==E.readyState&&!E.documentElement.doScroll?C.setTimeout(S.ready):(E.addEventListener("DOMContentLoaded",B),C.addEventListener("load",B));var $=function(e,t,n,r,i,o,a){var s=0,u=e.length,l=null==n;if("object"===w(n))for(s in i=!0,n)$(e,t,s,n[s],!0,o,a);else if(void 0!==r&&(i=!0,m(r)||(a=!0),l&&(a?(t.call(e,r),t=null):(l=t,t=function(e,t,n){return l.call(S(e),n)})),t))for(;s<u;s++)t(e[s],n,a?r:r.call(e[s],s,t(e[s],n)));return i?e:l?t.call(e):u?t(e[0],n):o},_=/^-ms-/,z=/-([a-z])/g;function U(e,t){return t.toUpperCase()}function X(e){return e.replace(_,"ms-").replace(z,U)}var V=function(e){return 1===e.nodeType||9===e.nodeType||!+e.nodeType};function G(){this.expando=S.expando+G.uid++}G.uid=1,G.prototype={cache:function(e){var t=e[this.expando];return t||(t={},V(e)&&(e.nodeType?e[this.expando]=t:Object.defineProperty(e,this.expando,{value:t,configurable:!0}))),t},set:function(e,t,n){var r,i=this.cache(e);if("string"==typeof t)i[X(t)]=n;else for(r in t)i[X(r)]=t[r];return i},get:function(e,t){return void 0===t?this.cache(e):e[this.expando]&&e[this.expando][X(t)]},access:function(e,t,n){return void 0===t||t&&"string"==typeof t&&void 0===n?this.get(e,t):(this.set(e,t,n),void 0!==n?n:t)},remove:function(e,t){var n,r=e[this.expando];if(void 0!==r){if(void 0!==t){n=(t=Array.isArray(t)?t.map(X):(t=X(t))in r?[t]:t.match(P)||[]).length;while(n--)delete r[t[n]]}(void 0===t||S.isEmptyObject(r))&&(e.nodeType?e[this.expando]=void 0:delete e[this.expando])}},hasData:function(e){var t=e[this.expando];return void 0!==t&&!S.isEmptyObject(t)}};var Y=new G,Q=new G,J=/^(?:\{[\w\W]*\}|\[[\w\W]*\])$/,K=/[A-Z]/g;function Z(e,t,n){var r,i;if(void 0===n&&1===e.nodeType)if(r="data-"+t.replace(K,"-$&").toLowerCase(),"string"==typeof(n=e.getAttribute(r))){try{n="true"===(i=n)||"false"!==i&&("null"===i?null:i===+i+""?+i:J.test(i)?JSON.parse(i):i)}catch(e){}Q.set(e,t,n)}else n=void 0;return n}S.extend({hasData:function(e){return Q.hasData(e)||Y.hasData(e)},data:function(e,t,n){return Q.access(e,t,n)},removeData:function(e,t){Q.remove(e,t)},_data:function(e,t,n){return Y.access(e,t,n)},_removeData:function(e,t){Y.remove(e,t)}}),S.fn.extend({data:function(n,e){var t,r,i,o=this[0],a=o&&o.attributes;if(void 0===n){if(this.length&&(i=Q.get(o),1===o.nodeType&&!Y.get(o,"hasDataAttrs"))){t=a.length;while(t--)a[t]&&0===(r=a[t].name).indexOf("data-")&&(r=X(r.slice(5)),Z(o,r,i[r]));Y.set(o,"hasDataAttrs",!0)}return i}return"object"==typeof n?this.each(function(){Q.set(this,n)}):$(this,function(e){var t;if(o&&void 0===e)return void 0!==(t=Q.get(o,n))?t:void 0!==(t=Z(o,n))?t:void 0;this.each(function(){Q.set(this,n,e)})},null,e,1<arguments.length,null,!0)},removeData:function(e){return this.each(function(){Q.remove(this,e)})}}),S.extend({queue:function(e,t,n){var r;if(e)return t=(t||"fx")+"queue",r=Y.get(e,t),n&&(!r||Array.isArray(n)?r=Y.access(e,t,S.makeArray(n)):r.push(n)),r||[]},dequeue:function(e,t){t=t||"fx";var n=S.queue(e,t),r=n.length,i=n.shift(),o=S._queueHooks(e,t);"inprogress"===i&&(i=n.shift(),r--),i&&("fx"===t&&n.unshift("inprogress"),delete o.stop,i.call(e,function(){S.dequeue(e,t)},o)),!r&&o&&o.empty.fire()},_queueHooks:function(e,t){var n=t+"queueHooks";return Y.get(e,n)||Y.access(e,n,{empty:S.Callbacks("once memory").add(function(){Y.remove(e,[t+"queue",n])})})}}),S.fn.extend({queue:function(t,n){var e=2;return"string"!=typeof t&&(n=t,t="fx",e--),arguments.length<e?S.queue(this[0],t):void 0===n?this:this.each(function(){var e=S.queue(this,t,n);S._queueHooks(this,t),"fx"===t&&"inprogress"!==e[0]&&S.dequeue(this,t)})},dequeue:function(e){return this.each(function(){S.dequeue(this,e)})},clearQueue:function(e){return this.queue(e||"fx",[])},promise:function(e,t){var n,r=1,i=S.Deferred(),o=this,a=this.length,s=function(){--r||i.resolveWith(o,[o])};"string"!=typeof e&&(t=e,e=void 0),e=e||"fx";while(a--)(n=Y.get(o[a],e+"queueHooks"))&&n.empty&&(r++,n.empty.add(s));return s(),i.promise(t)}});var ee=/[+-]?(?:\d*\.|)\d+(?:[eE][+-]?\d+|)/.source,te=new RegExp("^(?:([+-])=|)("+ee+")([a-z%]*)$","i"),ne=["Top","Right","Bottom","Left"],re=E.documentElement,ie=function(e){return S.contains(e.ownerDocument,e)},oe={composed:!0};re.getRootNode&&(ie=function(e){return S.contains(e.ownerDocument,e)||e.getRootNode(oe)===e.ownerDocument});var ae=function(e,t){return"none"===(e=t||e).style.display||""===e.style.display&&ie(e)&&"none"===S.css(e,"display")};function se(e,t,n,r){var i,o,a=20,s=r?function(){return r.cur()}:function(){return S.css(e,t,"")},u=s(),l=n&&n[3]||(S.cssNumber[t]?"":"px"),c=e.nodeType&&(S.cssNumber[t]||"px"!==l&&+u)&&te.exec(S.css(e,t));if(c&&c[3]!==l){u/=2,l=l||c[3],c=+u||1;while(a--)S.style(e,t,c+l),(1-o)*(1-(o=s()/u||.5))<=0&&(a=0),c/=o;c*=2,S.style(e,t,c+l),n=n||[]}return n&&(c=+c||+u||0,i=n[1]?c+(n[1]+1)*n[2]:+n[2],r&&(r.unit=l,r.start=c,r.end=i)),i}var ue={};function le(e,t){for(var n,r,i,o,a,s,u,l=[],c=0,f=e.length;c<f;c++)(r=e[c]).style&&(n=r.style.display,t?("none"===n&&(l[c]=Y.get(r,"display")||null,l[c]||(r.style.display="")),""===r.style.display&&ae(r)&&(l[c]=(u=a=o=void 0,a=(i=r).ownerDocument,s=i.nodeName,(u=ue[s])||(o=a.body.appendChild(a.createElement(s)),u=S.css(o,"display"),o.parentNode.removeChild(o),"none"===u&&(u="block"),ue[s]=u)))):"none"!==n&&(l[c]="none",Y.set(r,"display",n)));for(c=0;c<f;c++)null!=l[c]&&(e[c].style.display=l[c]);return e}S.fn.extend({show:function(){return le(this,!0)},hide:function(){return le(this)},toggle:function(e){return"boolean"==typeof e?e?this.show():this.hide():this.each(function(){ae(this)?S(this).show():S(this).hide()})}});var ce,fe,pe=/^(?:checkbox|radio)$/i,de=/<([a-z][^\/\0>\x20\t\r\n\f]*)/i,he=/^$|^module$|\/(?:java|ecma)script/i;ce=E.createDocumentFragment().appendChild(E.createElement("div")),(fe=E.createElement("input")).setAttribute("type","radio"),fe.setAttribute("checked","checked"),fe.setAttribute("name","t"),ce.appendChild(fe),y.checkClone=ce.cloneNode(!0).cloneNode(!0).lastChild.checked,ce.innerHTML="<textarea>x</textarea>",y.noCloneChecked=!!ce.cloneNode(!0).lastChild.defaultValue,ce.innerHTML="<option></option>",y.option=!!ce.lastChild;var ge={thead:[1,"<table>","</table>"],col:[2,"<table><colgroup>","</colgroup></table>"],tr:[2,"<table><tbody>","</tbody></table>"],td:[3,"<table><tbody><tr>","</tr></tbody></table>"],_default:[0,"",""]};function ve(e,t){var n;return n="undefined"!=typeof e.getElementsByTagName?e.getElementsByTagName(t||"*"):"undefined"!=typeof e.querySelectorAll?e.querySelectorAll(t||"*"):[],void 0===t||t&&A(e,t)?S.merge([e],n):n}function ye(e,t){for(var n=0,r=e.length;n<r;n++)Y.set(e[n],"globalEval",!t||Y.get(t[n],"globalEval"))}ge.tbody=ge.tfoot=ge.colgroup=ge.caption=ge.thead,ge.th=ge.td,y.option||(ge.optgroup=ge.option=[1,"<select multiple='multiple'>","</select>"]);var me=/<|&#?\w+;/;function xe(e,t,n,r,i){for(var o,a,s,u,l,c,f=t.createDocumentFragment(),p=[],d=0,h=e.length;d<h;d++)if((o=e[d])||0===o)if("object"===w(o))S.merge(p,o.nodeType?[o]:o);else if(me.test(o)){a=a||f.appendChild(t.createElement("div")),s=(de.exec(o)||["",""])[1].toLowerCase(),u=ge[s]||ge._default,a.innerHTML=u[1]+S.htmlPrefilter(o)+u[2],c=u[0];while(c--)a=a.lastChild;S.merge(p,a.childNodes),(a=f.firstChild).textContent=""}else p.push(t.createTextNode(o));f.textContent="",d=0;while(o=p[d++])if(r&&-1<S.inArray(o,r))i&&i.push(o);else if(l=ie(o),a=ve(f.appendChild(o),"script"),l&&ye(a),n){c=0;while(o=a[c++])he.test(o.type||"")&&n.push(o)}return f}var be=/^key/,we=/^(?:mouse|pointer|lowgomenu|drag|drop)|click/,Te=/^([^.]*)(?:\.(.+)|)/;function Ce(){return!0}function Ee(){return!1}function Se(e,t){return e===function(){try{return E.activeElement}catch(e){}}()==("focus"===t)}function ke(e,t,n,r,i,o){var a,s;if("object"==typeof t){for(s in"string"!=typeof n&&(r=r||n,n=void 0),t)ke(e,s,n,r,t[s],o);return e}if(null==r&&null==i?(i=n,r=n=void 0):null==i&&("string"==typeof n?(i=r,r=void 0):(i=r,r=n,n=void 0)),!1===i)i=Ee;else if(!i)return e;return 1===o&&(a=i,(i=function(e){return S().off(e),a.apply(this,arguments)}).guid=a.guid||(a.guid=S.guid++)),e.each(function(){S.event.add(this,t,i,r,n)})}function Ae(e,i,o){o?(Y.set(e,i,!1),S.event.add(e,i,{namespace:!1,handler:function(e){var t,n,r=Y.get(this,i);if(1&e.isTrigger&&this[i]){if(r.length)(S.event.special[i]||{}).delegateType&&e.stopPropagation();else if(r=s.call(arguments),Y.set(this,i,r),t=o(this,i),this[i](),r!==(n=Y.get(this,i))||t?Y.set(this,i,!1):n={},r!==n)return e.stopImmediatePropagation(),e.preventDefault(),n.value}else r.length&&(Y.set(this,i,{value:S.event.trigger(S.extend(r[0],S.Event.prototype),r.slice(1),this)}),e.stopImmediatePropagation())}})):void 0===Y.get(e,i)&&S.event.add(e,i,Ce)}S.event={global:{},add:function(t,e,n,r,i){var o,a,s,u,l,c,f,p,d,h,g,v=Y.get(t);if(V(t)){n.handler&&(n=(o=n).handler,i=o.selector),i&&S.find.matchesSelector(re,i),n.guid||(n.guid=S.guid++),(u=v.events)||(u=v.events=Object.create(null)),(a=v.handle)||(a=v.handle=function(e){return"undefined"!=typeof S&&S.event.triggered!==e.type?S.event.dispatch.apply(t,arguments):void 0}),l=(e=(e||"").match(P)||[""]).length;while(l--)d=g=(s=Te.exec(e[l])||[])[1],h=(s[2]||"").split(".").sort(),d&&(f=S.event.special[d]||{},d=(i?f.delegateType:f.bindType)||d,f=S.event.special[d]||{},c=S.extend({type:d,origType:g,data:r,handler:n,guid:n.guid,selector:i,needslowgo:i&&S.expr.match.needslowgo.test(i),namespace:h.join(".")},o),(p=u[d])||((p=u[d]=[]).delegateCount=0,f.setup&&!1!==f.setup.call(t,r,h,a)||t.addEventListener&&t.addEventListener(d,a)),f.add&&(f.add.call(t,c),c.handler.guid||(c.handler.guid=n.guid)),i?p.splice(p.delegateCount++,0,c):p.push(c),S.event.global[d]=!0)}},remove:function(e,t,n,r,i){var o,a,s,u,l,c,f,p,d,h,g,v=Y.hasData(e)&&Y.get(e);if(v&&(u=v.events)){l=(t=(t||"").match(P)||[""]).length;while(l--)if(d=g=(s=Te.exec(t[l])||[])[1],h=(s[2]||"").split(".").sort(),d){f=S.event.special[d]||{},p=u[d=(r?f.delegateType:f.bindType)||d]||[],s=s[2]&&new RegExp("(^|\\.)"+h.join("\\.(?:.*\\.|)")+"(\\.|$)"),a=o=p.length;while(o--)c=p[o],!i&&g!==c.origType||n&&n.guid!==c.guid||s&&!s.test(c.namespace)||r&&r!==c.selector&&("**"!==r||!c.selector)||(p.splice(o,1),c.selector&&p.delegateCount--,f.remove&&f.remove.call(e,c));a&&!p.length&&(f.teardown&&!1!==f.teardown.call(e,h,v.handle)||S.removeEvent(e,d,v.handle),delete u[d])}else for(d in u)S.event.remove(e,d+t[l],n,r,!0);S.isEmptyObject(u)&&Y.remove(e,"handle events")}},dispatch:function(e){var t,n,r,i,o,a,s=new Array(arguments.length),u=S.event.fix(e),l=(Y.get(this,"events")||Object.create(null))[u.type]||[],c=S.event.special[u.type]||{};for(s[0]=u,t=1;t<arguments.length;t++)s[t]=arguments[t];if(u.delegateTarget=this,!c.preDispatch||!1!==c.preDispatch.call(this,u)){a=S.event.handlers.call(this,u,l),t=0;while((i=a[t++])&&!u.isPropagationStopped()){u.currentTarget=i.elem,n=0;while((o=i.handlers[n++])&&!u.isImmediatePropagationStopped())u.rnamespace&&!1!==o.namespace&&!u.rnamespace.test(o.namespace)||(u.handleObj=o,u.data=o.data,void 0!==(r=((S.event.special[o.origType]||{}).handle||o.handler).apply(i.elem,s))&&!1===(u.result=r)&&(u.preventDefault(),u.stopPropagation()))}return c.postDispatch&&c.postDispatch.call(this,u),u.result}},handlers:function(e,t){var n,r,i,o,a,s=[],u=t.delegateCount,l=e.target;if(u&&l.nodeType&&!("click"===e.type&&1<=e.button))for(;l!==this;l=l.parentNode||this)if(1===l.nodeType&&("click"!==e.type||!0!==l.disabled)){for(o=[],a={},n=0;n<u;n++)void 0===a[i=(r=t[n]).selector+" "]&&(a[i]=r.needslowgo?-1<S(i,this).index(l):S.find(i,this,null,[l]).length),a[i]&&o.push(r);o.length&&s.push({elem:l,handlers:o})}return l=this,u<t.length&&s.push({elem:l,handlers:t.slice(u)}),s},addProp:function(t,e){Object.defineProperty(S.Event.prototype,t,{enumerable:!0,configurable:!0,get:m(e)?function(){if(this.originalEvent)return e(this.originalEvent)}:function(){if(this.originalEvent)return this.originalEvent[t]},set:function(e){Object.defineProperty(this,t,{enumerable:!0,configurable:!0,writable:!0,value:e})}})},fix:function(e){return e[S.expando]?e:new S.Event(e)},special:{load:{noBubble:!0},click:{setup:function(e){var t=this||e;return pe.test(t.type)&&t.click&&A(t,"input")&&Ae(t,"click",Ce),!1},trigger:function(e){var t=this||e;return pe.test(t.type)&&t.click&&A(t,"input")&&Ae(t,"click"),!0},_default:function(e){var t=e.target;return pe.test(t.type)&&t.click&&A(t,"input")&&Y.get(t,"click")||A(t,"a")}},beforeunload:{postDispatch:function(e){void 0!==e.result&&e.originalEvent&&(e.originalEvent.returnValue=e.result)}}}},S.removeEvent=function(e,t,n){e.removeEventListener&&e.removeEventListener(t,n)},S.Event=function(e,t){if(!(this instanceof S.Event))return new S.Event(e,t);e&&e.type?(this.originalEvent=e,this.type=e.type,this.isDefaultPrevented=e.defaultPrevented||void 0===e.defaultPrevented&&!1===e.returnValue?Ce:Ee,this.target=e.target&&3===e.target.nodeType?e.target.parentNode:e.target,this.currentTarget=e.currentTarget,this.relatedTarget=e.relatedTarget):this.type=e,t&&S.extend(this,t),this.timeStamp=e&&e.timeStamp||Date.now(),this[S.expando]=!0},S.Event.prototype={constructor:S.Event,isDefaultPrevented:Ee,isPropagationStopped:Ee,isImmediatePropagationStopped:Ee,isSimulated:!1,preventDefault:function(){var e=this.originalEvent;this.isDefaultPrevented=Ce,e&&!this.isSimulated&&e.preventDefault()},stopPropagation:function(){var e=this.originalEvent;this.isPropagationStopped=Ce,e&&!this.isSimulated&&e.stopPropagation()},stopImmediatePropagation:function(){var e=this.originalEvent;this.isImmediatePropagationStopped=Ce,e&&!this.isSimulated&&e.stopImmediatePropagation(),this.stopPropagation()}},S.each({altKey:!0,bubbles:!0,cancelable:!0,changedTouches:!0,ctrlKey:!0,detail:!0,eventPhase:!0,metaKey:!0,pageX:!0,pageY:!0,shiftKey:!0,view:!0,"char":!0,code:!0,charCode:!0,key:!0,keyCode:!0,button:!0,buttons:!0,clientX:!0,clientY:!0,offsetX:!0,offsetY:!0,pointerId:!0,pointerType:!0,screenX:!0,screenY:!0,targetTouches:!0,toElement:!0,touches:!0,which:function(e){var t=e.button;return null==e.which&&be.test(e.type)?null!=e.charCode?e.charCode:e.keyCode:!e.which&&void 0!==t&&we.test(e.type)?1&t?1:2&t?3:4&t?2:0:e.which}},S.event.addProp),S.each({focus:"focusin",blur:"focusout"},function(e,t){S.event.special[e]={setup:function(){return Ae(this,e,Se),!1},trigger:function(){return Ae(this,e),!0},delegateType:t}}),S.each({mouseenter:"mouseover",mouseleave:"mouseout",pointerenter:"pointerover",pointerleave:"pointerout"},function(e,i){S.event.special[e]={delegateType:i,bindType:i,handle:function(e){var t,n=e.relatedTarget,r=e.handleObj;return n&&(n===this||S.contains(this,n))||(e.type=r.origType,t=r.handler.apply(this,arguments),e.type=i),t}}}),S.fn.extend({on:function(e,t,n,r){return ke(this,e,t,n,r)},one:function(e,t,n,r){return ke(this,e,t,n,r,1)},off:function(e,t,n){var r,i;if(e&&e.preventDefault&&e.handleObj)return r=e.handleObj,S(e.delegateTarget).off(r.namespace?r.origType+"."+r.namespace:r.origType,r.selector,r.handler),this;if("object"==typeof e){for(i in e)this.off(i,t,e[i]);return this}return!1!==t&&"function"!=typeof t||(n=t,t=void 0),!1===n&&(n=Ee),this.each(function(){S.event.remove(this,e,n,t)})}});var Ne=/<script|<style|<link/i,De=/checked\s*(?:[^=]|=\s*.checked.)/i,je=/^\s*<!(?:\[CDATA\[|--)|(?:\]\]|--)>\s*$/g;function qe(e,t){return A(e,"table")&&A(11!==t.nodeType?t:t.firstChild,"tr")&&S(e).children("tbody")[0]||e}function Le(e){return e.type=(null!==e.getAttribute("type"))+"/"+e.type,e}function He(e){return"true/"===(e.type||"").slice(0,5)?e.type=e.type.slice(5):e.removeAttribute("type"),e}function Oe(e,t){var n,r,i,o,a,s;if(1===t.nodeType){if(Y.hasData(e)&&(s=Y.get(e).events))for(i in Y.remove(t,"handle events"),s)for(n=0,r=s[i].length;n<r;n++)S.event.add(t,i,s[i][n]);Q.hasData(e)&&(o=Q.access(e),a=S.extend({},o),Q.set(t,a))}}function Pe(n,r,i,o){r=g(r);var e,t,a,s,u,l,c=0,f=n.length,p=f-1,d=r[0],h=m(d);if(h||1<f&&"string"==typeof d&&!y.checkClone&&De.test(d))return n.each(function(e){var t=n.eq(e);h&&(r[0]=d.call(this,e,t.html())),Pe(t,r,i,o)});if(f&&(t=(e=xe(r,n[0].ownerDocument,!1,n,o)).firstChild,1===e.childNodes.length&&(e=t),t||o)){for(s=(a=S.map(ve(e,"script"),Le)).length;c<f;c++)u=e,c!==p&&(u=S.clone(u,!0,!0),s&&S.merge(a,ve(u,"script"))),i.call(n[c],u,c);if(s)for(l=a[a.length-1].ownerDocument,S.map(a,He),c=0;c<s;c++)u=a[c],he.test(u.type||"")&&!Y.access(u,"globalEval")&&S.contains(l,u)&&(u.src&&"module"!==(u.type||"").toLowerCase()?S._evalUrl&&!u.noModule&&S._evalUrl(u.src,{nonce:u.nonce||u.getAttribute("nonce")},l):b(u.textContent.replace(je,""),u,l))}return n}function Re(e,t,n){for(var r,i=t?S.filter(t,e):e,o=0;null!=(r=i[o]);o++)n||1!==r.nodeType||S.cleanData(ve(r)),r.parentNode&&(n&&ie(r)&&ye(ve(r,"script")),r.parentNode.removeChild(r));return e}S.extend({htmlPrefilter:function(e){return e},clone:function(e,t,n){var r,i,o,a,s,u,l,c=e.cloneNode(!0),f=ie(e);if(!(y.noCloneChecked||1!==e.nodeType&&11!==e.nodeType||S.isXMLDoc(e)))for(a=ve(c),r=0,i=(o=ve(e)).length;r<i;r++)s=o[r],u=a[r],void 0,"input"===(l=u.nodeName.toLowerCase())&&pe.test(s.type)?u.checked=s.checked:"input"!==l&&"textarea"!==l||(u.defaultValue=s.defaultValue);if(t)if(n)for(o=o||ve(e),a=a||ve(c),r=0,i=o.length;r<i;r++)Oe(o[r],a[r]);else Oe(e,c);return 0<(a=ve(c,"script")).length&&ye(a,!f&&ve(e,"script")),c},cleanData:function(e){for(var t,n,r,i=S.event.special,o=0;void 0!==(n=e[o]);o++)if(V(n)){if(t=n[Y.expando]){if(t.events)for(r in t.events)i[r]?S.event.remove(n,r):S.removeEvent(n,r,t.handle);n[Y.expando]=void 0}n[Q.expando]&&(n[Q.expando]=void 0)}}}),S.fn.extend({detach:function(e){return Re(this,e,!0)},remove:function(e){return Re(this,e)},text:function(e){return $(this,function(e){return void 0===e?S.text(this):this.empty().each(function(){1!==this.nodeType&&11!==this.nodeType&&9!==this.nodeType||(this.textContent=e)})},null,e,arguments.length)},append:function(){return Pe(this,arguments,function(e){1!==this.nodeType&&11!==this.nodeType&&9!==this.nodeType||qe(this,e).appendChild(e)})},prepend:function(){return Pe(this,arguments,function(e){if(1===this.nodeType||11===this.nodeType||9===this.nodeType){var t=qe(this,e);t.insertBefore(e,t.firstChild)}})},before:function(){return Pe(this,arguments,function(e){this.parentNode&&this.parentNode.insertBefore(e,this)})},after:function(){return Pe(this,arguments,function(e){this.parentNode&&this.parentNode.insertBefore(e,this.nextSibling)})},empty:function(){for(var e,t=0;null!=(e=this[t]);t++)1===e.nodeType&&(S.cleanData(ve(e,!1)),e.textContent="");return this},clone:function(e,t){return e=null!=e&&e,t=null==t?e:t,this.map(function(){return S.clone(this,e,t)})},html:function(e){return $(this,function(e){var t=this[0]||{},n=0,r=this.length;if(void 0===e&&1===t.nodeType)return t.innerHTML;if("string"==typeof e&&!Ne.test(e)&&!ge[(de.exec(e)||["",""])[1].toLowerCase()]){e=S.htmlPrefilter(e);try{for(;n<r;n++)1===(t=this[n]||{}).nodeType&&(S.cleanData(ve(t,!1)),t.innerHTML=e);t=0}catch(e){}}t&&this.empty().append(e)},null,e,arguments.length)},replaceWith:function(){var n=[];return Pe(this,arguments,function(e){var t=this.parentNode;S.inArray(this,n)<0&&(S.cleanData(ve(this)),t&&t.replaceChild(e,this))},n)}}),S.each({appendTo:"append",prependTo:"prepend",insertBefore:"before",insertAfter:"after",replaceAll:"replaceWith"},function(e,a){S.fn[e]=function(e){for(var t,n=[],r=S(e),i=r.length-1,o=0;o<=i;o++)t=o===i?this:this.clone(!0),S(r[o])[a](t),u.apply(n,t.get());return this.pushStack(n)}});var Me=new RegExp("^("+ee+")(?!px)[a-z%]+$","i"),Ie=function(e){var t=e.ownerDocument.defaultView;return t&&t.opener||(t=C),t.getComputedStyle(e)},We=function(e,t,n){var r,i,o={};for(i in t)o[i]=e.style[i],e.style[i]=t[i];for(i in r=n.call(e),t)e.style[i]=o[i];return r},Fe=new RegExp(ne.join("|"),"i");function Be(e,t,n){var r,i,o,a,s=e.style;return(n=n||Ie(e))&&(""!==(a=n.getPropertyValue(t)||n[t])||ie(e)||(a=S.style(e,t)),!y.pixelBoxStyles()&&Me.test(a)&&Fe.test(t)&&(r=s.width,i=s.minWidth,o=s.maxWidth,s.minWidth=s.maxWidth=s.width=a,a=n.width,s.width=r,s.minWidth=i,s.maxWidth=o)),void 0!==a?a+"":a}function $e(e,t){return{get:function(){if(!e())return(this.get=t).apply(this,arguments);delete this.get}}}!function(){function e(){if(l){u.style.cssText="position:absolute;left:-11111px;width:60px;margin-top:1px;padding:0;border:0",l.style.cssText="position:relative;display:block;box-sizing:border-box;overflow:scroll;margin:auto;border:1px;padding:1px;width:60%;top:1%",re.appendChild(u).appendChild(l);var e=C.getComputedStyle(l);n="1%"!==e.top,s=12===t(e.marginLeft),l.style.right="60%",o=36===t(e.right),r=36===t(e.width),l.style.position="absolute",i=12===t(l.offsetWidth/3),re.removeChild(u),l=null}}function t(e){return Math.round(parseFloat(e))}var n,r,i,o,a,s,u=E.createElement("div"),l=E.createElement("div");l.style&&(l.style.backgroundClip="content-box",l.cloneNode(!0).style.backgroundClip="",y.clearCloneStyle="content-box"===l.style.backgroundClip,S.extend(y,{boxSizingReliable:function(){return e(),r},pixelBoxStyles:function(){return e(),o},pixelPosition:function(){return e(),n},reliableMarginLeft:function(){return e(),s},scrollboxSize:function(){return e(),i},reliableTrDimensions:function(){var e,t,n,r;return null==a&&(e=E.createElement("table"),t=E.createElement("tr"),n=E.createElement("div"),e.style.cssText="position:absolute;left:-11111px",t.style.height="1px",n.style.height="9px",re.appendChild(e).appendChild(t).appendChild(n),r=C.getComputedStyle(t),a=3<parseInt(r.height),re.removeChild(e)),a}}))}();var _e=["Webkit","Moz","ms"],ze=E.createElement("div").style,Ue={};function Xe(e){var t=S.cssProps[e]||Ue[e];return t||(e in ze?e:Ue[e]=function(e){var t=e[0].toUpperCase()+e.slice(1),n=_e.length;while(n--)if((e=_e[n]+t)in ze)return e}(e)||e)}var Ve=/^(none|table(?!-c[ea]).+)/,Ge=/^--/,Ye={position:"absolute",visibility:"hidden",display:"block"},Qe={letterSpacing:"0",fontWeight:"400"};function Je(e,t,n){var r=te.exec(t);return r?Math.max(0,r[2]-(n||0))+(r[3]||"px"):t}function Ke(e,t,n,r,i,o){var a="width"===t?1:0,s=0,u=0;if(n===(r?"border":"content"))return 0;for(;a<4;a+=2)"margin"===n&&(u+=S.css(e,n+ne[a],!0,i)),r?("content"===n&&(u-=S.css(e,"padding"+ne[a],!0,i)),"margin"!==n&&(u-=S.css(e,"border"+ne[a]+"Width",!0,i))):(u+=S.css(e,"padding"+ne[a],!0,i),"padding"!==n?u+=S.css(e,"border"+ne[a]+"Width",!0,i):s+=S.css(e,"border"+ne[a]+"Width",!0,i));return!r&&0<=o&&(u+=Math.max(0,Math.ceil(e["offset"+t[0].toUpperCase()+t.slice(1)]-o-u-s-.5))||0),u}function Ze(e,t,n){var r=Ie(e),i=(!y.boxSizingReliable()||n)&&"border-box"===S.css(e,"boxSizing",!1,r),o=i,a=Be(e,t,r),s="offset"+t[0].toUpperCase()+t.slice(1);if(Me.test(a)){if(!n)return a;a="auto"}return(!y.boxSizingReliable()&&i||!y.reliableTrDimensions()&&A(e,"tr")||"auto"===a||!parseFloat(a)&&"inline"===S.css(e,"display",!1,r))&&e.getClientRects().length&&(i="border-box"===S.css(e,"boxSizing",!1,r),(o=s in e)&&(a=e[s])),(a=parseFloat(a)||0)+Ke(e,t,n||(i?"border":"content"),o,r,a)+"px"}function et(e,t,n,r,i){return new et.prototype.init(e,t,n,r,i)}S.extend({cssHooks:{opacity:{get:function(e,t){if(t){var n=Be(e,"opacity");return""===n?"1":n}}}},cssNumber:{animationIterationCount:!0,columnCount:!0,fillOpacity:!0,flexGrow:!0,flexShrink:!0,fontWeight:!0,gridArea:!0,gridColumn:!0,gridColumnEnd:!0,gridColumnStart:!0,gridRow:!0,gridRowEnd:!0,gridRowStart:!0,lineHeight:!0,opacity:!0,order:!0,orphans:!0,widows:!0,zIndex:!0,zoom:!0},cssProps:{},style:function(e,t,n,r){if(e&&3!==e.nodeType&&8!==e.nodeType&&e.style){var i,o,a,s=X(t),u=Ge.test(t),l=e.style;if(u||(t=Xe(s)),a=S.cssHooks[t]||S.cssHooks[s],void 0===n)return a&&"get"in a&&void 0!==(i=a.get(e,!1,r))?i:l[t];"string"===(o=typeof n)&&(i=te.exec(n))&&i[1]&&(n=se(e,t,i),o="number"),null!=n&&n==n&&("number"!==o||u||(n+=i&&i[3]||(S.cssNumber[s]?"":"px")),y.clearCloneStyle||""!==n||0!==t.indexOf("background")||(l[t]="inherit"),a&&"set"in a&&void 0===(n=a.set(e,n,r))||(u?l.setProperty(t,n):l[t]=n))}},css:function(e,t,n,r){var i,o,a,s=X(t);return Ge.test(t)||(t=Xe(s)),(a=S.cssHooks[t]||S.cssHooks[s])&&"get"in a&&(i=a.get(e,!0,n)),void 0===i&&(i=Be(e,t,r)),"normal"===i&&t in Qe&&(i=Qe[t]),""===n||n?(o=parseFloat(i),!0===n||isFinite(o)?o||0:i):i}}),S.each(["height","width"],function(e,u){S.cssHooks[u]={get:function(e,t,n){if(t)return!Ve.test(S.css(e,"display"))||e.getClientRects().length&&e.getBoundingClientRect().width?Ze(e,u,n):We(e,Ye,function(){return Ze(e,u,n)})},set:function(e,t,n){var r,i=Ie(e),o=!y.scrollboxSize()&&"absolute"===i.position,a=(o||n)&&"border-box"===S.css(e,"boxSizing",!1,i),s=n?Ke(e,u,n,a,i):0;return a&&o&&(s-=Math.ceil(e["offset"+u[0].toUpperCase()+u.slice(1)]-parseFloat(i[u])-Ke(e,u,"border",!1,i)-.5)),s&&(r=te.exec(t))&&"px"!==(r[3]||"px")&&(e.style[u]=t,t=S.css(e,u)),Je(0,t,s)}}}),S.cssHooks.marginLeft=$e(y.reliableMarginLeft,function(e,t){if(t)return(parseFloat(Be(e,"marginLeft"))||e.getBoundingClientRect().left-We(e,{marginLeft:0},function(){return e.getBoundingClientRect().left}))+"px"}),S.each({margin:"",padding:"",border:"Width"},function(i,o){S.cssHooks[i+o]={expand:function(e){for(var t=0,n={},r="string"==typeof e?e.split(" "):[e];t<4;t++)n[i+ne[t]+o]=r[t]||r[t-2]||r[0];return n}},"margin"!==i&&(S.cssHooks[i+o].set=Je)}),S.fn.extend({css:function(e,t){return $(this,function(e,t,n){var r,i,o={},a=0;if(Array.isArray(t)){for(r=Ie(e),i=t.length;a<i;a++)o[t[a]]=S.css(e,t[a],!1,r);return o}return void 0!==n?S.style(e,t,n):S.css(e,t)},e,t,1<arguments.length)}}),((S.Tween=et).prototype={constructor:et,init:function(e,t,n,r,i,o){this.elem=e,this.prop=n,this.easing=i||S.easing._default,this.options=t,this.start=this.now=this.cur(),this.end=r,this.unit=o||(S.cssNumber[n]?"":"px")},cur:function(){var e=et.propHooks[this.prop];return e&&e.get?e.get(this):et.propHooks._default.get(this)},run:function(e){var t,n=et.propHooks[this.prop];return this.options.duration?this.pos=t=S.easing[this.easing](e,this.options.duration*e,0,1,this.options.duration):this.pos=t=e,this.now=(this.end-this.start)*t+this.start,this.options.step&&this.options.step.call(this.elem,this.now,this),n&&n.set?n.set(this):et.propHooks._default.set(this),this}}).init.prototype=et.prototype,(et.propHooks={_default:{get:function(e){var t;return 1!==e.elem.nodeType||null!=e.elem[e.prop]&&null==e.elem.style[e.prop]?e.elem[e.prop]:(t=S.css(e.elem,e.prop,""))&&"auto"!==t?t:0},set:function(e){S.fx.step[e.prop]?S.fx.step[e.prop](e):1!==e.elem.nodeType||!S.cssHooks[e.prop]&&null==e.elem.style[Xe(e.prop)]?e.elem[e.prop]=e.now:S.style(e.elem,e.prop,e.now+e.unit)}}}).scrollTop=et.propHooks.scrollLeft={set:function(e){e.elem.nodeType&&e.elem.parentNode&&(e.elem[e.prop]=e.now)}},S.easing={linear:function(e){return e},swing:function(e){return.5-Math.cos(e*Math.PI)/2},_default:"swing"},S.fx=et.prototype.init,S.fx.step={};var tt,nt,rt,it,ot=/^(?:toggle|show|hide)$/,at=/queueHooks$/;function st(){nt&&(!1===E.hidden&&C.requestAnimationFrame?C.requestAnimationFrame(st):C.setTimeout(st,S.fx.interval),S.fx.tick())}function ut(){return C.setTimeout(function(){tt=void 0}),tt=Date.now()}function lt(e,t){var n,r=0,i={height:e};for(t=t?1:0;r<4;r+=2-t)i["margin"+(n=ne[r])]=i["padding"+n]=e;return t&&(i.opacity=i.width=e),i}function ct(e,t,n){for(var r,i=(ft.tweeners[t]||[]).concat(ft.tweeners["*"]),o=0,a=i.length;o<a;o++)if(r=i[o].call(n,t,e))return r}function ft(o,e,t){var n,a,r=0,i=ft.prefilters.length,s=S.Deferred().always(function(){delete u.elem}),u=function(){if(a)return!1;for(var e=tt||ut(),t=Math.max(0,l.startTime+l.duration-e),n=1-(t/l.duration||0),r=0,i=l.tweens.length;r<i;r++)l.tweens[r].run(n);return s.notifyWith(o,[l,n,t]),n<1&&i?t:(i||s.notifyWith(o,[l,1,0]),s.resolveWith(o,[l]),!1)},l=s.promise({elem:o,props:S.extend({},e),opts:S.extend(!0,{specialEasing:{},easing:S.easing._default},t),originalProperties:e,originalOptions:t,startTime:tt||ut(),duration:t.duration,tweens:[],createTween:function(e,t){var n=S.Tween(o,l.opts,e,t,l.opts.specialEasing[e]||l.opts.easing);return l.tweens.push(n),n},stop:function(e){var t=0,n=e?l.tweens.length:0;if(a)return this;for(a=!0;t<n;t++)l.tweens[t].run(1);return e?(s.notifyWith(o,[l,1,0]),s.resolveWith(o,[l,e])):s.rejectWith(o,[l,e]),this}}),c=l.props;for(!function(e,t){var n,r,i,o,a;for(n in e)if(i=t[r=X(n)],o=e[n],Array.isArray(o)&&(i=o[1],o=e[n]=o[0]),n!==r&&(e[r]=o,delete e[n]),(a=S.cssHooks[r])&&"expand"in a)for(n in o=a.expand(o),delete e[r],o)n in e||(e[n]=o[n],t[n]=i);else t[r]=i}(c,l.opts.specialEasing);r<i;r++)if(n=ft.prefilters[r].call(l,o,c,l.opts))return m(n.stop)&&(S._queueHooks(l.elem,l.opts.queue).stop=n.stop.bind(n)),n;return S.map(c,ct,l),m(l.opts.start)&&l.opts.start.call(o,l),l.progress(l.opts.progress).done(l.opts.done,l.opts.complete).fail(l.opts.fail).always(l.opts.always),S.fx.timer(S.extend(u,{elem:o,anim:l,queue:l.opts.queue})),l}S.Animation=S.extend(ft,{tweeners:{"*":[function(e,t){var n=this.createTween(e,t);return se(n.elem,e,te.exec(t),n),n}]},tweener:function(e,t){m(e)?(t=e,e=["*"]):e=e.match(P);for(var n,r=0,i=e.length;r<i;r++)n=e[r],ft.tweeners[n]=ft.tweeners[n]||[],ft.tweeners[n].unshift(t)},prefilters:[function(e,t,n){var r,i,o,a,s,u,l,c,f="width"in t||"height"in t,p=this,d={},h=e.style,g=e.nodeType&&ae(e),v=Y.get(e,"fxshow");for(r in n.queue||(null==(a=S._queueHooks(e,"fx")).unqueued&&(a.unqueued=0,s=a.empty.fire,a.empty.fire=function(){a.unqueued||s()}),a.unqueued++,p.always(function(){p.always(function(){a.unqueued--,S.queue(e,"fx").length||a.empty.fire()})})),t)if(i=t[r],ot.test(i)){if(delete t[r],o=o||"toggle"===i,i===(g?"hide":"show")){if("show"!==i||!v||void 0===v[r])continue;g=!0}d[r]=v&&v[r]||S.style(e,r)}if((u=!S.isEmptyObject(t))||!S.isEmptyObject(d))for(r in f&&1===e.nodeType&&(n.overflow=[h.overflow,h.overflowX,h.overflowY],null==(l=v&&v.display)&&(l=Y.get(e,"display")),"none"===(c=S.css(e,"display"))&&(l?c=l:(le([e],!0),l=e.style.display||l,c=S.css(e,"display"),le([e]))),("inline"===c||"inline-block"===c&&null!=l)&&"none"===S.css(e,"float")&&(u||(p.done(function(){h.display=l}),null==l&&(c=h.display,l="none"===c?"":c)),h.display="inline-block")),n.overflow&&(h.overflow="hidden",p.always(function(){h.overflow=n.overflow[0],h.overflowX=n.overflow[1],h.overflowY=n.overflow[2]})),u=!1,d)u||(v?"hidden"in v&&(g=v.hidden):v=Y.access(e,"fxshow",{display:l}),o&&(v.hidden=!g),g&&le([e],!0),p.done(function(){for(r in g||le([e]),Y.remove(e,"fxshow"),d)S.style(e,r,d[r])})),u=ct(g?v[r]:0,r,p),r in v||(v[r]=u.start,g&&(u.end=u.start,u.start=0))}],prefilter:function(e,t){t?ft.prefilters.unshift(e):ft.prefilters.push(e)}}),S.speed=function(e,t,n){var r=e&&"object"==typeof e?S.extend({},e):{complete:n||!n&&t||m(e)&&e,duration:e,easing:n&&t||t&&!m(t)&&t};return S.fx.off?r.duration=0:"number"!=typeof r.duration&&(r.duration in S.fx.speeds?r.duration=S.fx.speeds[r.duration]:r.duration=S.fx.speeds._default),null!=r.queue&&!0!==r.queue||(r.queue="fx"),r.old=r.complete,r.complete=function(){m(r.old)&&r.old.call(this),r.queue&&S.dequeue(this,r.queue)},r},S.fn.extend({fadeTo:function(e,t,n,r){return this.filter(ae).css("opacity",0).show().end().animate({opacity:t},e,n,r)},animate:function(t,e,n,r){var i=S.isEmptyObject(t),o=S.speed(e,n,r),a=function(){var e=ft(this,S.extend({},t),o);(i||Y.get(this,"finish"))&&e.stop(!0)};return a.finish=a,i||!1===o.queue?this.each(a):this.queue(o.queue,a)},stop:function(i,e,o){var a=function(e){var t=e.stop;delete e.stop,t(o)};return"string"!=typeof i&&(o=e,e=i,i=void 0),e&&this.queue(i||"fx",[]),this.each(function(){var e=!0,t=null!=i&&i+"queueHooks",n=S.timers,r=Y.get(this);if(t)r[t]&&r[t].stop&&a(r[t]);else for(t in r)r[t]&&r[t].stop&&at.test(t)&&a(r[t]);for(t=n.length;t--;)n[t].elem!==this||null!=i&&n[t].queue!==i||(n[t].anim.stop(o),e=!1,n.splice(t,1));!e&&o||S.dequeue(this,i)})},finish:function(a){return!1!==a&&(a=a||"fx"),this.each(function(){var e,t=Y.get(this),n=t[a+"queue"],r=t[a+"queueHooks"],i=S.timers,o=n?n.length:0;for(t.finish=!0,S.queue(this,a,[]),r&&r.stop&&r.stop.call(this,!0),e=i.length;e--;)i[e].elem===this&&i[e].queue===a&&(i[e].anim.stop(!0),i.splice(e,1));for(e=0;e<o;e++)n[e]&&n[e].finish&&n[e].finish.call(this);delete t.finish})}}),S.each(["toggle","show","hide"],function(e,r){var i=S.fn[r];S.fn[r]=function(e,t,n){return null==e||"boolean"==typeof e?i.apply(this,arguments):this.animate(lt(r,!0),e,t,n)}}),S.each({slideDown:lt("show"),slideUp:lt("hide"),slideToggle:lt("toggle"),fadeIn:{opacity:"show"},fadeOut:{opacity:"hide"},fadeToggle:{opacity:"toggle"}},function(e,r){S.fn[e]=function(e,t,n){return this.animate(r,e,t,n)}}),S.timers=[],S.fx.tick=function(){var e,t=0,n=S.timers;for(tt=Date.now();t<n.length;t++)(e=n[t])()||n[t]!==e||n.splice(t--,1);n.length||S.fx.stop(),tt=void 0},S.fx.timer=function(e){S.timers.push(e),S.fx.start()},S.fx.interval=13,S.fx.start=function(){nt||(nt=!0,st())},S.fx.stop=function(){nt=null},S.fx.speeds={slow:600,fast:200,_default:400},S.fn.delay=function(r,e){return r=S.fx&&S.fx.speeds[r]||r,e=e||"fx",this.queue(e,function(e,t){var n=C.setTimeout(e,r);t.stop=function(){C.clearTimeout(n)}})},rt=E.createElement("input"),it=E.createElement("select").appendChild(E.createElement("option")),rt.type="checkbox",y.checkOn=""!==rt.value,y.optSelected=it.selected,(rt=E.createElement("input")).value="t",rt.type="radio",y.radioValue="t"===rt.value;var pt,dt=S.expr.attrHandle;S.fn.extend({attr:function(e,t){return $(this,S.attr,e,t,1<arguments.length)},removeAttr:function(e){return this.each(function(){S.removeAttr(this,e)})}}),S.extend({attr:function(e,t,n){var r,i,o=e.nodeType;if(3!==o&&8!==o&&2!==o)return"undefined"==typeof e.getAttribute?S.prop(e,t,n):(1===o&&S.isXMLDoc(e)||(i=S.attrHooks[t.toLowerCase()]||(S.expr.match.bool.test(t)?pt:void 0)),void 0!==n?null===n?void S.removeAttr(e,t):i&&"set"in i&&void 0!==(r=i.set(e,n,t))?r:(e.setAttribute(t,n+""),n):i&&"get"in i&&null!==(r=i.get(e,t))?r:null==(r=S.find.attr(e,t))?void 0:r)},attrHooks:{type:{set:function(e,t){if(!y.radioValue&&"radio"===t&&A(e,"input")){var n=e.value;return e.setAttribute("type",t),n&&(e.value=n),t}}}},removeAttr:function(e,t){var n,r=0,i=t&&t.match(P);if(i&&1===e.nodeType)while(n=i[r++])e.removeAttribute(n)}}),pt={set:function(e,t,n){return!1===t?S.removeAttr(e,n):e.setAttribute(n,n),n}},S.each(S.expr.match.bool.source.match(/\w+/g),function(e,t){var a=dt[t]||S.find.attr;dt[t]=function(e,t,n){var r,i,o=t.toLowerCase();return n||(i=dt[o],dt[o]=r,r=null!=a(e,t,n)?o:null,dt[o]=i),r}});var ht=/^(?:input|select|textarea|button)$/i,gt=/^(?:a|area)$/i;function vt(e){return(e.match(P)||[]).join(" ")}function yt(e){return e.getAttribute&&e.getAttribute("class")||""}function mt(e){return Array.isArray(e)?e:"string"==typeof e&&e.match(P)||[]}S.fn.extend({prop:function(e,t){return $(this,S.prop,e,t,1<arguments.length)},removeProp:function(e){return this.each(function(){delete this[S.propFix[e]||e]})}}),S.extend({prop:function(e,t,n){var r,i,o=e.nodeType;if(3!==o&&8!==o&&2!==o)return 1===o&&S.isXMLDoc(e)||(t=S.propFix[t]||t,i=S.propHooks[t]),void 0!==n?i&&"set"in i&&void 0!==(r=i.set(e,n,t))?r:e[t]=n:i&&"get"in i&&null!==(r=i.get(e,t))?r:e[t]},propHooks:{tabIndex:{get:function(e){var t=S.find.attr(e,"tabindex");return t?parseInt(t,10):ht.test(e.nodeName)||gt.test(e.nodeName)&&e.href?0:-1}}},propFix:{"for":"htmlFor","class":"className"}}),y.optSelected||(S.propHooks.selected={get:function(e){var t=e.parentNode;return t&&t.parentNode&&t.parentNode.selectedIndex,null},set:function(e){var t=e.parentNode;t&&(t.selectedIndex,t.parentNode&&t.parentNode.selectedIndex)}}),S.each(["tabIndex","readOnly","maxLength","cellSpacing","cellPadding","rowSpan","colSpan","useMap","frameBorder","contentEditable"],function(){S.propFix[this.toLowerCase()]=this}),S.fn.extend({addClass:function(t){var e,n,r,i,o,a,s,u=0;if(m(t))return this.each(function(e){S(this).addClass(t.call(this,e,yt(this)))});if((e=mt(t)).length)while(n=this[u++])if(i=yt(n),r=1===n.nodeType&&" "+vt(i)+" "){a=0;while(o=e[a++])r.indexOf(" "+o+" ")<0&&(r+=o+" ");i!==(s=vt(r))&&n.setAttribute("class",s)}return this},removeClass:function(t){var e,n,r,i,o,a,s,u=0;if(m(t))return this.each(function(e){S(this).removeClass(t.call(this,e,yt(this)))});if(!arguments.length)return this.attr("class","");if((e=mt(t)).length)while(n=this[u++])if(i=yt(n),r=1===n.nodeType&&" "+vt(i)+" "){a=0;while(o=e[a++])while(-1<r.indexOf(" "+o+" "))r=r.replace(" "+o+" "," ");i!==(s=vt(r))&&n.setAttribute("class",s)}return this},toggleClass:function(i,t){var o=typeof i,a="string"===o||Array.isArray(i);return"boolean"==typeof t&&a?t?this.addClass(i):this.removeClass(i):m(i)?this.each(function(e){S(this).toggleClass(i.call(this,e,yt(this),t),t)}):this.each(function(){var e,t,n,r;if(a){t=0,n=S(this),r=mt(i);while(e=r[t++])n.hasClass(e)?n.removeClass(e):n.addClass(e)}else void 0!==i&&"boolean"!==o||((e=yt(this))&&Y.set(this,"__className__",e),this.setAttribute&&this.setAttribute("class",e||!1===i?"":Y.get(this,"__className__")||""))})},hasClass:function(e){var t,n,r=0;t=" "+e+" ";while(n=this[r++])if(1===n.nodeType&&-1<(" "+vt(yt(n))+" ").indexOf(t))return!0;return!1}});var xt=/\r/g;S.fn.extend({val:function(n){var r,e,i,t=this[0];return arguments.length?(i=m(n),this.each(function(e){var t;1===this.nodeType&&(null==(t=i?n.call(this,e,S(this).val()):n)?t="":"number"==typeof t?t+="":Array.isArray(t)&&(t=S.map(t,function(e){return null==e?"":e+""})),(r=S.valHooks[this.type]||S.valHooks[this.nodeName.toLowerCase()])&&"set"in r&&void 0!==r.set(this,t,"value")||(this.value=t))})):t?(r=S.valHooks[t.type]||S.valHooks[t.nodeName.toLowerCase()])&&"get"in r&&void 0!==(e=r.get(t,"value"))?e:"string"==typeof(e=t.value)?e.replace(xt,""):null==e?"":e:void 0}}),S.extend({valHooks:{option:{get:function(e){var t=S.find.attr(e,"value");return null!=t?t:vt(S.text(e))}},select:{get:function(e){var t,n,r,i=e.options,o=e.selectedIndex,a="select-one"===e.type,s=a?null:[],u=a?o+1:i.length;for(r=o<0?u:a?o:0;r<u;r++)if(((n=i[r]).selected||r===o)&&!n.disabled&&(!n.parentNode.disabled||!A(n.parentNode,"optgroup"))){if(t=S(n).val(),a)return t;s.push(t)}return s},set:function(e,t){var n,r,i=e.options,o=S.makeArray(t),a=i.length;while(a--)((r=i[a]).selected=-1<S.inArray(S.valHooks.option.get(r),o))&&(n=!0);return n||(e.selectedIndex=-1),o}}}}),S.each(["radio","checkbox"],function(){S.valHooks[this]={set:function(e,t){if(Array.isArray(t))return e.checked=-1<S.inArray(S(e).val(),t)}},y.checkOn||(S.valHooks[this].get=function(e){return null===e.getAttribute("value")?"on":e.value})}),y.focusin="onfocusin"in C;var bt=/^(?:focusinfocus|focusoutblur)$/,wt=function(e){e.stopPropagation()};S.extend(S.event,{trigger:function(e,t,n,r){var i,o,a,s,u,l,c,f,p=[n||E],d=v.call(e,"type")?e.type:e,h=v.call(e,"namespace")?e.namespace.split("."):[];if(o=f=a=n=n||E,3!==n.nodeType&&8!==n.nodeType&&!bt.test(d+S.event.triggered)&&(-1<d.indexOf(".")&&(d=(h=d.split(".")).shift(),h.sort()),u=d.indexOf(":")<0&&"on"+d,(e=e[S.expando]?e:new S.Event(d,"object"==typeof e&&e)).isTrigger=r?2:3,e.namespace=h.join("."),e.rnamespace=e.namespace?new RegExp("(^|\\.)"+h.join("\\.(?:.*\\.|)")+"(\\.|$)"):null,e.result=void 0,e.target||(e.target=n),t=null==t?[e]:S.makeArray(t,[e]),c=S.event.special[d]||{},r||!c.trigger||!1!==c.trigger.apply(n,t))){if(!r&&!c.noBubble&&!x(n)){for(s=c.delegateType||d,bt.test(s+d)||(o=o.parentNode);o;o=o.parentNode)p.push(o),a=o;a===(n.ownerDocument||E)&&p.push(a.defaultView||a.parentWindow||C)}i=0;while((o=p[i++])&&!e.isPropagationStopped())f=o,e.type=1<i?s:c.bindType||d,(l=(Y.get(o,"events")||Object.create(null))[e.type]&&Y.get(o,"handle"))&&l.apply(o,t),(l=u&&o[u])&&l.apply&&V(o)&&(e.result=l.apply(o,t),!1===e.result&&e.preventDefault());return e.type=d,r||e.isDefaultPrevented()||c._default&&!1!==c._default.apply(p.pop(),t)||!V(n)||u&&m(n[d])&&!x(n)&&((a=n[u])&&(n[u]=null),S.event.triggered=d,e.isPropagationStopped()&&f.addEventListener(d,wt),n[d](),e.isPropagationStopped()&&f.removeEventListener(d,wt),S.event.triggered=void 0,a&&(n[u]=a)),e.result}},simulate:function(e,t,n){var r=S.extend(new S.Event,n,{type:e,isSimulated:!0});S.event.trigger(r,null,t)}}),S.fn.extend({trigger:function(e,t){return this.each(function(){S.event.trigger(e,t,this)})},triggerHandler:function(e,t){var n=this[0];if(n)return S.event.trigger(e,t,n,!0)}}),y.focusin||S.each({focus:"focusin",blur:"focusout"},function(n,r){var i=function(e){S.event.simulate(r,e.target,S.event.fix(e))};S.event.special[r]={setup:function(){var e=this.ownerDocument||this.document||this,t=Y.access(e,r);t||e.addEventListener(n,i,!0),Y.access(e,r,(t||0)+1)},teardown:function(){var e=this.ownerDocument||this.document||this,t=Y.access(e,r)-1;t?Y.access(e,r,t):(e.removeEventListener(n,i,!0),Y.remove(e,r))}}});var Tt=C.location,Ct={guid:Date.now()},Et=/\?/;S.parseXML=function(e){var t;if(!e||"string"!=typeof e)return null;try{t=(new C.DOMParser).parseFromString(e,"text/xml")}catch(e){t=void 0}return t&&!t.getElementsByTagName("parsererror").length||S.error("Invalid XML: "+e),t};var St=/\[\]$/,kt=/\r?\n/g,At=/^(?:submit|button|image|reset|file)$/i,Nt=/^(?:input|select|textarea|keygen)/i;function Dt(n,e,r,i){var t;if(Array.isArray(e))S.each(e,function(e,t){r||St.test(n)?i(n,t):Dt(n+"["+("object"==typeof t&&null!=t?e:"")+"]",t,r,i)});else if(r||"object"!==w(e))i(n,e);else for(t in e)Dt(n+"["+t+"]",e[t],r,i)}S.param=function(e,t){var n,r=[],i=function(e,t){var n=m(t)?t():t;r[r.length]=encodeURIComponent(e)+"="+encodeURIComponent(null==n?"":n)};if(null==e)return"";if(Array.isArray(e)||e.jquery&&!S.isPlainObject(e))S.each(e,function(){i(this.name,this.value)});else for(n in e)Dt(n,e[n],t,i);return r.join("&")},S.fn.extend({serialize:function(){return S.param(this.serializeArray())},serializeArray:function(){return this.map(function(){var e=S.prop(this,"elements");return e?S.makeArray(e):this}).filter(function(){var e=this.type;return this.name&&!S(this).is(":disabled")&&Nt.test(this.nodeName)&&!At.test(e)&&(this.checked||!pe.test(e))}).map(function(e,t){var n=S(this).val();return null==n?null:Array.isArray(n)?S.map(n,function(e){return{name:t.name,value:e.replace(kt,"\r\n")}}):{name:t.name,value:n.replace(kt,"\r\n")}}).get()}});var jt=/%20/g,qt=/#.*$/,Lt=/([?&])_=[^&]*/,Ht=/^(.*?):[ \t]*([^\r\n]*)$/gm,Ot=/^(?:GET|HEAD)$/,Pt=/^\/\//,Rt={},Mt={},It="*/".concat("*"),Wt=E.createElement("a");function Ft(o){return function(e,t){"string"!=typeof e&&(t=e,e="*");var n,r=0,i=e.toLowerCase().match(P)||[];if(m(t))while(n=i[r++])"+"===n[0]?(n=n.slice(1)||"*",(o[n]=o[n]||[]).unshift(t)):(o[n]=o[n]||[]).push(t)}}function Bt(t,i,o,a){var s={},u=t===Mt;function l(e){var r;return s[e]=!0,S.each(t[e]||[],function(e,t){var n=t(i,o,a);return"string"!=typeof n||u||s[n]?u?!(r=n):void 0:(i.dataTypes.unshift(n),l(n),!1)}),r}return l(i.dataTypes[0])||!s["*"]&&l("*")}function $t(e,t){var n,r,i=S.ajaxSettings.flatOptions||{};for(n in t)void 0!==t[n]&&((i[n]?e:r||(r={}))[n]=t[n]);return r&&S.extend(!0,e,r),e}Wt.href=Tt.href,S.extend({active:0,lastModified:{},etag:{},ajaxSettings:{url:Tt.href,type:"GET",isLocal:/^(?:about|app|app-storage|.+-extension|file|res|widget):$/.test(Tt.protocol),global:!0,processData:!0,async:!0,contentType:"application/x-www-form-urlencoded; charset=UTF-8",accepts:{"*":It,text:"text/plain",html:"text/html",xml:"application/xml, text/xml",json:"application/json, text/javascript"},contents:{xml:/\bxml\b/,html:/\bhtml/,json:/\bjson\b/},responseFields:{xml:"responseXML",text:"responseText",json:"responseJSON"},converters:{"* text":String,"text html":!0,"text json":JSON.parse,"text xml":S.parseXML},flatOptions:{url:!0,lowgo:!0}},ajaxSetup:function(e,t){return t?$t($t(e,S.ajaxSettings),t):$t(S.ajaxSettings,e)},ajaxPrefilter:Ft(Rt),ajaxTransport:Ft(Mt),ajax:function(e,t){"object"==typeof e&&(t=e,e=void 0),t=t||{};var c,f,p,n,d,r,h,g,i,o,v=S.ajaxSetup({},t),y=v.lowgo||v,m=v.lowgo&&(y.nodeType||y.jquery)?S(y):S.event,x=S.Deferred(),b=S.Callbacks("once memory"),w=v.statusCode||{},a={},s={},u="canceled",T={readyState:0,getResponseHeader:function(e){var t;if(h){if(!n){n={};while(t=Ht.exec(p))n[t[1].toLowerCase()+" "]=(n[t[1].toLowerCase()+" "]||[]).concat(t[2])}t=n[e.toLowerCase()+" "]}return null==t?null:t.join(", ")},getAllResponseHeaders:function(){return h?p:null},setRequestHeader:function(e,t){return null==h&&(e=s[e.toLowerCase()]=s[e.toLowerCase()]||e,a[e]=t),this},overrideMimeType:function(e){return null==h&&(v.mimeType=e),this},statusCode:function(e){var t;if(e)if(h)T.always(e[T.status]);else for(t in e)w[t]=[w[t],e[t]];return this},abort:function(e){var t=e||u;return c&&c.abort(t),l(0,t),this}};if(x.promise(T),v.url=((e||v.url||Tt.href)+"").replace(Pt,Tt.protocol+"//"),v.type=t.method||t.type||v.method||v.type,v.dataTypes=(v.dataType||"*").toLowerCase().match(P)||[""],null==v.crossDomain){r=E.createElement("a");try{r.href=v.url,r.href=r.href,v.crossDomain=Wt.protocol+"//"+Wt.host!=r.protocol+"//"+r.host}catch(e){v.crossDomain=!0}}if(v.data&&v.processData&&"string"!=typeof v.data&&(v.data=S.param(v.data,v.traditional)),Bt(Rt,v,t,T),h)return T;for(i in(g=S.event&&v.global)&&0==S.active++&&S.event.trigger("ajaxStart"),v.type=v.type.toUpperCase(),v.hasContent=!Ot.test(v.type),f=v.url.replace(qt,""),v.hasContent?v.data&&v.processData&&0===(v.contentType||"").indexOf("application/x-www-form-urlencoded")&&(v.data=v.data.replace(jt,"+")):(o=v.url.slice(f.length),v.data&&(v.processData||"string"==typeof v.data)&&(f+=(Et.test(f)?"&":"?")+v.data,delete v.data),!1===v.cache&&(f=f.replace(Lt,"$1"),o=(Et.test(f)?"&":"?")+"_="+Ct.guid+++o),v.url=f+o),v.ifModified&&(S.lastModified[f]&&T.setRequestHeader("If-Modified-Since",S.lastModified[f]),S.etag[f]&&T.setRequestHeader("If-None-Match",S.etag[f])),(v.data&&v.hasContent&&!1!==v.contentType||t.contentType)&&T.setRequestHeader("Content-Type",v.contentType),T.setRequestHeader("Accept",v.dataTypes[0]&&v.accepts[v.dataTypes[0]]?v.accepts[v.dataTypes[0]]+("*"!==v.dataTypes[0]?", "+It+"; q=0.01":""):v.accepts["*"]),v.headers)T.setRequestHeader(i,v.headers[i]);if(v.beforeSend&&(!1===v.beforeSend.call(y,T,v)||h))return T.abort();if(u="abort",b.add(v.complete),T.done(v.success),T.fail(v.error),c=Bt(Mt,v,t,T)){if(T.readyState=1,g&&m.trigger("ajaxSend",[T,v]),h)return T;v.async&&0<v.timeout&&(d=C.setTimeout(function(){T.abort("timeout")},v.timeout));try{h=!1,c.send(a,l)}catch(e){if(h)throw e;l(-1,e)}}else l(-1,"No Transport");function l(e,t,n,r){var i,o,a,s,u,l=t;h||(h=!0,d&&C.clearTimeout(d),c=void 0,p=r||"",T.readyState=0<e?4:0,i=200<=e&&e<300||304===e,n&&(s=function(e,t,n){var r,i,o,a,s=e.contents,u=e.dataTypes;while("*"===u[0])u.shift(),void 0===r&&(r=e.mimeType||t.getResponseHeader("Content-Type"));if(r)for(i in s)if(s[i]&&s[i].test(r)){u.unshift(i);break}if(u[0]in n)o=u[0];else{for(i in n){if(!u[0]||e.converters[i+" "+u[0]]){o=i;break}a||(a=i)}o=o||a}if(o)return o!==u[0]&&u.unshift(o),n[o]}(v,T,n)),!i&&-1<S.inArray("script",v.dataTypes)&&(v.converters["text script"]=function(){}),s=function(e,t,n,r){var i,o,a,s,u,l={},c=e.dataTypes.slice();if(c[1])for(a in e.converters)l[a.toLowerCase()]=e.converters[a];o=c.shift();while(o)if(e.responseFields[o]&&(n[e.responseFields[o]]=t),!u&&r&&e.dataFilter&&(t=e.dataFilter(t,e.dataType)),u=o,o=c.shift())if("*"===o)o=u;else if("*"!==u&&u!==o){if(!(a=l[u+" "+o]||l["* "+o]))for(i in l)if((s=i.split(" "))[1]===o&&(a=l[u+" "+s[0]]||l["* "+s[0]])){!0===a?a=l[i]:!0!==l[i]&&(o=s[0],c.unshift(s[1]));break}if(!0!==a)if(a&&e["throws"])t=a(t);else try{t=a(t)}catch(e){return{state:"parsererror",error:a?e:"No conversion from "+u+" to "+o}}}return{state:"success",data:t}}(v,s,T,i),i?(v.ifModified&&((u=T.getResponseHeader("Last-Modified"))&&(S.lastModified[f]=u),(u=T.getResponseHeader("etag"))&&(S.etag[f]=u)),204===e||"HEAD"===v.type?l="nocontent":304===e?l="notmodified":(l=s.state,o=s.data,i=!(a=s.error))):(a=l,!e&&l||(l="error",e<0&&(e=0))),T.status=e,T.statusText=(t||l)+"",i?x.resolveWith(y,[o,l,T]):x.rejectWith(y,[T,l,a]),T.statusCode(w),w=void 0,g&&m.trigger(i?"ajaxSuccess":"ajaxError",[T,v,i?o:a]),b.fireWith(y,[T,l]),g&&(m.trigger("ajaxComplete",[T,v]),--S.active||S.event.trigger("ajaxStop")))}return T},getJSON:function(e,t,n){return S.get(e,t,n,"json")},getScript:function(e,t){return S.get(e,void 0,t,"script")}}),S.each(["get","post"],function(e,i){S[i]=function(e,t,n,r){return m(t)&&(r=r||n,n=t,t=void 0),S.ajax(S.extend({url:e,type:i,dataType:r,data:t,success:n},S.isPlainObject(e)&&e))}}),S.ajaxPrefilter(function(e){var t;for(t in e.headers)"content-type"===t.toLowerCase()&&(e.contentType=e.headers[t]||"")}),S._evalUrl=function(e,t,n){return S.ajax({url:e,type:"GET",dataType:"script",cache:!0,async:!1,global:!1,converters:{"text script":function(){}},dataFilter:function(e){S.globalEval(e,t,n)}})},S.fn.extend({wrapAll:function(e){var t;return this[0]&&(m(e)&&(e=e.call(this[0])),t=S(e,this[0].ownerDocument).eq(0).clone(!0),this[0].parentNode&&t.insertBefore(this[0]),t.map(function(){var e=this;while(e.firstElementChild)e=e.firstElementChild;return e}).append(this)),this},wrapInner:function(n){return m(n)?this.each(function(e){S(this).wrapInner(n.call(this,e))}):this.each(function(){var e=S(this),t=e.contents();t.length?t.wrapAll(n):e.append(n)})},wrap:function(t){var n=m(t);return this.each(function(e){S(this).wrapAll(n?t.call(this,e):t)})},unwrap:function(e){return this.parent(e).not("body").each(function(){S(this).replaceWith(this.childNodes)}),this}}),S.expr.pseudos.hidden=function(e){return!S.expr.pseudos.visible(e)},S.expr.pseudos.visible=function(e){return!!(e.offsetWidth||e.offsetHeight||e.getClientRects().length)},S.ajaxSettings.xhr=function(){try{return new C.XMLHttpRequest}catch(e){}};var _t={0:200,1223:204},zt=S.ajaxSettings.xhr();y.cors=!!zt&&"withCredentials"in zt,y.ajax=zt=!!zt,S.ajaxTransport(function(i){var o,a;if(y.cors||zt&&!i.crossDomain)return{send:function(e,t){var n,r=i.xhr();if(r.open(i.type,i.url,i.async,i.username,i.password),i.xhrFields)for(n in i.xhrFields)r[n]=i.xhrFields[n];for(n in i.mimeType&&r.overrideMimeType&&r.overrideMimeType(i.mimeType),i.crossDomain||e["X-Requested-With"]||(e["X-Requested-With"]="XMLHttpRequest"),e)r.setRequestHeader(n,e[n]);o=function(e){return function(){o&&(o=a=r.onload=r.onerror=r.onabort=r.ontimeout=r.onreadystatechange=null,"abort"===e?r.abort():"error"===e?"number"!=typeof r.status?t(0,"error"):t(r.status,r.statusText):t(_t[r.status]||r.status,r.statusText,"text"!==(r.responseType||"text")||"string"!=typeof r.responseText?{binary:r.response}:{text:r.responseText},r.getAllResponseHeaders()))}},r.onload=o(),a=r.onerror=r.ontimeout=o("error"),void 0!==r.onabort?r.onabort=a:r.onreadystatechange=function(){4===r.readyState&&C.setTimeout(function(){o&&a()})},o=o("abort");try{r.send(i.hasContent&&i.data||null)}catch(e){if(o)throw e}},abort:function(){o&&o()}}}),S.ajaxPrefilter(function(e){e.crossDomain&&(e.contents.script=!1)}),S.ajaxSetup({accepts:{script:"text/javascript, application/javascript, application/ecmascript, application/x-ecmascript"},contents:{script:/\b(?:java|ecma)script\b/},converters:{"text script":function(e){return S.globalEval(e),e}}}),S.ajaxPrefilter("script",function(e){void 0===e.cache&&(e.cache=!1),e.crossDomain&&(e.type="GET")}),S.ajaxTransport("script",function(n){var r,i;if(n.crossDomain||n.scriptAttrs)return{send:function(e,t){r=S("<script>").attr(n.scriptAttrs||{}).prop({charset:n.scriptCharset,src:n.url}).on("load error",i=function(e){r.remove(),i=null,e&&t("error"===e.type?404:200,e.type)}),E.head.appendChild(r[0])},abort:function(){i&&i()}}});var Ut,Xt=[],Vt=/(=)\?(?=&|$)|\?\?/;S.ajaxSetup({jsonp:"callback",jsonpCallback:function(){var e=Xt.pop()||S.expando+"_"+Ct.guid++;return this[e]=!0,e}}),S.ajaxPrefilter("json jsonp",function(e,t,n){var r,i,o,a=!1!==e.jsonp&&(Vt.test(e.url)?"url":"string"==typeof e.data&&0===(e.contentType||"").indexOf("application/x-www-form-urlencoded")&&Vt.test(e.data)&&"data");if(a||"jsonp"===e.dataTypes[0])return r=e.jsonpCallback=m(e.jsonpCallback)?e.jsonpCallback():e.jsonpCallback,a?e[a]=e[a].replace(Vt,"$1"+r):!1!==e.jsonp&&(e.url+=(Et.test(e.url)?"&":"?")+e.jsonp+"="+r),e.converters["script json"]=function(){return o||S.error(r+" was not called"),o[0]},e.dataTypes[0]="json",i=C[r],C[r]=function(){o=arguments},n.always(function(){void 0===i?S(C).removeProp(r):C[r]=i,e[r]&&(e.jsonpCallback=t.jsonpCallback,Xt.push(r)),o&&m(i)&&i(o[0]),o=i=void 0}),"script"}),y.createHTMLDocument=((Ut=E.implementation.createHTMLDocument("").body).innerHTML="<form></form><form></form>",2===Ut.childNodes.length),S.parseHTML=function(e,t,n){return"string"!=typeof e?[]:("boolean"==typeof t&&(n=t,t=!1),t||(y.createHTMLDocument?((r=(t=E.implementation.createHTMLDocument("")).createElement("base")).href=E.location.href,t.head.appendChild(r)):t=E),o=!n&&[],(i=N.exec(e))?[t.createElement(i[1])]:(i=xe([e],t,o),o&&o.length&&S(o).remove(),S.merge([],i.childNodes)));var r,i,o},S.fn.load=function(e,t,n){var r,i,o,a=this,s=e.indexOf(" ");return-1<s&&(r=vt(e.slice(s)),e=e.slice(0,s)),m(t)?(n=t,t=void 0):t&&"object"==typeof t&&(i="POST"),0<a.length&&S.ajax({url:e,type:i||"GET",dataType:"html",data:t}).done(function(e){o=arguments,a.html(r?S("<div>").append(S.parseHTML(e)).find(r):e)}).always(n&&function(e,t){a.each(function(){n.apply(this,o||[e.responseText,t,e])})}),this},S.expr.pseudos.animated=function(t){return S.grep(S.timers,function(e){return t===e.elem}).length},S.offset={setOffset:function(e,t,n){var r,i,o,a,s,u,l=S.css(e,"position"),c=S(e),f={};"static"===l&&(e.style.position="relative"),s=c.offset(),o=S.css(e,"top"),u=S.css(e,"left"),("absolute"===l||"fixed"===l)&&-1<(o+u).indexOf("auto")?(a=(r=c.position()).top,i=r.left):(a=parseFloat(o)||0,i=parseFloat(u)||0),m(t)&&(t=t.call(e,n,S.extend({},s))),null!=t.top&&(f.top=t.top-s.top+a),null!=t.left&&(f.left=t.left-s.left+i),"using"in t?t.using.call(e,f):("number"==typeof f.top&&(f.top+="px"),"number"==typeof f.left&&(f.left+="px"),c.css(f))}},S.fn.extend({offset:function(t){if(arguments.length)return void 0===t?this:this.each(function(e){S.offset.setOffset(this,t,e)});var e,n,r=this[0];return r?r.getClientRects().length?(e=r.getBoundingClientRect(),n=r.ownerDocument.defaultView,{top:e.top+n.pageYOffset,left:e.left+n.pageXOffset}):{top:0,left:0}:void 0},position:function(){if(this[0]){var e,t,n,r=this[0],i={top:0,left:0};if("fixed"===S.css(r,"position"))t=r.getBoundingClientRect();else{t=this.offset(),n=r.ownerDocument,e=r.offsetParent||n.documentElement;while(e&&(e===n.body||e===n.documentElement)&&"static"===S.css(e,"position"))e=e.parentNode;e&&e!==r&&1===e.nodeType&&((i=S(e).offset()).top+=S.css(e,"borderTopWidth",!0),i.left+=S.css(e,"borderLeftWidth",!0))}return{top:t.top-i.top-S.css(r,"marginTop",!0),left:t.left-i.left-S.css(r,"marginLeft",!0)}}},offsetParent:function(){return this.map(function(){var e=this.offsetParent;while(e&&"static"===S.css(e,"position"))e=e.offsetParent;return e||re})}}),S.each({scrollLeft:"pageXOffset",scrollTop:"pageYOffset"},function(t,i){var o="pageYOffset"===i;S.fn[t]=function(e){return $(this,function(e,t,n){var r;if(x(e)?r=e:9===e.nodeType&&(r=e.defaultView),void 0===n)return r?r[i]:e[t];r?r.scrollTo(o?r.pageXOffset:n,o?n:r.pageYOffset):e[t]=n},t,e,arguments.length)}}),S.each(["top","left"],function(e,n){S.cssHooks[n]=$e(y.pixelPosition,function(e,t){if(t)return t=Be(e,n),Me.test(t)?S(e).position()[n]+"px":t})}),S.each({Height:"height",Width:"width"},function(a,s){S.each({padding:"inner"+a,content:s,"":"outer"+a},function(r,o){S.fn[o]=function(e,t){var n=arguments.length&&(r||"boolean"!=typeof e),i=r||(!0===e||!0===t?"margin":"border");return $(this,function(e,t,n){var r;return x(e)?0===o.indexOf("outer")?e["inner"+a]:e.document.documentElement["client"+a]:9===e.nodeType?(r=e.documentElement,Math.max(e.body["scroll"+a],r["scroll"+a],e.body["offset"+a],r["offset"+a],r["client"+a])):void 0===n?S.css(e,t,i):S.style(e,t,n,i)},s,n?e:void 0,n)}})}),S.each(["ajaxStart","ajaxStop","ajaxComplete","ajaxError","ajaxSuccess","ajaxSend"],function(e,t){S.fn[t]=function(e){return this.on(t,e)}}),S.fn.extend({bind:function(e,t,n){return this.on(e,null,t,n)},unbind:function(e,t){return this.off(e,null,t)},delegate:function(e,t,n,r){return this.on(t,e,n,r)},undelegate:function(e,t,n){return 1===arguments.length?this.off(e,"**"):this.off(t,e||"**",n)},hover:function(e,t){return this.mouseenter(e).mouseleave(t||e)}}),S.each("blur focus focusin focusout resize scroll click dblclick mousedown mouseup mousemove mouseover mouseout mouseenter mouseleave change select submit keydown keypress keyup lowgomenu".split(" "),function(e,n){S.fn[n]=function(e,t){return 0<arguments.length?this.on(n,null,e,t):this.trigger(n)}});var Gt=/^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g;S.proxy=function(e,t){var n,r,i;if("string"==typeof t&&(n=e[t],t=e,e=n),m(e))return r=s.call(arguments,2),(i=function(){return e.apply(t||this,r.concat(s.call(arguments)))}).guid=e.guid=e.guid||S.guid++,i},S.holdReady=function(e){e?S.readyWait++:S.ready(!0)},S.isArray=Array.isArray,S.parseJSON=JSON.parse,S.nodeName=A,S.isFunction=m,S.isWindow=x,S.camelCase=X,S.type=w,S.now=Date.now,S.isNumeric=function(e){var t=S.type(e);return("number"===t||"string"===t)&&!isNaN(e-parseFloat(e))},S.trim=function(e){return null==e?"":(e+"").replace(Gt,"")},"function"==typeof define&&define.amd&&define("jquery",[],function(){return S});var Yt=C.jQuery,Qt=C.$;return S.noConflict=function(e){return C.$===S&&(C.$=Qt),e&&C.jQuery===S&&(C.jQuery=Yt),S},"undefined"==typeof e&&(C.jQuery=C.$=S),S});
diff --git a/public/static/home/assets/js/vendor/modernizr-2.8.3.min.js b/public/static/home/assets/js/vendor/modernizr-2.8.3.min.js
new file mode 100644
index 0000000..dc00a6e
--- /dev/null
+++ b/public/static/home/assets/js/vendor/modernizr-2.8.3.min.js
@@ -0,0 +1,4 @@
+/* Modernizr 2.8.3 (Custom Build) | MIT & BSD
+ * Build: http://modernizr.com/download/#-fontface-backgroundsize-borderimage-borderradius-boxshadow-flexbox-hsla-multiplebgs-opacity-rgba-textshadow-cssanimations-csscolumns-generatedcontent-cssgradients-cssreflections-csstransforms-csstransforms3d-csstransitions-applicationcache-canvas-canvastext-draganddrop-hashchange-history-audio-video-indexeddb-input-inputtypes-localstorage-postmessage-sessionstorage-websockets-websqldatabase-webworkers-geolocation-inlinesvg-smil-svg-svgclippaths-touch-webgl-shiv-mq-cssclasses-addtest-prefixed-teststyles-testprop-testallprops-hasevent-prefixes-domprefixes-load
+ */
+;window.Modernizr=function(a,b,c){function D(a){j.cssText=a}function E(a,b){return D(n.join(a+";")+(b||""))}function F(a,b){return typeof a===b}function G(a,b){return!!~(""+a).indexOf(b)}function H(a,b){for(var d in a){var e=a[d];if(!G(e,"-")&&j[e]!==c)return b=="pfx"?e:!0}return!1}function I(a,b,d){for(var e in a){var f=b[a[e]];if(f!==c)return d===!1?a[e]:F(f,"function")?f.bind(d||b):f}return!1}function J(a,b,c){var d=a.charAt(0).toUpperCase()+a.slice(1),e=(a+" "+p.join(d+" ")+d).split(" ");return F(b,"string")||F(b,"undefined")?H(e,b):(e=(a+" "+q.join(d+" ")+d).split(" "),I(e,b,c))}function K(){e.input=function(c){for(var d=0,e=c.length;d<e;d++)u[c[d]]=c[d]in k;return u.list&&(u.list=!!b.createElement("datalist")&&!!a.HTMLDataListElement),u}("autocomplete autofocus list placeholder max min multiple pattern required step".split(" ")),e.inputtypes=function(a){for(var d=0,e,f,h,i=a.length;d<i;d++)k.setAttribute("type",f=a[d]),e=k.type!=="text",e&&(k.value=l,k.style.cssText="position:absolute;visibility:hidden;",/^range$/.test(f)&&k.style.WebkitAppearance!==c?(g.appendChild(k),h=b.defaultView,e=h.getComputedStyle&&h.getComputedStyle(k,null).WebkitAppearance!=="textfield"&&k.offsetHeight!==0,g.removeChild(k)):/^(search|tel)$/.test(f)||(/^(url|email)$/.test(f)?e=k.checkValidity&&k.checkValidity()===!1:e=k.value!=l)),t[a[d]]=!!e;return t}("search tel url email datetime date month week time datetime-local number range color".split(" "))}var d="2.8.3",e={},f=!0,g=b.documentElement,h="modernizr",i=b.createElement(h),j=i.style,k=b.createElement("input"),l=":)",m={}.toString,n=" -webkit- -moz- -o- -ms- ".split(" "),o="Webkit Moz O ms",p=o.split(" "),q=o.toLowerCase().split(" "),r={svg:"http://www.w3.org/2000/svg"},s={},t={},u={},v=[],w=v.slice,x,y=function(a,c,d,e){var f,i,j,k,l=b.createElement("div"),m=b.body,n=m||b.createElement("body");if(parseInt(d,10))while(d--)j=b.createElement("div"),j.id=e?e[d]:h+(d+1),l.appendChild(j);return f=["­",'<style id="s',h,'">',a,"</style>"].join(""),l.id=h,(m?l:n).innerHTML+=f,n.appendChild(l),m||(n.style.background="",n.style.overflow="hidden",k=g.style.overflow,g.style.overflow="hidden",g.appendChild(n)),i=c(l,a),m?l.parentNode.removeChild(l):(n.parentNode.removeChild(n),g.style.overflow=k),!!i},z=function(b){var c=a.matchMedia||a.msMatchMedia;if(c)return c(b)&&c(b).matches||!1;var d;return y("@media "+b+" { #"+h+" { position: absolute; } }",function(b){d=(a.getComputedStyle?getComputedStyle(b,null):b.currentStyle)["position"]=="absolute"}),d},A=function(){function d(d,e){e=e||b.createElement(a[d]||"div"),d="on"+d;var f=d in e;return f||(e.setAttribute||(e=b.createElement("div")),e.setAttribute&&e.removeAttribute&&(e.setAttribute(d,""),f=F(e[d],"function"),F(e[d],"undefined")||(e[d]=c),e.removeAttribute(d))),e=null,f}var a={select:"input",change:"input",submit:"form",reset:"form",error:"img",load:"img",abort:"img"};return d}(),B={}.hasOwnProperty,C;!F(B,"undefined")&&!F(B.call,"undefined")?C=function(a,b){return B.call(a,b)}:C=function(a,b){return b in a&&F(a.constructor.prototype[b],"undefined")},Function.prototype.bind||(Function.prototype.bind=function(b){var c=this;if(typeof c!="function")throw new TypeError;var d=w.call(arguments,1),e=function(){if(this instanceof e){var a=function(){};a.prototype=c.prototype;var f=new a,g=c.apply(f,d.concat(w.call(arguments)));return Object(g)===g?g:f}return c.apply(b,d.concat(w.call(arguments)))};return e}),s.flexbox=function(){return J("flexWrap")},s.canvas=function(){var a=b.createElement("canvas");return!!a.getlowgo&&!!a.getlowgo("2d")},s.canvastext=function(){return!!e.canvas&&!!F(b.createElement("canvas").getlowgo("2d").fillText,"function")},s.webgl=function(){return!!a.WebGLRenderinglowgo},s.touch=function(){var c;return"ontouchstart"in a||a.DocumentTouch&&b instanceof DocumentTouch?c=!0:y(["@media (",n.join("touch-enabled),("),h,")","{#modernizr{top:9px;position:absolute}}"].join(""),function(a){c=a.offsetTop===9}),c},s.geolocation=function(){return"geolocation"in navigator},s.postmessage=function(){return!!a.postMessage},s.websqldatabase=function(){return!!a.openDatabase},s.indexedDB=function(){return!!J("indexedDB",a)},s.hashchange=function(){return A("hashchange",a)&&(b.documentMode===c||b.documentMode>7)},s.history=function(){return!!a.history&&!!history.pushState},s.draganddrop=function(){var a=b.createElement("div");return"draggable"in a||"ondragstart"in a&&"ondrop"in a},s.websockets=function(){return"WebSocket"in a||"MozWebSocket"in a},s.rgba=function(){return D("background-color:rgba(150,255,150,.5)"),G(j.backgroundColor,"rgba")},s.hsla=function(){return D("background-color:hsla(120,40%,100%,.5)"),G(j.backgroundColor,"rgba")||G(j.backgroundColor,"hsla")},s.multiplebgs=function(){return D("background:url(://),url(://),red url(://)"),/(url\s*\(.*?){3}/.test(j.background)},s.backgroundsize=function(){return J("backgroundSize")},s.borderimage=function(){return J("borderImage")},s.borderradius=function(){return J("borderRadius")},s.boxshadow=function(){return J("boxShadow")},s.textshadow=function(){return b.createElement("div").style.textShadow===""},s.opacity=function(){return E("opacity:.55"),/^0.55$/.test(j.opacity)},s.cssanimations=function(){return J("animationName")},s.csscolumns=function(){return J("columnCount")},s.cssgradients=function(){var a="background-image:",b="gradient(linear,left top,right bottom,from(#9f9),to(white));",c="linear-gradient(left top,#9f9, white);";return D((a+"-webkit- ".split(" ").join(b+a)+n.join(c+a)).slice(0,-a.length)),G(j.backgroundImage,"gradient")},s.cssreflections=function(){return J("boxReflect")},s.csstransforms=function(){return!!J("transform")},s.csstransforms3d=function(){var a=!!J("perspective");return a&&"webkitPerspective"in g.style&&y("@media (transform-3d),(-webkit-transform-3d){#modernizr{left:9px;position:absolute;height:3px;}}",function(b,c){a=b.offsetLeft===9&&b.offsetHeight===3}),a},s.csstransitions=function(){return J("transition")},s.fontface=function(){var a;return y('@font-face {font-family:"font";src:url("://")}',function(c,d){var e=b.getElementById("smodernizr"),f=e.sheet||e.styleSheet,g=f?f.cssRules&&f.cssRules[0]?f.cssRules[0].cssText:f.cssText||"":"";a=/src/i.test(g)&&g.indexOf(d.split(" ")[0])===0}),a},s.generatedcontent=function(){var a;return y(["#",h,"{font:0/0 a}#",h,':after{content:"',l,'";visibility:hidden;font:3px/1 a}'].join(""),function(b){a=b.offsetHeight>=3}),a},s.video=function(){var a=b.createElement("video"),c=!1;try{if(c=!!a.canPlayType)c=new Boolean(c),c.ogg=a.canPlayType('video/ogg; codecs="theora"').replace(/^no$/,""),c.h264=a.canPlayType('video/mp4; codecs="avc1.42E01E"').replace(/^no$/,""),c.webm=a.canPlayType('video/webm; codecs="vp8, vorbis"').replace(/^no$/,"")}catch(d){}return c},s.audio=function(){var a=b.createElement("audio"),c=!1;try{if(c=!!a.canPlayType)c=new Boolean(c),c.ogg=a.canPlayType('audio/ogg; codecs="vorbis"').replace(/^no$/,""),c.mp3=a.canPlayType("audio/mpeg;").replace(/^no$/,""),c.wav=a.canPlayType('audio/wav; codecs="1"').replace(/^no$/,""),c.m4a=(a.canPlayType("audio/x-m4a;")||a.canPlayType("audio/aac;")).replace(/^no$/,"")}catch(d){}return c},s.localstorage=function(){try{return localStorage.setItem(h,h),localStorage.removeItem(h),!0}catch(a){return!1}},s.sessionstorage=function(){try{return sessionStorage.setItem(h,h),sessionStorage.removeItem(h),!0}catch(a){return!1}},s.webworkers=function(){return!!a.Worker},s.applicationcache=function(){return!!a.applicationCache},s.svg=function(){return!!b.createElementNS&&!!b.createElementNS(r.svg,"svg").createSVGRect},s.inlinesvg=function(){var a=b.createElement("div");return a.innerHTML="<svg/>",(a.firstChild&&a.firstChild.namespaceURI)==r.svg},s.smil=function(){return!!b.createElementNS&&/SVGAnimate/.test(m.call(b.createElementNS(r.svg,"animate")))},s.svgclippaths=function(){return!!b.createElementNS&&/SVGClipPath/.test(m.call(b.createElementNS(r.svg,"clipPath")))};for(var L in s)C(s,L)&&(x=L.toLowerCase(),e[x]=s[L](),v.push((e[x]?"":"no-")+x));return e.input||K(),e.addTest=function(a,b){if(typeof a=="object")for(var d in a)C(a,d)&&e.addTest(d,a[d]);else{a=a.toLowerCase();if(e[a]!==c)return e;b=typeof b=="function"?b():b,typeof f!="undefined"&&f&&(g.className+=" "+(b?"":"no-")+a),e[a]=b}return e},D(""),i=k=null,function(a,b){function l(a,b){var c=a.createElement("p"),d=a.getElementsByTagName("head")[0]||a.documentElement;return c.innerHTML="x<style>"+b+"</style>",d.insertBefore(c.lastChild,d.firstChild)}function m(){var a=s.elements;return typeof a=="string"?a.split(" "):a}function n(a){var b=j[a[h]];return b||(b={},i++,a[h]=i,j[i]=b),b}function o(a,c,d){c||(c=b);if(k)return c.createElement(a);d||(d=n(c));var g;return d.cache[a]?g=d.cache[a].cloneNode():f.test(a)?g=(d.cache[a]=d.createElem(a)).cloneNode():g=d.createElem(a),g.canHaveChildren&&!e.test(a)&&!g.tagUrn?d.frag.appendChild(g):g}function p(a,c){a||(a=b);if(k)return a.createDocumentFragment();c=c||n(a);var d=c.frag.cloneNode(),e=0,f=m(),g=f.length;for(;e<g;e++)d.createElement(f[e]);return d}function q(a,b){b.cache||(b.cache={},b.createElem=a.createElement,b.createFrag=a.createDocumentFragment,b.frag=b.createFrag()),a.createElement=function(c){return s.shivMethods?o(c,a,b):b.createElem(c)},a.createDocumentFragment=Function("h,f","return function(){var n=f.cloneNode(),c=n.createElement;h.shivMethods&&("+m().join().replace(/[\w\-]+/g,function(a){return b.createElem(a),b.frag.createElement(a),'c("'+a+'")'})+");return n}")(s,b.frag)}function r(a){a||(a=b);var c=n(a);return s.shivCSS&&!g&&!c.hasCSS&&(c.hasCSS=!!l(a,"article,aside,dialog,figcaption,figure,footer,header,hgroup,main,nav,section{display:block}mark{background:#FF0;color:#000}template{display:none}")),k||q(a,c),a}var c="3.7.0",d=a.html5||{},e=/^<|^(?:button|map|select|textarea|object|iframe|option|optgroup)$/i,f=/^(?:a|b|code|div|fieldset|h1|h2|h3|h4|h5|h6|i|label|li|ol|p|q|span|strong|style|table|tbody|td|th|tr|ul)$/i,g,h="_html5shiv",i=0,j={},k;(function(){try{var a=b.createElement("a");a.innerHTML="<xyz></xyz>",g="hidden"in a,k=a.childNodes.length==1||function(){b.createElement("a");var a=b.createDocumentFragment();return typeof a.cloneNode=="undefined"||typeof a.createDocumentFragment=="undefined"||typeof a.createElement=="undefined"}()}catch(c){g=!0,k=!0}})();var s={elements:d.elements||"abbr article aside audio bdi canvas data datalist details dialog figcaption figure footer header hgroup main mark meter nav output progress section summary template time video",version:c,shivCSS:d.shivCSS!==!1,supportsUnknownElements:k,shivMethods:d.shivMethods!==!1,type:"default",shivDocument:r,createElement:o,createDocumentFragment:p};a.html5=s,r(b)}(this,b),e._version=d,e._prefixes=n,e._domPrefixes=q,e._cssomPrefixes=p,e.mq=z,e.hasEvent=A,e.testProp=function(a){return H([a])},e.testAllProps=J,e.testStyles=y,e.prefixed=function(a,b,c){return b?J(a,b,c):J(a,"pfx")},g.className=g.className.replace(/(^|\s)no-js(\s|$)/,"$1$2")+(f?" js "+v.join(" "):""),e}(this,this.document),function(a,b,c){function d(a){return"[object Function]"==o.call(a)}function e(a){return"string"==typeof a}function f(){}function g(a){return!a||"loaded"==a||"complete"==a||"uninitialized"==a}function h(){var a=p.shift();q=1,a?a.t?m(function(){("c"==a.t?B.injectCss:B.injectJs)(a.s,0,a.a,a.x,a.e,1)},0):(a(),h()):q=0}function i(a,c,d,e,f,i,j){function k(b){if(!o&&g(l.readyState)&&(u.r=o=1,!q&&h(),l.onload=l.onreadystatechange=null,b)){"img"!=a&&m(function(){t.removeChild(l)},50);for(var d in y[c])y[c].hasOwnProperty(d)&&y[c][d].onload()}}var j=j||B.errorTimeout,l=b.createElement(a),o=0,r=0,u={t:d,s:c,e:f,a:i,x:j};1===y[c]&&(r=1,y[c]=[]),"object"==a?l.data=c:(l.src=c,l.type=a),l.width=l.height="0",l.onerror=l.onload=l.onreadystatechange=function(){k.call(this,r)},p.splice(e,0,u),"img"!=a&&(r||2===y[c]?(t.insertBefore(l,s?null:n),m(k,j)):y[c].push(l))}function j(a,b,c,d,f){return q=0,b=b||"j",e(a)?i("c"==b?v:u,a,b,this.i++,c,d,f):(p.splice(this.i++,0,a),1==p.length&&h()),this}function k(){var a=B;return a.loader={load:j,i:0},a}var l=b.documentElement,m=a.setTimeout,n=b.getElementsByTagName("script")[0],o={}.toString,p=[],q=0,r="MozAppearance"in l.style,s=r&&!!b.createRange().compareNode,t=s?l:n.parentNode,l=a.opera&&"[object Opera]"==o.call(a.opera),l=!!b.attachEvent&&!l,u=r?"object":l?"script":"img",v=l?"script":u,w=Array.isArray||function(a){return"[object Array]"==o.call(a)},x=[],y={},z={timeout:function(a,b){return b.length&&(a.timeout=b[0]),a}},A,B;B=function(a){function b(a){var a=a.split("!"),b=x.length,c=a.pop(),d=a.length,c={url:c,origUrl:c,prefixes:a},e,f,g;for(f=0;f<d;f++)g=a[f].split("="),(e=z[g.shift()])&&(c=e(c,g));for(f=0;f<b;f++)c=x[f](c);return c}function g(a,e,f,g,h){var i=b(a),j=i.autoCallback;i.url.split(".").pop().split("?").shift(),i.bypass||(e&&(e=d(e)?e:e[a]||e[g]||e[a.split("/").pop().split("?")[0]]),i.instead?i.instead(a,e,f,g,h):(y[i.url]?i.noexec=!0:y[i.url]=1,f.load(i.url,i.forceCSS||!i.forceJS&&"css"==i.url.split(".").pop().split("?").shift()?"c":c,i.noexec,i.attrs,i.timeout),(d(e)||d(j))&&f.load(function(){k(),e&&e(i.origUrl,h,g),j&&j(i.origUrl,h,g),y[i.url]=2})))}function h(a,b){function c(a,c){if(a){if(e(a))c||(j=function(){var a=[].slice.call(arguments);k.apply(this,a),l()}),g(a,j,b,0,h);else if(Object(a)===a)for(n in m=function(){var b=0,c;for(c in a)a.hasOwnProperty(c)&&b++;return b}(),a)a.hasOwnProperty(n)&&(!c&&!--m&&(d(j)?j=function(){var a=[].slice.call(arguments);k.apply(this,a),l()}:j[n]=function(a){return function(){var b=[].slice.call(arguments);a&&a.apply(this,b),l()}}(k[n])),g(a[n],j,b,n,h))}else!c&&l()}var h=!!a.test,i=a.load||a.both,j=a.callback||f,k=j,l=a.complete||f,m,n;c(h?a.yep:a.nope,!!i),i&&c(i)}var i,j,l=this.yepnope.loader;if(e(a))g(a,0,l,0);else if(w(a))for(i=0;i<a.length;i++)j=a[i],e(j)?g(j,0,l,0):w(j)?B(j):Object(j)===j&&h(j,l);else Object(a)===a&&h(a,l)},B.addPrefix=function(a,b){z[a]=b},B.addFilter=function(a){x.push(a)},B.errorTimeout=1e4,null==b.readyState&&b.addEventListener&&(b.readyState="loading",b.addEventListener("DOMContentLoaded",A=function(){b.removeEventListener("DOMContentLoaded",A,0),b.readyState="complete"},0)),a.yepnope=k(),a.yepnope.executeStack=h,a.yepnope.injectJs=function(a,c,d,e,i,j){var k=b.createElement("script"),l,o,e=e||B.errorTimeout;k.src=a;for(o in d)k.setAttribute(o,d[o]);c=j?h:c||f,k.onreadystatechange=k.onload=function(){!l&&g(k.readyState)&&(l=1,c(),k.onload=k.onreadystatechange=null)},m(function(){l||(l=1,c(1))},e),i?k.onload():n.parentNode.insertBefore(k,n)},a.yepnope.injectCss=function(a,c,d,e,g,i){var e=b.createElement("link"),j,c=i?h:c||f;e.href=a,e.rel="stylesheet",e.type="text/css";for(j in d)e.setAttribute(j,d[j]);g||(n.parentNode.insertBefore(e,n),m(c,0))}}(this,document),Modernizr.load=function(){yepnope.apply(window,[].slice.call(arguments,0))};
diff --git a/public/static/home/assets/webfonts/fa-brands-400.ttf b/public/static/home/assets/webfonts/fa-brands-400.ttf
new file mode 100644
index 0000000..82e255a
--- /dev/null
+++ b/public/static/home/assets/webfonts/fa-brands-400.ttf
Binary files differ
diff --git a/public/static/home/assets/webfonts/fa-brands-400.woff b/public/static/home/assets/webfonts/fa-brands-400.woff
new file mode 100644
index 0000000..b0021db
--- /dev/null
+++ b/public/static/home/assets/webfonts/fa-brands-400.woff
Binary files differ
diff --git a/public/static/home/assets/webfonts/fa-brands-400.woff2 b/public/static/home/assets/webfonts/fa-brands-400.woff2
new file mode 100644
index 0000000..b53cbbf
--- /dev/null
+++ b/public/static/home/assets/webfonts/fa-brands-400.woff2
Binary files differ
diff --git a/public/static/home/assets/webfonts/fa-regular-400.ttf b/public/static/home/assets/webfonts/fa-regular-400.ttf
new file mode 100644
index 0000000..5267d85
--- /dev/null
+++ b/public/static/home/assets/webfonts/fa-regular-400.ttf
Binary files differ
diff --git a/public/static/home/assets/webfonts/fa-regular-400.woff b/public/static/home/assets/webfonts/fa-regular-400.woff
new file mode 100644
index 0000000..f513c1c
--- /dev/null
+++ b/public/static/home/assets/webfonts/fa-regular-400.woff
Binary files differ
diff --git a/public/static/home/assets/webfonts/fa-regular-400.woff2 b/public/static/home/assets/webfonts/fa-regular-400.woff2
new file mode 100644
index 0000000..2e72e87
--- /dev/null
+++ b/public/static/home/assets/webfonts/fa-regular-400.woff2
Binary files differ
diff --git a/public/static/home/assets/webfonts/fa-solid-900.ttf b/public/static/home/assets/webfonts/fa-solid-900.ttf
new file mode 100644
index 0000000..16d4469
--- /dev/null
+++ b/public/static/home/assets/webfonts/fa-solid-900.ttf
Binary files differ
diff --git a/public/static/home/assets/webfonts/fa-solid-900.woff b/public/static/home/assets/webfonts/fa-solid-900.woff
new file mode 100644
index 0000000..608f9e1
--- /dev/null
+++ b/public/static/home/assets/webfonts/fa-solid-900.woff
Binary files differ
diff --git a/public/static/home/assets/webfonts/fa-solid-900.woff2 b/public/static/home/assets/webfonts/fa-solid-900.woff2
new file mode 100644
index 0000000..5a60d47
--- /dev/null
+++ b/public/static/home/assets/webfonts/fa-solid-900.woff2
Binary files differ
diff --git a/public/static/home/images/amzon.png b/public/static/home/images/amzon.png
deleted file mode 100644
index c84c3bc..0000000
--- a/public/static/home/images/amzon.png
+++ /dev/null
Binary files differ
diff --git a/public/static/home/images/bg1.jpg b/public/static/home/images/bg1.jpg
deleted file mode 100644
index e9ca233..0000000
--- a/public/static/home/images/bg1.jpg
+++ /dev/null
Binary files differ
diff --git a/public/static/home/images/bg2.jpg b/public/static/home/images/bg2.jpg
deleted file mode 100644
index ed47341..0000000
--- a/public/static/home/images/bg2.jpg
+++ /dev/null
Binary files differ
diff --git a/public/static/home/images/bg3.jpg b/public/static/home/images/bg3.jpg
deleted file mode 100644
index 5f44f0c..0000000
--- a/public/static/home/images/bg3.jpg
+++ /dev/null
Binary files differ
diff --git a/public/static/home/images/camel-1.jpg b/public/static/home/images/camel-1.jpg
deleted file mode 100644
index 004ffd6..0000000
--- a/public/static/home/images/camel-1.jpg
+++ /dev/null
Binary files differ
diff --git a/public/static/home/images/camel-2.png b/public/static/home/images/camel-2.png
deleted file mode 100644
index 09a294c..0000000
--- a/public/static/home/images/camel-2.png
+++ /dev/null
Binary files differ
diff --git a/public/static/home/images/ebay.png b/public/static/home/images/ebay.png
deleted file mode 100644
index d1a4170..0000000
--- a/public/static/home/images/ebay.png
+++ /dev/null
Binary files differ
diff --git a/public/static/home/images/img-1.png b/public/static/home/images/img-1.png
new file mode 100644
index 0000000..8224e53
--- /dev/null
+++ b/public/static/home/images/img-1.png
Binary files differ
diff --git a/public/static/home/images/img-2.png b/public/static/home/images/img-2.png
new file mode 100644
index 0000000..174a53c
--- /dev/null
+++ b/public/static/home/images/img-2.png
Binary files differ
diff --git a/public/static/home/images/img01.png b/public/static/home/images/img01.png
deleted file mode 100644
index 0f9ab8e..0000000
--- a/public/static/home/images/img01.png
+++ /dev/null
Binary files differ
diff --git a/public/static/home/images/lingcheng-1.jpg b/public/static/home/images/lingcheng-1.jpg
deleted file mode 100644
index b4a078b..0000000
--- a/public/static/home/images/lingcheng-1.jpg
+++ /dev/null
Binary files differ
diff --git a/public/static/home/images/lingcheng-2.jpg b/public/static/home/images/lingcheng-2.jpg
deleted file mode 100644
index 50e7309..0000000
--- a/public/static/home/images/lingcheng-2.jpg
+++ /dev/null
Binary files differ
diff --git a/public/static/home/images/logo-center.png b/public/static/home/images/logo-center.png
deleted file mode 100644
index fc58b1d..0000000
--- a/public/static/home/images/logo-center.png
+++ /dev/null
Binary files differ
diff --git a/public/static/home/images/logo.png b/public/static/home/images/logo.png
new file mode 100644
index 0000000..3fc9975
--- /dev/null
+++ b/public/static/home/images/logo.png
Binary files differ
diff --git a/public/static/home/images/shopify.png b/public/static/home/images/shopify.png
deleted file mode 100644
index 6bc4a01..0000000
--- a/public/static/home/images/shopify.png
+++ /dev/null
Binary files differ
diff --git a/public/static/home/images/slider-1.png b/public/static/home/images/slider-1.png
new file mode 100644
index 0000000..2993ef8
--- /dev/null
+++ b/public/static/home/images/slider-1.png
Binary files differ
diff --git a/public/static/home/images/slider-2.png b/public/static/home/images/slider-2.png
new file mode 100644
index 0000000..566e4d7
--- /dev/null
+++ b/public/static/home/images/slider-2.png
Binary files differ
diff --git a/public/static/home/images/tools1.jpg b/public/static/home/images/tools1.jpg
deleted file mode 100644
index d66308b..0000000
--- a/public/static/home/images/tools1.jpg
+++ /dev/null
Binary files differ
diff --git a/public/static/home/images/tools2.jpg b/public/static/home/images/tools2.jpg
deleted file mode 100644
index e9ddf86..0000000
--- a/public/static/home/images/tools2.jpg
+++ /dev/null
Binary files differ
diff --git a/public/static/home/images/tools3.jpg b/public/static/home/images/tools3.jpg
deleted file mode 100644
index a6694aa..0000000
--- a/public/static/home/images/tools3.jpg
+++ /dev/null
Binary files differ
diff --git a/public/static/home/images/tools4.jpg b/public/static/home/images/tools4.jpg
deleted file mode 100644
index 8617be1..0000000
--- a/public/static/home/images/tools4.jpg
+++ /dev/null
Binary files differ
diff --git a/public/static/home/images/tools5.jpg b/public/static/home/images/tools5.jpg
deleted file mode 100644
index f63c048..0000000
--- a/public/static/home/images/tools5.jpg
+++ /dev/null
Binary files differ
diff --git a/public/static/home/images/tools6.jpg b/public/static/home/images/tools6.jpg
deleted file mode 100644
index c488a6b..0000000
--- a/public/static/home/images/tools6.jpg
+++ /dev/null
Binary files differ
diff --git a/public/static/home/images/tools7.jpg b/public/static/home/images/tools7.jpg
deleted file mode 100644
index fa66391..0000000
--- a/public/static/home/images/tools7.jpg
+++ /dev/null
Binary files differ
diff --git a/public/static/home/images/tools8.jpg b/public/static/home/images/tools8.jpg
deleted file mode 100644
index 8b0e088..0000000
--- a/public/static/home/images/tools8.jpg
+++ /dev/null
Binary files differ
diff --git a/public/static/home/images/walmart.png b/public/static/home/images/walmart.png
deleted file mode 100644
index 5f4a94d..0000000
--- a/public/static/home/images/walmart.png
+++ /dev/null
Binary files differ
diff --git a/public/static/home/images/wish.png b/public/static/home/images/wish.png
deleted file mode 100644
index b65b9e5..0000000
--- a/public/static/home/images/wish.png
+++ /dev/null
Binary files differ
diff --git a/public/static/home/style.css b/public/static/home/style.css
new file mode 100644
index 0000000..091b61c
--- /dev/null
+++ b/public/static/home/style.css
@@ -0,0 +1,5970 @@
+@import url('https://fonts.googleapis.com/css2?family=Nunito:wght@200;300;400;600;700;800;900&family=Roboto:wght@100;300;400;500;700;900&display=swap');
+
+/*theme css*/
+a {
+ color: #ff3d00;
+ transition: .5s;
+}
+
+a:hover {
+ text-decoration: none;
+ color: #ff3d00;
+}
+
+body {
+ font-family: 'Nunito', sans-serif;
+ font-weight: 400;
+ font-style: normal;
+ font-size: 16px;
+ line-height: 1.6;
+}
+
+p {
+ font-style: normal;
+}
+
+h1,
+h2,
+h3,
+h4,
+h5,
+h6,
+h1 a,
+h2 a,
+h3 a,
+h4 a,
+h5 a,
+h6 a {
+ font-family: 'Roboto', sans-serif;
+ font-style: normal;
+ line-height: 1.2;
+ font-weight: 700;
+ transition: .5s;
+ font-size: 22px;
+ margin-bottom: 0;
+ color: #111;
+}
+
+.btn-primary:focus,
+select:focus,
+textarea:focus,
+input:focus {
+ box-shadow: none !important;
+}
+
+textarea,
+input {
+ outline: none;
+}
+
+a:focus,
+.btn:focus {
+ text-decoration: none;
+ outline: none;
+}
+
+.uppercase {
+ text-transform: uppercase;
+}
+
+.capitalize {
+ text-transform: capitalize;
+}
+
+/* title css */
+.witr_section_title_inner h1,
+.witr_section_title_inner h2,
+.witr_section_title_inner h3 {
+ font-size: 40px;
+ margin: auto;
+ font-weight: 700;
+}
+
+.all_counter_color h4,
+.all_counter_color h1 {
+ color: #FFFFFF;
+}
+
+.all_counter_color h3,
+.all_counter_color span {
+ color: #FFFFFF;
+ margin: -5px 0px 0px 0px;
+}
+
+.witr_section_title_inner.text-center p {
+ width: 71%;
+ margin-right: auto;
+ margin-left: auto;
+}
+
+.witr_section_title {
+ padding-bottom: 0px;
+}
+
+.witr_section_title {
+ position: relative;
+ padding-bottom: 30px;
+}
+
+.witr_section_title_inner {
+ position: relative;
+ z-index: 1;
+}
+
+.witr_back_title {
+ position: absolute;
+ top: 0;
+ bottom: 0;
+ right: 0;
+ left: 0;
+}
+
+.title_in .witr_back_title {
+ z-index: -1;
+}
+
+.witr_back_title h4 {
+ font-size: 80px;
+ -webkit-text-stroke: 1px #888888;
+ -webkit-text-fill-color: transparent;
+ line-height: 1;
+}
+
+.witr_section_title_inner h1,
+.witr_section_title_inner h2,
+.witr_section_title_inner h3 {
+ font-size: 40px;
+ margin: auto;
+}
+
+.text-right.witr_section_title_inner h1,
+.text-right.witr_section_title_inner h2,
+.text-right.witr_section_title_inner h3 {
+ margin-right: 0px;
+}
+
+.text-left.witr_section_title_inner h1,
+.text-left.witr_section_title_inner h2,
+.text-left.witr_section_title_inner h3 {
+ margin-left: 0px;
+}
+
+.witr_section_title_inner h1 {}
+
+.witr_section_title_inner h2 {
+ font-size: 16px;
+ display: inline-block;
+ text-transform: uppercase;
+ color: #ff3d00;
+}
+
+.all_counter_color i,
+.witr_counter_img {
+ margin: 0px 20px 0px 0px;
+ padding: 10px 0px 0px 0px;
+}
+
+.witr_section_title_inner h3 {
+ padding: 0px;
+}
+
+.witr_section_title_inner p span a,
+.witr_section_title_inner p span,
+.witr_section_title_inner h1 span,
+.witr_section_title_inner h2 span,
+.witr_section_title_inner h3 span {
+ color: #ff3d00;
+}
+
+.witr_section_title_inner p {
+ margin-top: 10px;
+}
+
+.witr_section_title_inner.text-center p {
+ margin-right: auto;
+ margin-left: auto;
+}
+
+.witr_section_title_inner.text-left p {
+ margin-right: auto;
+ margin-left: 0px;
+}
+
+.witr_section_title_inner.text-right p {
+ width: 81%;
+ margin-right: 0px;
+ margin-left: auto;
+}
+
+.witr_image_title {
+ margin-top: 0px;
+ margin-bottom: 10px;
+}
+
+.white .witr_section_title_inner h1,
+.white .witr_section_title_inner h2,
+.white .witr_section_title_inner h3,
+.white .witr_section_title_inner p {
+ color: #fff;
+}
+
+.title_btn a {
+ background: #e0a067;
+ padding: 15px 30px;
+ color: #fff;
+ display: inline-block;
+}
+
+/* button hover style */
+.pricing-part a.btn,
+.feature_btn a,
+.witr_ser_btnb a,
+.service-btn>a,
+a.dtbtn,
+.witr_btn,
+.witr_bbtn,
+.witr_gbtn,
+.witr_gbbtn,
+.lowgo_button a,
+.witr_sbtn_s8 a {
+ border-radius: 5px;
+ font-size: 16px;
+}
+
+.witr_ser_btnb a:hover,
+a.dtbtn:hover,
+.witr_btn:hover,
+.lowgo_button a:hover {
+ background: #140909;
+}
+
+.witr_btn:hover {
+ background: #140909;
+ color: #fff;
+}
+
+.witr_gbtn::before {
+ border-radius: 30px;
+}
+
+.tx_golobal_color {
+ background: #e0a067;
+}
+
+.tx_btn_global_color:hover {
+ background: #140909;
+}
+
+.logo-right,
+.logo-left {
+ align-items: center;
+}
+
+.witr_h_h2 .lowgo_menu,
+.witr_h_h3 .lowgo_menu,
+.witr_h_h4 .lowgo_menu,
+.witr_h_h5 .lowgo_menu,
+.witr_h_h6 .lowgo_menu,
+.witr_h_h7 .lowgo_menu,
+.witr_h_h8 .lowgo_menu,
+.witr_h_h9 .lowgo_menu,
+.witr_h_h10 .lowgo_menu,
+.witr_h_h11 .lowgo_menu,
+.witr_h_h14 .lowgo_menu,
+.witr_h_h17 .lowgo_menu,
+.witr_h_h18 .lowgo_menu,
+.witr_h_h19 .lowgo_menu,
+.witr_h_h20 .lowgo_menu,
+.witr_h_h21 .lowgo_menu {
+ display: -webkit-box;
+ display: -ms-flexbox;
+ display: flex;
+ -webkit-box-pack: end;
+ -ms-flex-pack: end;
+ justify-content: flex-end;
+ align-items: center;
+}
+
+.tx_relative_m,
+.tx_top2_relative {
+ position: relative;
+}
+
+/* bar color title */
+.witr_bar_main {
+ margin: 10px 0;
+}
+
+.witr_bar_inner {
+ height: 3px;
+ width: 90px;
+ background: #821F05;
+ margin: 0px auto;
+ position: relative;
+ border-radius: 30px;
+}
+
+.text-left .witr_bar_inner {
+ margin-left: 0px;
+}
+
+.text-right .witr_bar_inner {
+ margin-right: 0px;
+}
+
+/* circale Bar css */
+.witr_bar_innerc {
+ position: relative;
+}
+
+.witr_bar_innerc::before {
+ content: '\f177';
+ position: absolute;
+ left: 0;
+ top: 50%;
+ transform: translateY(-50%);
+ border: 5px solid #e0a067;
+ border-radius: 50%;
+ background: #1c1b1b;
+ -webkit-animation-duration: 3s;
+ animation-duration: 3s;
+ -webkit-animation-timing-function: linear;
+ animation-timing-function: linear;
+ -webkit-animation-iteration-count: infinite;
+ animation-iteration-count: infinite;
+ -webkit-animation-name: move_title_bg;
+ animation-name: move_title_bg1;
+}
+
+.witr_bar_innerc::after {
+ content: '\f178';
+ position: absolute;
+ right: 0;
+ top: 50%;
+ transform: translateY(-50%);
+ border: 5px solid #e0a067;
+ border-radius: 50%;
+ background: #1c1b1b;
+ -webkit-animation-duration: 3s;
+ animation-duration: 3s;
+ -webkit-animation-timing-function: linear;
+ animation-timing-function: linear;
+ -webkit-animation-iteration-count: infinite;
+ animation-iteration-count: infinite;
+ -webkit-animation-name: move_title_bg;
+ animation-name: move_title_bg2;
+}
+
+@keyframes move_title_bg1 {
+ from {
+ left: 0;
+ }
+
+ to {
+ left: 100%;
+ }
+}
+
+@keyframes move_title_bg2 {
+ from {
+ right: 0;
+ }
+
+ to {
+ right: 100%;
+ }
+}
+
+/* === style_w6 shape ==== */
+.witr_shape_item_inner {
+ position: absolute;
+ z-index: -1;
+ content: "";
+ transition: .5s;
+}
+
+.witr_shape_box {
+ width: 300px;
+ height: 300px;
+ background: #ddd;
+ border-radius: 50%;
+ border: 54px solid #f9f9f9;
+ margin: auto;
+ transition: .5s;
+}
+
+/* responsive 320 start */
+/* small mobile :320px. */
+@media (max-width: 479px) {
+ body {
+ overflow-x: hidden;
+ }
+
+ .lowgo-header-top {
+ /* display: none;
+ */
+ }
+
+ .top-right-menu ul.social-icons li {
+ margin-left: 13px;
+ }
+
+ .mean-container .mean-bar:before {
+ text-transform: uppercase;
+ top: 17px;
+ }
+
+ .mean-container a.meanmenu-reveal {
+ padding: 19px 20px 18px;
+ }
+
+ .witr_ac_style:before,
+ .active .witr_ac_style:before {
+ display: none;
+ }
+}
+
+/* responsive 320 end */
+
+/*===================== itpart HEADING TOP AREA CSS =========================*/
+/* LEFT RIGHT CSS */
+.em40_header_area_main.hdisplay_none {
+ display: none;
+}
+
+.itpart-header-top {
+ background: #ff3d00;
+
+}
+
+.itpart-header-top {
+ background-repeat: no-repeat;
+ background-position: center center;
+ background-image: url("/static/home/assets/images/top-bg-img.png");
+ background-size: cover;
+ padding: 10px 0px;
+}
+
+.top-address p {
+ margin-bottom: 0;
+}
+
+.top-address p span,
+.top-address p a {
+ margin-right: 20px;
+}
+
+.top-address p span i,
+.top-address p a i {
+ font-size: 13px;
+ color: #fff;
+ margin-right: 5px;
+}
+
+.top-address p span i:hover,
+.top-address p a i:hover {
+ color: #dd3333
+}
+
+.top-address p a {
+ display: inline-block;
+ text-decoration: none;
+ -webkit-transition: all 0.2s ease-in-out;
+ transition: all 0.2s ease-in-out;
+}
+
+/* TOP RIGHT CSS */
+.top-right-menu ul.social-icons {
+ margin: 0;
+ padding: 0;
+}
+
+.top-right-menu ul.social-icons li {
+ display: inline-block;
+ margin-left: 15px;
+ position: relative;
+}
+
+.top-right-menu ul.social-icons li a {
+ display: inline-block;
+ text-decoration: none;
+ -webkit-transition: all 0.2s ease-in-out;
+ transition: all 0.2s ease-in-out;
+ font-size: 15px;
+}
+
+.top-welcomet p span,
+.top-welcomet p a,
+.top-welcome p span,
+.top-welcome p a,
+.top-welcome p,
+.top-address p a,
+.top-right-menu ul.social-icons li a,
+.top-address p span {
+ color: #fff;
+ font-size: 15px;
+ font-weight: 500;
+}
+
+.top-welcome p a:hover {
+ color: #dd3333;
+}
+
+.top-right-menu .social-icons li a:hover,
+.top-right-menu .social-icons li a i:hover {
+ color: #dd3333;
+}
+
+.top-both-p0 .top-address p a,
+.top-both-p0 .top-address p span {
+ margin-right: 0px;
+ margin-left: 12px;
+}
+
+.top-right-menu .menu-item-has-children>a:after {
+ margin-left: 5px;
+ content: "\e62a";
+ font-family: themify;
+ font-size: 15px;
+ opacity: .7;
+}
+
+/* sub menu css */
+.top-right-menu ul .sub-menu {
+ position: absolute;
+ left: 0px;
+ top: 100%;
+ visibility: hidden;
+ opacity: 0;
+ -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)";
+ border-top: 1px solid #821F05;
+ width: 150px;
+ text-align: left;
+ background: #821F05;
+ z-index: 1;
+ transition: .5s;
+}
+
+.top-right-menu ul.social-icons li:hover .sub-menu {
+ opacity: 1;
+ -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)";
+ visibility: visible;
+}
+
+.top-right-menu ul .sub-menu li {
+ padding: 5px 0px 5px;
+}
+
+.top-right-menu ul .sub-menu li a {
+ font-size: 14px;
+}
+
+.top-right-menu ul .sub-menu ul {
+ display: none;
+}
+
+.top-welcome p {
+ padding: 0px;
+ margin: 0px;
+}
+
+.top-address.em-login a {
+ margin-right: 10px;
+}
+
+.top-address.em-login a+a {
+ margin-right: 0;
+}
+
+.top-address.em-login p a i,
+.top-address.em-login p a i {
+ margin-right: 5px;
+}
+
+.top-address.em-login a+a:before {
+ content: "|";
+ margin-right: 12px;
+}
+
+.txtc {
+ text-align: center;
+}
+
+.text-center {
+ text-align: center;
+}
+
+.text-left {
+ text-align: left !important;
+}
+
+.text-right {
+ text-align: right !important;
+}
+
+/* top opening */
+.top-address.menu_18 span {
+ padding: 8px 15px 9px;
+ display: inline-block;
+}
+
+.top-right-menu ul.social-icons.menu_18,
+.top-right-menu ul.social-icons.menu_19 {
+ padding: 7px 0;
+}
+
+.em-login.menu_18,
+.em-quearys-top.menu_19 {
+ padding: 7px 0;
+}
+
+/* address left right icon */
+.top-right-menu.litop {
+ float: left;
+}
+
+/* mobile logo */
+.mobile_menu_logo.text-center {
+ padding: 20px 0;
+}
+
+/*===================== END itpart HEADING TOP AREA CSS =========================*/
+/*======================== EM itpart HEADER =========================*/
+.em_itpart_header {
+ background: #f9f9f9 none repeat scroll 0% 0;
+ padding: 28px 0;
+ position: relative;
+ overflow: hidden;
+ z-index: 1;
+}
+
+.em_itpart_header:before {
+ background: #821F05 none repeat scroll 0% 0;
+ content: "";
+ left: 0;
+ top: 0;
+ bottom: 0;
+ width: 25%;
+ height: 100%;
+ z-index: -1;
+ position: absolute;
+}
+
+.em_itpart_header:after {
+ background: #821F05 none repeat scroll 0% 0;
+ content: "";
+ left: 18%;
+ top: 0;
+ bottom: 0;
+ width: 15%;
+ height: 100%;
+ position: absolute;
+ -webkit-transform: rotate(-121deg);
+ transform: rotate(-121deg);
+ z-index: -1;
+}
+
+.single_header_address {
+ text-align: left;
+}
+
+.itpart_logo_thumb {
+ z-index: 9;
+ text-align: right;
+}
+
+.itpart_header_icon {
+ float: left;
+ margin-right: 10px;
+ overflow: hidden;
+}
+
+.itpart_header_icon i {
+ color: #821F05;
+ font-size: 30px;
+ margin-top: 5px;
+ margin-left: 2px;
+ display: inline-block;
+}
+
+.itpart_header_address {
+ overflow: hidden;
+ padding-left: 80px;
+}
+
+.itpart_header_address_text>h3 {
+ font-size: 18px;
+ margin: 0;
+ padding: 0;
+}
+
+.itpart_header_address_text>p {
+ margin: 0;
+ overflow: hidden;
+}
+
+.itpart_header_address_text>p>a {
+ color: #999;
+}
+
+.itpart_logo_thumb {
+ z-index: 9;
+}
+
+.itpart_header_button {
+ padding-left: 50px;
+ position: relative;
+}
+
+.itpart_header_button:before {
+ content: "";
+ position: absolute;
+ background: #821F05;
+ width: 1px;
+ height: 74px;
+ left: 10px;
+ top: -14px;
+}
+
+.itpart_header_button .dtbtn {
+ background: #821F05;
+ border-radius: 5px;
+ color: #fff;
+ display: inline-block;
+ font-size: 15px;
+ font-weight: 600;
+ margin-left: 0;
+ padding: 12px 26px;
+ transition: .5s;
+}
+
+.itpart_header_button>a:hover {
+ background: #821F05;
+}
+
+.em_slider_social {
+ position: fixed;
+ right: 30px;
+ text-align: center;
+ top: 60%;
+ z-index: 999999;
+}
+
+.em_slider_social li {
+ display: block;
+ list-style: outside none none;
+ text-decoration: none;
+}
+
+.em_slider_social a {
+ background: #821F05;
+ border: 1px solid #821F05;
+ border-radius: 50%;
+ color: #fff;
+ display: inline-block;
+ font-size: 16px;
+ height: 35px;
+ line-height: 33px;
+ margin-bottom: 10px;
+ text-align: center;
+ width: 35px;
+}
+
+.em_slider_social a:hover {
+ background: #821F05;
+ color: #fff;
+ border-color: #821F05;
+}
+
+.no-logo-sr .itpart_menu ul {
+ text-align: center;
+}
+
+.no-logo-sr .itpart_menu ul li {
+ text-align: left;
+}
+
+/*======================= itpart HEADING NAV AREA CSS ========================*/
+.mean-container .mean-bar {
+ padding: 0;
+}
+
+.mean-container .mean-nav {
+ background: transparent;
+ float: none;
+}
+
+.main_menu_div {
+ position: relative;
+}
+
+.itpart_nav_area {
+ background: #fff none repeat scroll 0% 0;
+}
+
+/* LOGO CSS */
+.logo a {
+ font-size: 23px;
+ font-weight: 700;
+ display: inline-block;
+}
+
+/* MENU CSS */
+.itpart_menu ul {
+ text-align: right;
+ list-style: none;
+}
+
+/* witr_h_h18 menu css */
+.witr_shop_sc .itpart_menu ul {
+ text-align: left;
+}
+
+.search_popup_button,
+.tx_mmenu_together {
+ align-items: center;
+ display: flex;
+ justify-content: flex-end;
+}
+
+.tx_mmenu_together .donate-btn-header {
+ padding: 0;
+}
+
+.witr_shop_sc .donate-btn-header,
+.witr_shop_sc .em_top_cart.hshop {
+ padding: 0;
+}
+
+.witr_shop_sc .em-quearys-menu i {
+ border-radius: 3px;
+ margin-right: 20px;
+ margin-top: 7px;
+}
+
+.witr_shop_sc a.cart-contents {
+ background: #ff4a17;
+ color: #fff;
+ border-radius: 3px;
+ padding: 8px;
+ margin-top: 3px;
+ display: block;
+}
+
+.witr_shop_sc a.dtbtn {
+ margin-left: 20px;
+}
+
+.witr_shop_sc .em-header-quearys {
+ text-align: center;
+}
+
+/* witr_h_h21 menu css */
+.sb_popup .tx_mmenu_together {
+ justify-content: space-between;
+}
+
+/* witr_h_h22 menu css */
+.number_align {
+ justify-content: space-between;
+ display: flex;
+ align-items: center;
+}
+
+.menu_search {
+ display: flex;
+ align-items: center;
+}
+
+.main_menu_address_a {
+ display: flex;
+ align-items: center;
+ position: relative;
+}
+
+.main_menu_address_a::before {
+ content: "";
+ position: absolute;
+ background: #fbfbfb40;
+ width: 1px;
+ height: 107px;
+ left: 0;
+}
+
+.main_menu_header_icon {
+ margin-left: 25px;
+ margin-right: 10px;
+}
+
+.main_menu_header_icon i {
+ font-size: 30px;
+ color: #821F05;
+}
+
+.main_menu_header_address_text h3,
+.main_menu_header_address_text h4 a {
+ margin: 0;
+ font-weight: 600;
+}
+
+.main_menu_header_address_text h3 {
+ font-size: 18px;
+ color: #821F05;
+}
+
+.main_menu_header_address_text h4 a {
+ font-size: 18px;
+}
+
+.main_menu_header_address_text h4 {
+ margin-bottom: 0;
+}
+
+.prefix .main_menu_header_address_text h3,
+.prefix .main_menu_header_address_text h4 a,
+.prefix .main_menu_header_icon i {
+ color: #fff;
+}
+
+.itpart_menu>ul>li {
+ display: inline-block;
+ position: relative;
+}
+
+.itpart_menu>ul>li>a {
+ display: block;
+ margin: 38px 11px;
+ transition: .5s;
+ position: relative;
+ color: #272727;
+ font-size: 19px;
+ font-weight: 600;
+}
+
+.itpart_menu>ul>li>a:before,
+.itpart_menu>ul>li.current>a:before {
+ background: #ffb600 none repeat scroll 0% 0;
+ bottom: -7px;
+ content: "";
+ height: 2px;
+ left: 0;
+ margin: auto;
+ opacity: 0;
+ -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)";
+ position: absolute;
+ right: 0;
+ -webkit-transition: all 0.5s ease 0s;
+ transition: all 0.5s ease 0s;
+ width: 15%;
+ display: none;
+}
+
+.heading_style_2 .itpart_menu>ul>li>a {
+ color: #fff;
+}
+
+.heading_style_3 .itpart_menu>ul>li>a {
+ color: #fff;
+}
+
+.heading_style_4 .itpart_menu>ul>li>a {
+ color: #fff;
+}
+
+.heading_style_5 .itpart_menu>ul>li>a {
+ color: #fff;
+}
+
+.itpart_menu ul li:last-child a {
+ margin-right: 0px;
+}
+
+.itpart_menu>ul>li.current>a,
+.itpart_menu>ul>li:hover>a,
+.itpart_header_menu>ul>li:hover>a {
+ color: #ff3d00;
+ background-color: transparent;
+}
+
+.itpart_menu>ul>li:hover>a:before,
+.itpart_menu>ul>li.current>a:before {
+ opacity: 1;
+ -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)";
+}
+
+/* transparent 2 */
+.trp_nav_area {
+ position: fixed;
+ left: 0;
+ right: 0;
+ top: 0;
+ z-index: 9999;
+ background-color: transparent;
+ transition: .5s;
+}
+
+.hbg2 {
+ background: rgba(0, 0, 0, .7);
+}
+
+/* stycky nav js */
+.transprent-menu.menu4 {
+ position: relative;
+}
+
+.transprent-menu .itpart_nav_area {
+ left: 0;
+ right: 0;
+ top: 0;
+ z-index: 9999;
+ background-color: transparent;
+ padding: 0;
+ transition: .5s;
+ position: absolute;
+}
+
+.itpart_nav_area.postfix {
+ -webkit-transition: .3s;
+ transition: .3s;
+}
+
+.itpart_nav_area.prefix,
+.hbg2 {
+ background: #232323;
+}
+
+.itpart_nav_area.prefix .itpart_menu>ul>li>a {
+ color: #fff;
+}
+
+.itpart_nav_area.prefix .itpart_menu>ul>li.current>a {
+ color: #ff3d00;
+}
+
+/* LOGO LEFT RIGHT CSS */
+.logo-left {
+ align-items: center;
+}
+
+.logo-left .logo {
+ text-align: left;
+ width: 100px;
+}
+
+.logo-right .logo {
+ text-align: right;
+}
+
+.logo-right .itpart_menu>ul {
+ text-align: left;
+}
+
+.logo-right .itpart_menu>ul>li:first-child a {
+ padding-left: 0px;
+}
+
+.logo-right .itpart_menu>ul>li:last-child a {
+ padding-right: auto;
+}
+
+/* logo top */
+.logo-top .logo {
+ text-align: center;
+}
+
+.logo-top .itpart_menu>ul {
+ text-align: center;
+}
+
+.logo-top>.itpart_menu>ul>li:last-child a {
+ padding-right: auto;
+}
+
+/* sub menu style */
+.itpart_menu ul .sub-menu {
+ position: absolute;
+ left: 0;
+ top: 130%;
+ width: 217px;
+ text-align: left;
+ background: #fff;
+ margin: 0;
+ padding: 15px 20px 8px;
+ z-index: 9999;
+ box-shadow: 0px 1px 3px rgba(0, 0, 0, 0.3);
+ transition: .2s;
+ opacity: 0;
+ visibility: hidden;
+}
+
+.itpart_menu ul li:hover>.sub-menu {
+ transition: .5s;
+ opacity: 1;
+ visibility: visible;
+ top: 100%;
+ z-index: 9;
+}
+
+.itpart_menu ul .sub-menu li {
+ position: relative;
+ transition: .5s;
+}
+
+.itpart_menu ul .sub-menu li a {
+ display: block;
+ margin: 0;
+ margin-bottom: 6px;
+ letter-spacing: normal;
+ font-size: 18px;
+ font-weight: 500;
+ transition: .5s;
+ color: #0a0a0a;
+ visibility: inherit !important;
+ padding: 4px 0px;
+}
+
+.itpart_menu ul .sub-menu li:hover>a,
+.itpart_menu ul .sub-menu .sub-menu li:hover>a,
+.itpart_menu ul .sub-menu .sub-menu .sub-menu li:hover>a,
+.itpart_menu ul .sub-menu .sub-menu .sub-menu .sub-menu li:hover>a {
+ color: #ff3d00;
+}
+
+.itpart_menu ul .sub-menu li:hover {
+ margin-left: 15px;
+}
+
+.itpart_menu ul .sub-menu li:before {
+ opacity: 0;
+ transition: .1s;
+ width: 15px;
+ height: 1px;
+ background: #0049ff;
+ position: absolute;
+ left: -20px;
+ top: 50%;
+ font-size: 20px;
+ content: "";
+ transform: translateY(-50%);
+}
+
+.itpart_menu ul .sub-menu li:hover:before {
+ opacity: 1;
+}
+
+.itpart_menu ul .sub-menu li:before,
+.mini_shop_content a span.count,
+.slick-next,
+.slick-next.slick-disabled,
+.slick-prev,
+.slick-prev.slick-disabled,
+.twr_mini_cart .woocommerce.widget_shopping_cart .buttons a.checkout,
+.twr_mini_cart .woocommerce.widget_shopping_cart .buttons a:hover {
+ background: #ff3d00;
+}
+
+/* sub menu 2 */
+.itpart_menu ul .sub-menu .sub-menu {
+ left: 100%;
+ top: 130%;
+ opacity: 0;
+ -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)";
+ visibility: hidden;
+}
+
+.itpart_menu ul .sub-menu li:hover>.sub-menu {
+ opacity: 1;
+ -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)";
+ visibility: visible;
+ top: 0%;
+}
+
+/* sub menu 3 */
+.itpart_menu ul .sub-menu .sub-menu li {
+ position: relative;
+}
+
+.itpart_menu ul .sub-menu .sub-menu .sub-menu {
+ right: 100%;
+ left: auto;
+ top: 130%;
+ opacity: 0;
+ -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)";
+ visibility: hidden;
+}
+
+.itpart_menu ul .sub-menu .sub-menu li:hover>.sub-menu {
+ opacity: 1;
+ -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)";
+ visibility: visible;
+ top: 0%;
+}
+
+/* sub menu 4 */
+.itpart_menu ul .sub-menu .sub-menu .sub-menu li {
+ position: relative;
+}
+
+.itpart_menu ul .sub-menu .sub-menu .sub-menu li:hover>.sub-menu {
+ opacity: 1;
+ -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)";
+ visibility: visible;
+ top: 0%;
+}
+
+/* user login */
+.logged-in .trp_nav_area {
+ top: 32px;
+}
+
+.logged-in .transprent-menu .itpart_nav_area.prefix {
+ top: 32px;
+}
+
+.logged-in .trp_nav_area.hbg2 {
+ top: 32px;
+}
+
+.elementor-editor-active.logged-in .trp_nav_area {
+ top: 0px;
+}
+
+.elementor-editor-active.logged-in .transprent-menu .itpart_nav_area.prefix {
+ top: 0px;
+}
+
+.elementor-editor-active.logged-in .trp_nav_area.hbg2 {
+ top: 0px;
+}
+
+/* has menu icon */
+.itpart-main-menu .menu-item-has-children>a:after {
+ margin-left: 10px;
+ content: "\f107";
+ font-family: FontAwesome !important;
+ opacity: 1;
+ -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)";
+ font-size: 13px;
+ opacity: .5;
+ -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=50)";
+}
+
+.itpart-main-menu .menu-item-has-children .menu-item-has-children>a:after {
+ margin-left: 8px;
+ content: "\f105";
+}
+
+/* menu button */
+.donate-btn-header {
+ display: inline-block;
+}
+
+a.dtbtn {
+ background: #ff3d00;
+}
+
+a.dtbtn {
+ border: none;
+ display: block;
+ font-size: 17px;
+ margin-left: 20px;
+ font-weight: 500;
+ border-radius: 30px;
+ padding: 13px 25px;
+}
+
+.btn,
+a.dtbtn {
+ color: #fff;
+}
+
+.itpart_button a:hover,
+.witr_btn:hover,
+a.dtbtn:hover {
+ background: #121111;
+}
+
+.witr_swiper_content .witr_btn:hover {
+ background-color: #FFFFFF;
+}
+
+.witr_swiper_content .witr_btn:hover,
+.witr_swiper_content form button:hover,
+.witr_video_butns:hover {
+ color: #FF3D00;
+}
+
+.redX {
+ color: #821F05;
+}
+
+/* logo sticky */
+.itpart-main-menu .logo a.main_sticky_main_l {
+ display: block;
+}
+
+.itpart-main-menu .logo a.main_sticky_l {
+ display: none;
+}
+
+/* logo sticky box menu */
+.hmenu_box_style.hbg2 .logo a.main_sticky_main_l {
+ display: none;
+}
+
+.hmenu_box_style.hbg2 .logo a.main_sticky_l {
+ display: block;
+}
+
+/* logo pre */
+.itpart-main-menu .prefix .logo a.main_sticky_main_l {
+ display: none;
+}
+
+.itpart-main-menu .prefix .logo a.main_sticky_l {
+ display: block;
+}
+
+.headroom--pinned {
+ -webkit-transform: translateY(0);
+ transform: translateY(0);
+}
+
+.headroom--unpinned {
+ -webkit-transform: translateY(-100%);
+ transform: translateY(-100%);
+}
+
+.header--fixed {
+ position: fixed;
+ z-index: 10;
+ right: 0;
+ left: 0;
+ top: 0;
+ -webkit-transition: -webkit-transform .25s ease-in-out;
+ transition: -webkit-transform .25s ease-in-out;
+ transition: transform .25s ease-in-out;
+ transition: transform .25s ease-in-out, -webkit-transform .25s ease-in-out;
+ will-change: transform;
+}
+
+.menu-height-space {
+ height: 100px;
+}
+
+/* sticky logo */
+.itpart_logo_thumb a.main_sticky_l {
+ display: none;
+}
+
+.itpart_logo_thumb .logo a {
+ margin-top: 0;
+}
+
+/*======================= END itpart HEADING NAV AREA CSS ========================*/
+/* mobile-menu */
+.mobile-menu {
+ display: none !important;
+}
+
+.mobile_logo_area {
+ display: none !important;
+}
+
+.mobile_menu_logo.text-center {
+ padding: 20px 0;
+}
+
+.mean-container .mean-bar {
+ padding: 0;
+}
+
+.main_menu_div {
+ position: relative;
+}
+
+.mean-container .mean-bar {
+ float: none;
+ background: #ff3d00 none repeat scroll 0% 0;
+ overflow: hidden;
+}
+
+.lowgo_menu.main-search-menu>.em-header-quearys,
+.em-quearys-top.msin-menu-search {
+ display: inline-block;
+}
+
+.em-top-quearys-area {
+ position: relative;
+}
+
+.lowgo_menu div.em-header-quearys {
+ text-align: center;
+}
+
+.em-quearys-top.msin-menu-search .em-quearys-menu i {
+ height: 36px;
+ width: 36px;
+ line-height: 36px;
+ margin-left: 20px;
+ cursor: pointer;
+}
+
+.em-quearys-menu i {
+ background: #e0a067;
+ border-radius: 50px;
+ display: inline-block;
+ height: 26px;
+ text-align: center;
+ width: 26px;
+ line-height: 26px;
+ font-size: 14px;
+ color: #fff;
+}
+
+.em-quearys-inner {
+ visibility: hidden;
+ opacity: 0;
+ -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)";
+ display: -webkit-box;
+ display: -ms-flexbox;
+ display: flex;
+ -webkit-box-align: center;
+ -ms-flex-align: center;
+ align-items: center;
+ position: fixed;
+ top: 0;
+ left: -150%;
+ width: 100%;
+ height: 100%;
+ background: rgba(0, 0, 0, 0);
+ z-index: 10000;
+ -webkit-transition: all 0s 0s cubic-bezier(0.32, 0, 0, 1), background .3s 0s cubic-bezier(0.32, 0, 0, 1), -webkit-transform .3s .15s cubic-bezier(0.32, 0, 0, 1);
+ transition: all 0s 0s cubic-bezier(0.32, 0, 0, 1), background .3s 0s cubic-bezier(0.32, 0, 0, 1), -webkit-transform .3s .15s cubic-bezier(0.32, 0, 0, 1);
+ transition: all 0s 0s cubic-bezier(0.32, 0, 0, 1), transform .3s .15s cubic-bezier(0.32, 0, 0, 1), background .3s 0s cubic-bezier(0.32, 0, 0, 1);
+ transition: all 0s 0s cubic-bezier(0.32, 0, 0, 1), transform .3s .15s cubic-bezier(0.32, 0, 0, 1), background .3s 0s cubic-bezier(0.32, 0, 0, 1), -webkit-transform .3s .15s cubic-bezier(0.32, 0, 0, 1);
+ -webkit-transform: scale(1.1);
+ transform: scale(1.1);
+ visibility: hidden;
+ opacity: 0;
+ -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)";
+ left: -150%;
+ background: rgba(0, 0, 0, 0);
+}
+
+.em-s-open {
+ visibility: visible;
+ opacity: 1;
+ -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)";
+ left: 0;
+ background: #000000e6 !important;
+ -webkit-transform: scale(1);
+ transform: scale(1);
+}
+
+.em-quearys-form {
+ width: 100%;
+ max-width: 895px;
+ margin: auto;
+ padding: 30px 0;
+}
+
+.top-form-control {
+ position: relative;
+}
+
+.top-form-control input {
+ background: transparent;
+ color: #fff;
+ font-size: 50px;
+ font-weight: 500;
+ height: 100px;
+ padding: 0 40px 0 15px;
+ width: 100%;
+ border: none;
+ -webkit-transition: 1s;
+ -webkit-transition: .5s;
+ transition: .5s;
+ border-bottom: 3px solid #fff;
+}
+
+textarea,
+input {
+ outline: none;
+}
+
+.top-form-control button.top-quearys-style {
+ position: absolute;
+ right: 6px;
+ top: 50%;
+ background: transparent;
+ font-size: 45px;
+ border: none;
+ color: #fff;
+ -webkit-transform: translateY(-50%);
+ transform: translateY(-50%);
+}
+
+.lowgo_menu div.em-header-quearys {
+ text-align: center;
+}
+
+.em-quearys-top.msin-menu-search .em-quearys-menu i {
+ height: 36px;
+ width: 36px;
+ line-height: 36px;
+ margin-left: 20px;
+ cursor: pointer;
+}
+
+.em-quearys-menu i {
+ background: #e0a067;
+ border-radius: 50px;
+ display: inline-block;
+ height: 26px;
+ text-align: center;
+ width: 26px;
+ line-height: 26px;
+ font-size: 14px;
+ color: #fff;
+}
+
+/*========================
+ End Menu AREA CSS
+=========================*/
+/* Swiper Slider Area Css */
+.witr_swiper_area {
+ overflow: hidden;
+ position: relative;
+}
+
+.witr_swiper_height {
+ position: relative;
+ background-size: cover;
+ background-position: center center;
+}
+
+.wittr_gallery_swiper::before,
+.witr_swiper_height::before {
+ content: "";
+ position: absolute;
+ left: 0px;
+ top: 0px;
+ right: 0px;
+ bottom: 0px;
+}
+
+.wittr_gallery_swiper {
+ position: relative;
+ height: 100px !important;
+ margin-top: 10px;
+ background-size: cover;
+ background-position: center center;
+}
+
+.witr_sw_text_area {
+ margin: auto;
+ height: 100%;
+ width: 88%;
+}
+
+.elementor-section-full_width .witr_sw_text_area {
+ margin: auto;
+ width: 63%;
+ height: 100%;
+}
+
+.witr_swiper_content {
+ position: relative;
+ top: 50%;
+ transform: translateY(-50%);
+ z-index: 1;
+}
+
+.witr_swiper_topimg {
+ margin-bottom: 23px;
+}
+
+.witr_swiper_content h1 {
+ font-size: 24px;
+ margin-bottom: 15px;
+ display: inline;
+}
+
+.witr_swiper_content h2 {
+ color: #FFFFFF;
+ padding: 20px 0px 20px 0px;
+}
+
+.witr_swiper_content h2,
+.witr_swiper_content h3 {
+ font-size: 70px;
+ line-height: 1.1;
+}
+
+.witr_swiper_content h1 span,
+.witr_swiper_content h2 span,
+.witr_swiper_content h3 span {
+ color: #821F05;
+ font-weight: Italic;
+}
+
+.itpart_single_event:hover .event_page_title h2 a,
+.witr_swiper_content h1 span,
+.witr_swiper_content h2 span,
+.witr_swiper_content h3 span {
+ color: #ff3d00;
+}
+
+.witr_swiper_content h1 {
+ color: #FFFFFF;
+ font-size: 16px;
+ text-transform: uppercase;
+}
+
+.witr_swiper_content p {
+ margin-top: 20px;
+}
+
+.text-left .witr_swiper_content h1,
+.text-left .witr_swiper_content h2,
+.text-left .witr_swiper_content h3 {
+ margin: 0px auto 0px 0;
+}
+
+.text-left .witr_swiper_content p {
+ margin: 28px auto 15px 0;
+}
+
+.text-center .witr_swiper_content h1,
+.text-center .witr_swiper_content h2,
+.text-center .witr_swiper_content h3 .text-center .witr_swiper_content p {
+ margin-left: auto;
+ margin-right: auto;
+}
+
+.text-center .witr_swiper_content p {
+ margin: 28px auto 0;
+ width: 60%;
+}
+
+.text-right .witr_swiper_content h1,
+.text-right .witr_swiper_content h2,
+.text-right .witr_swiper_content h3 {
+ margin: 0px 0 10px auto;
+}
+
+.text-right .witr_swiper_content p {
+ margin: 28px 0 15px auto;
+}
+
+.text-left .witr_swiper_content h1,
+.text-left .witr_swiper_content h2,
+.text-left .witr_swiper_content h3,
+.text-right .witr_swiper_content h1,
+.text-right .witr_swiper_content h2,
+.text-right .witr_swiper_content h3 {
+ width: 68%;
+}
+
+.text-left .witr_swiper_content p,
+.text-right .witr_swiper_content p {
+ width: 55%;
+}
+
+.witr_swiper_area .swiper-slide a {
+ display: inline-block;
+}
+
+.witr_swiper_area .text-left .witr_slider_thumb {
+ right: 170px;
+}
+
+.witr_swiper_area .text-right .witr_slider_thumb {
+ left: 170px;
+}
+
+.witr_swiper_area .text-left .slider_vd_icon {
+ right: 16%;
+}
+
+.witr_swiper_area .text-right .slider_vd_icon {
+ left: 16%;
+}
+
+.witr_swiper_area .text-center .slider_vd_icon {
+ top: 23%;
+ position: absolute;
+ left: 50%;
+ transform: translate(-50%, -50%);
+}
+
+.witr_icon_section {
+ margin-top: 30px;
+}
+
+/* pagination bullet */
+.witr_swiper_area .swiper-pagination-bullet {
+ width: 15px;
+ height: 15px;
+ background: #fff;
+}
+
+/* progressbar */
+.witr_swiper_area .swiper-pagination-progressbar .swiper-pagination-progressbar-fill {
+ background: #821F05;
+}
+
+.witr_swiper_area .swiper-container-horizontal>.swiper-pagination-progressbar {}
+
+.witr_swiper_area .swiper-pagination-progressbar .swiper-pagination-progressbar-fill,
+.witr_swiper_area .swiper-container-horizontal>.swiper-pagination-progressbar {
+ height: 10px;
+}
+
+/* scrollbar */
+.witr_swiper_area .swiper-scrollbar-drag {
+ background: #821F05;
+}
+
+.witr_swiper_area .swiper-container-horizontal>.swiper-scrollbar {
+ background: rgba(0, 0, 0, .0);
+}
+
+.witr_swiper_area .swiper-scrollbar-drag,
+.witr_swiper_area .swiper-container-horizontal>.swiper-scrollbar {
+ height: 10px;
+}
+
+/* pagination prev next */
+.swiper-button-prev,
+.swiper-button-next {
+ background-image: inherit !important;
+ color: #fff;
+ transition: .5s;
+ outline: none;
+}
+
+.video_page_area .swiper-button-prev,
+.video_page_area .swiper-button-next {
+ background-image: inherit !important;
+ color: #fff;
+ transition: .5s;
+ outline: none;
+ display: none;
+}
+
+.swiper-button-prev:hover,
+.swiper-button-next:hover {
+ color: #e0a067;
+ background: #fff;
+ padding: 30px;
+}
+
+.swiper-button-next:after,
+.swiper-button-prev:after {
+ font-size: 30px;
+}
+
+.swiper-button-next.swiper-button-disabled,
+.swiper-button-prev.swiper-button-disabled {
+ opacity: 0 !important;
+}
+
+.witr_swiper_area .swiper-pagination-progressbar .swiper-pagination-progressbar-fill {
+ background: #821F05;
+}
+
+.witr_swiper_area .swiper-pagination-progressbar .swiper-pagination-progressbar-fill {
+ background: #821F05;
+}
+
+.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;
+}
+
+/* pagination prev next */
+.swiper-button-prev,
+.swiper-button-next {
+ background-image: inherit !important;
+ color: #fff;
+ transition: .5s;
+ outline: none;
+}
+
+.video_page_area .swiper-button-prev,
+.video_page_area .swiper-button-next {
+ background-image: inherit !important;
+ color: #fff;
+ transition: .5s;
+ outline: none;
+ display: none;
+}
+
+.swiper-button-prev:hover,
+.swiper-button-next:hover {
+ color: #e0a067;
+ background: #fff;
+ padding: 30px;
+}
+
+.swiper-button-next:after,
+.swiper-button-prev:after {
+ font-size: 30px;
+}
+
+.swiper-button-next.swiper-button-disabled,
+.swiper-button-prev.swiper-button-disabled {
+ opacity: 0 !important;
+}
+
+.swiper-pagination-progressbar .swiper-pagination-progressbar-fill {
+ background: #e0a067;
+}
+
+.witr_swiper_area .swiper-pagination-progressbar .swiper-pagination-progressbar-fill,
+.witr_swiper_area .swiper-container-horizontal>.swiper-pagination-progressbar {
+ height: 5px;
+}
+
+.witr_swiper_height {
+ height: 770px;
+}
+
+.witr_swiper_content h2,
+.witr_swiper_content h3 {
+ color: #FFFFFF;
+}
+
+.witr_swiper_content h2 {
+ margin-bottom: 0px;
+}
+
+.witr_swiper_content p {
+ color: #FFFFFF;
+}
+
+.text-left .witr_swiper_content p,
+.text-right .witr_swiper_content p {
+ width: 42%;
+ font-size: 20px;
+}
+
+.witr_swiper_content p {
+ color: #FFFFFF;
+ padding: 10px 0px 10px 0px;
+}
+
+.witr_swiper_content .witr_btn {
+ border-style: default;
+ border-radius: 5px 5px 5px 5px;
+}
+
+.witr_swiper_area .swiper-slide a {
+ display: inline-block;
+}
+
+.witr_swiper_content .witr_btn {
+ border-style: default;
+ border-radius: 100px 100px 100px 100px;
+ padding: 16px 50px 16px 50px;
+}
+
+.btn,
+.feature_btn a,
+.itpart_button a,
+.learn_btn,
+.service-btn>a,
+.witr_bbtn,
+.witr_btn,
+.witr_feature_btn_3d a,
+.witr_feature_btn_f a,
+.witr_gbbtn,
+.witr_gbtn,
+.witr_sbtn_s8 a,
+.witr_ser_btnb a,
+a.dtbtn {
+ border-radius: 5px;
+ font-size: 16px;
+ font-weight: 400;
+}
+
+.witr_btn {
+ background: #821F05;
+ color: #fff;
+ display: inline-block;
+ padding: 17px 30px;
+ text-align: center;
+ position: relative;
+ margin-right: 15px;
+ z-index: 2;
+ transition: 1s;
+}
+
+.witr_btn {
+ background: #ff3d00;
+}
+
+.slider_btn {
+ margin-top: 45px;
+}
+
+.witr_swiper_content .witr_btn.active {
+ color: #FFFFFF;
+ background-color: #0A0A0A;
+ border-style: solid;
+ border-width: 0px 0px 0px 0px;
+}
+
+.witr_swiper_content .witr_btn.active:hover {
+ background-color: #821F05;
+}
+
+.witr_sw_text_area {
+ margin: auto;
+ width: 63%;
+ height: 100%;
+}
+
+/* itpart service area css */
+/* witr service Style 13 */
+.itpart_service_area {
+ margin-top: -68px;
+ margin-bottom: 0px;
+ z-index: 1;
+ position: relative;
+}
+
+.poly_text_box {
+ position: relative;
+}
+
+.itpart_service_area .service_icon_box {
+ position: absolute;
+ left: 0px;
+ padding: 25px 38px 25px 38px;
+ top: 50%;
+ transform: translateY(-50%);
+ filter: drop-shadow(0px 0px 35px rgba(0, 0, 0, .06));
+ z-index: 1;
+}
+
+.service_icon_box::before {
+ content: '';
+ position: absolute;
+ background: #fff;
+ height: 100%;
+ width: 100%;
+ left: 0;
+ top: 0;
+ clip-path: polygon(0 1%, 85% 0, 100% 100%, 0% 100%);
+ border-radius: 10px 26px 10px 10px;
+ transition: .5s;
+ z-index: 1;
+}
+
+.itpart_service_area .em_service_text_box {
+ filter: drop-shadow(0px 0px 35px rgba(0, 0, 0, .06));
+ padding: 50px 23px 30px 100px;
+ background: url(/static/home/assets/images/service-shape.png) no-repeat top right;
+ transition: .5s;
+ margin-left: 25px;
+}
+
+.itpart_service_area .em-service-title h3 {
+ padding: 0;
+ transition: .5s;
+ margin-bottom: 8px;
+}
+
+.em_service_text_box::before {
+ content: '';
+ position: absolute;
+ background: #fff url(/static/home/assets/images/service-shape.png) no-repeat top right;
+ height: 100%;
+ width: 100%;
+ left: 0;
+ top: 0;
+ clip-path: polygon(0 0, 100% 0, 100% 100%, 15% 100%);
+ border-radius: 10px 10px 10px 26px;
+ transition: .5s;
+ z-index: -1;
+}
+
+.poly_text_box:hover .em_service_text_box::before {
+ background: #fff url(/static/home/assets/images/service-hover.png) no-repeat top right;
+}
+
+.poly_text_box .em-service-icon {
+ position: relative;
+ z-index: 1;
+}
+
+.poly_text_box .em-service-icon img,
+.poly_text_box .em-service-icon i {
+ margin-bottom: 0;
+ font-size: 40px;
+ transition: .5s;
+ color: #FF3D00;
+}
+
+.poly_text_box:hover .em-service-icon img {
+ filter: brightness(0) invert(1);
+}
+
+.poly_text_box:hover .em-service-icon i {
+ color: #fff;
+}
+
+.poly_text_box:hover .service_icon_box::before,
+.wirt_detail_texti,
+.witr_service2:hover .wbutton_top_service_icon a::before,
+.witr_service2:hover .witr_service2_icon_bottom::before,
+.witr_service_10 .service-btn a:hover {
+ background: #ff3d00;
+}
+
+/* about area css */
+.itpart_about_area {
+ padding: 110px 0px 120px;
+ background: #FFFFFF;
+}
+
+.witr_title2 .witr_label {
+ color: #272727;
+}
+
+.itpart_about_area .witr_section_title_inner h3 {
+ padding: 0px;
+ padding: 18px 0px 5px;
+}
+
+.itpart_about_area .border_left_style {
+ padding-top: 22px;
+}
+
+.itpart_about_area .witr_section_title {
+ padding-bottom: 20px;
+}
+
+.itpart_about_area .witr_btn {
+ border-radius: 30px;
+ display: inline-block;
+ font-size: 16px;
+ padding: 16px 50px;
+ text-align: center;
+ position: relative;
+ margin-right: 15px;
+ z-index: 2;
+ transition: 1s;
+ font-weight: 400;
+ margin-top: 50px;
+}
+
+.elementor-divider__text {
+ color: #FF3D00;
+ font-size: 16px;
+ font-weight: 700;
+}
+
+/* itpart_skill_area */
+.witr_single_progress {
+ overflow: hidden;
+ position: relative;
+ margin-bottom: 20px;
+}
+
+.progress-bar {
+ background-color: #ff3d00;
+}
+
+.witr_progress-style2 {
+ height: 4px;
+ box-shadow: none;
+ border-radius: 0;
+ overflow: visible;
+ margin-top: 0px;
+}
+
+.witr_progress-style2+.witr_progress-style2 {
+ margin-top: 50px;
+}
+
+.witr_progress-style2 .progress-bar {
+ position: relative;
+ text-align: left;
+ line-height: 4px;
+ border-radius: 0;
+ box-shadow: none;
+}
+
+.witr_title2 .witr_label {
+ left: 0px;
+ top: 0px;
+ color: #1b1a1a;
+ font-size: 16px;
+ font-weight: 600;
+ margin-bottom: 4px;
+ display: inline-block;
+}
+
+.witr_progress-style2 .witr_percent {
+ position: absolute;
+ right: 0;
+ font-weight: 700;
+ color: #272727;
+ font-size: 16px;
+ top: -19px;
+}
+
+.witr_lf_area {
+ margin-top: 100px;
+}
+
+
+/* port area css */
+.itpart_service_area2 {
+ background-image: url("/static/home/assets/images/port-bg-img.jpg");
+ background-repeat: no-repeat;
+ background-size: cover;
+ padding: 120px 0px 110px;
+}
+
+/* witr service 2 Style 10 */
+.service_overflow_inherit.witr_service2 {
+ overflow: inherit;
+}
+
+.service_overflow_inherit .witr_service2_image {
+ overflow: hidden;
+ position: relative;
+}
+
+.itpart_service_area2 .service_overflow_inherit.witr_service2 {
+ overflow: inherit;
+ margin-bottom: 20px;
+}
+
+.service_overflow_inherit .witr_service2_image {
+ overflow: hidden;
+}
+
+.wbutton_top_service_icon {
+ position: absolute;
+ top: 10px;
+ right: 76px;
+}
+
+.wbutton_top_service_icon a {
+ font-size: 25px;
+ position: relative;
+ z-index: 1;
+}
+
+.wbutton_top_service_icon a::before {
+ content: '';
+ position: absolute;
+ height: 130px;
+ width: 130px;
+ background: #fff;
+ right: -58px;
+ z-index: -1;
+ transform: rotate(-45deg);
+ top: -88px;
+ border-radius: 0px 50px;
+ transition: .5s;
+}
+
+.witr_service2:hover .wbutton_top_service_icon a {
+ color: #fff;
+}
+
+/* witr_service2_icon_bottom */
+.witr_servicetwo_text {
+ box-shadow: 0 0 30px 0 rgb(0 0 0 / 9%);
+ padding: 57px 30px 30px;
+ position: relative;
+ background: #fff;
+ z-index: 1;
+}
+
+.witr_servicetwo_text::before {
+ content: '';
+ position: absolute;
+ top: 0;
+ left: 0;
+ right: 0;
+ z-index: -1;
+ transition: .5s;
+ background: #222429;
+ height: 0;
+}
+
+.witr_service2:hover .witr_servicetwo_text::before {
+ bottom: 0;
+ height: 100%;
+}
+
+.witr_servicetwo_text::after {
+ content: '';
+ position: absolute;
+ background: url(../../images/corporate/service-shape-hover.png) no-repeat bottom right;
+ width: 50%;
+ height: 100%;
+ z-index: 1;
+ right: 0;
+ bottom: 0;
+ opacity: 0;
+ transition: .5s;
+}
+
+.witr_service2:hover .witr_servicetwo_text::after {
+ opacity: 1;
+}
+
+.witr_servicetwo_text h3 {
+ margin-bottom: 10px;
+}
+
+.witr_servicetwo_text h3,
+.witr_servicetwo_text h3 a,
+.witr_servicetwo_text p,
+.witr_servicetwo_text a {
+ transition: .5s;
+}
+
+.witr_service2:hover .witr_servicetwo_text h3,
+.witr_service2:hover .witr_servicetwo_text h3 a,
+.witr_service2:hover .witr_servicetwo_text p,
+.witr_service2:hover .witr_servicetwo_text a {
+ color: #fff;
+}
+
+.witr_service2_icon_bottom {
+ position: absolute;
+ padding: 17px 35px 17px 23px;
+ top: -35px;
+ left: 30px;
+ filter: drop-shadow(0px 0px 35px rgba(0, 0, 0, .08));
+ z-index: 1;
+ line-height: 1;
+}
+
+.witr_service2_icon_bottom::before {
+ content: '';
+ position: absolute;
+ background: #fff;
+ height: 100%;
+ width: 100%;
+ left: 0;
+ top: 0;
+ clip-path: polygon(0 1%, 85% 0, 100% 100%, 0% 100%);
+ border-radius: 10px 26px 10px 10px;
+ transition: .5s;
+ z-index: 1;
+}
+
+.witr_service2_icon_bottom i {
+ font-size: 30px;
+ z-index: 1;
+ position: relative;
+}
+
+.witr_service2:hover .witr_service2_icon_bottom i {
+ color: #fff;
+}
+
+.witr_service2_icon_bottom i {
+ font-size: 30px;
+ z-index: 1;
+ position: relative;
+ color: #ff3d00;
+}
+
+.service_overflow_inherit .witr_service2_image {
+ overflow: hidden;
+}
+
+.witr_servicetwo_text::after {
+ content: '';
+ position: absolute;
+ background: url(/static/home/assets/images/service-shape-hover2.png) no-repeat bottom right;
+ width: 50%;
+ height: 100%;
+ z-index: 1;
+ right: 0;
+ bottom: 0;
+ opacity: 0;
+ transition: .5s;
+}
+
+/* project area css */
+.itpart_project_area {
+ padding: 110px 0px 130px;
+ background: #FFFFFF;
+}
+
+/* ps3 Slide css */
+.witr_pslide3 .witr_single_pslide {
+ margin-bottom: 100px;
+ overflow: inherit;
+}
+
+.ps3.ps1 .witr_content_pslide_text {
+ bottom: -60px;
+ opacity: 1;
+ -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)";
+ box-shadow: 0px 0px 29px 0px rgb(0 0 0 / 9%);
+ text-align: center;
+ padding: 20px 10px 45px;
+ border-radius: 5px;
+}
+
+.ps3.ps1 .witr_single_pslide:hover .witr_content_pslide_text {
+ bottom: -60px;
+}
+
+.ps3 .witr_content_pslide_text h3 a {
+ margin-bottom: 3px;
+}
+
+.witr_pslide3 .witr_single_pslide:hover .witr_pslide_custom {
+ bottom: -20px;
+}
+
+.witr_pslide3 .witr_pslide_custom {
+ bottom: -17px;
+ right: 50%;
+ -webkit-transform: translateX(50%);
+ transform: translateX(50%);
+}
+
+.witr_pslide3 .witr_pslide_custom a span {
+ width: 45px;
+ height: 45px;
+ line-height: 45px;
+ font-size: 18px;
+ box-shadow: 0px 0px 29px 0px rgb(0 0 0 / 9%);
+}
+
+.witr_pslide_image {
+ position: relative;
+}
+
+.witr_pslide_image:before {
+ position: absolute;
+ content: '';
+ top: 0;
+ left: 0;
+ bottom: 0;
+ right: 0;
+ -webkit-transform: scale(0);
+ transform: scale(0);
+ -webkit-transition: .5s;
+ transition: .5s;
+ z-index: 1;
+}
+
+.witr_pslide_image:before {
+ background: #222429;
+}
+
+.witr_pslide_image {
+ overflow: hidden;
+ position: relative;
+}
+
+.witr_pslide_image::before {
+ opacity: 0.5;
+ transition: .5s;
+}
+
+/* ps3 Slide css */
+.witr_pslide3 .witr_single_pslide {
+ margin-bottom: 100px;
+ overflow: inherit;
+}
+
+.ps3.ps1 .witr_content_pslide_text {
+ bottom: -60px;
+ opacity: 1;
+ -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)";
+ box-shadow: 0px 0px 29px 0px rgb(0 0 0 / 9%);
+ text-align: center;
+ padding: 20px 10px 45px;
+ border-radius: 5px;
+ background: #FFFFFF;
+}
+
+.ps3.ps1 .witr_single_pslide:hover .witr_content_pslide_text {
+ bottom: -60px;
+}
+
+.ps3 .witr_content_pslide_text h3 a {
+ margin-bottom: 3px;
+}
+
+.witr_pslide3 .witr_single_pslide:hover .witr_pslide_custom {
+ bottom: -20px;
+}
+
+.witr_pslide3 .witr_pslide_custom {
+ bottom: -17px;
+ right: 50%;
+ -webkit-transform: translateX(50%);
+ transform: translateX(50%);
+}
+
+.witr_pslide3 .witr_pslide_custom a span {
+ width: 45px;
+ height: 45px;
+ line-height: 45px;
+ font-size: 18px;
+ box-shadow: 0px 0px 29px 0px rgb(0 0 0 / 9%);
+}
+
+/* witr_pslide4 css */
+.witr_pslide4.witr_pslide3 .witr_single_pslide {
+ margin-bottom: 0px;
+ overflow: inherit;
+ padding-bottom: 80px;
+}
+
+.witr_pslide4.ps3.ps1 .witr_content_pslide_text {
+ bottom: -170px;
+ padding: 30px 10px 20px;
+ border-radius: 5px;
+ left: 30px;
+ right: 30px;
+}
+
+.witr_pslide4.ps3.ps1 .witr_single_pslide:hover .witr_content_pslide_text {
+ bottom: 20px;
+}
+
+.witr_pslide4.witr_pslide3 .witr_pslide_custom {
+ bottom: auto;
+ top: -22px;
+ z-index: -1;
+}
+
+.witr_pslide_image img {
+ transition: .5s;
+}
+
+.witr_single_pslide:hover .witr_pslide_image img,
+.witr_single_pslide:hover .witr_pslide_image:before {
+ -webkit-transform: scale(1.2);
+ transform: scale(1.2);
+}
+
+.witr_pslide4.ps3.ps1 .witr_single_pslide:hover .witr_content_pslide_text {
+ bottom: 20px;
+}
+
+.witr_pslide4.ps3.ps1 .witr_content_pslide_text {
+ bottom: -170px;
+ padding: 30px 10px 20px;
+ border-radius: 5px;
+ left: 30px;
+ right: 30px;
+}
+
+.ps1 .witr_content_pslide_text {
+ position: absolute;
+ bottom: -100px;
+ left: 30px;
+ right: 30px;
+ transition: .5s;
+ opacity: 0;
+ z-index: 2;
+ text-align: left;
+}
+
+/* slick dots css */
+.slick-dots li button {
+ width: 50px;
+ height: 20px;
+ border-radius: 0px 0px 0px 0px;
+}
+
+.slick-dots li.slick-active button {
+ background: #ff3d00;
+}
+
+.slick-dots li button {
+ background: #ff3d005c;
+}
+
+.slick-dots li button {
+ border: 0 solid #ff3d00;
+}
+
+.slick-dots {
+ position: absolute;
+ left: 50%;
+ -webkit-transform: translateX(-50%);
+ transform: translateX(-50%);
+ bottom: -10px;
+ display: inline-block;
+ z-index: 11;
+ text-align: center;
+}
+
+.slick-dots li {
+ display: inline-block;
+}
+
+.slick-dots li button {
+ font-size: 0;
+ margin: 0 5px;
+ cursor: pointer;
+ padding: 0;
+ transition: .5s;
+ outline: 0;
+}
+
+/* counter up area css */
+.counter_up_area {
+ padding: 0px 0px 75px;
+}
+
+.witr_counter_single {
+ text-align: left;
+ display: flex;
+ margin-bottom: 30px;
+}
+
+.witr_counter_number_inn {
+ overflow: hidden;
+}
+
+.witr_counter_number_inn h3,
+.witr_counter_number_inn span {
+ font-size: 40px;
+ display: inline-block;
+ font-weight: 700;
+ margin-bottom: 0;
+}
+
+.witr_counter_number_inn span {
+ line-height: 0;
+}
+
+/* content */
+.witr_counter_number_inn h4 {
+ font-size: 22px;
+}
+
+.witr_counter_icon i {
+ color: #ff3d00;
+}
+
+.all_counter_color i {
+ font-size: 50px;
+ border-style: default;
+ transform: rotate(0deg);
+}
+
+.all_counter_color h3,
+.all_counter_color span {
+ color: #111111;
+ font-weight: 700;
+}
+
+.all_counter_color h4,
+.all_counter_color h1 {
+ color: #444444;
+ font-family: "Nunito", Sans-serif;
+ font-size: 20px;
+}
+
+/* team area css */
+.itpart_team_area {
+ background-image: url(/static/home/assets/images/team-bg-img.jpg);
+ padding: 115px 0px 115px;
+ background-position: center center;
+ background-repeat: no-repeat;
+ background-size: cover;
+}
+
+.itpart_team_area .witr_section_title_inner h3,
+.itpart_team_area .witr_section_title_inner h1 {
+ color: #FFFFFF;
+}
+
+.itpart_team_area .witr_section_title_inner h3 {
+ padding: 0px;
+}
+
+.team-part {
+ border-radius: 5px;
+ overflow: hidden;
+ box-shadow: 0px 5px 4px 0px rgba(0, 0, 0, 0.05);
+}
+
+/* team style 1 */
+.witr_team_section {
+ position: relative;
+ text-align: center;
+}
+
+.witr_team_section img {}
+
+.witr_team_section:before {
+ content: "";
+ position: absolute;
+ height: 100%;
+ width: 100%;
+ left: 0;
+ top: 0;
+ opacity: 0;
+ -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)";
+ -webkit-transition: .5s;
+ transition: .5s;
+}
+
+.witr_team_section:hover:before {
+ opacity: 1;
+ -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)";
+}
+
+.team_overlay_icon a {
+ position: absolute;
+ -webkit-transform: translate(-50%, -50%);
+ transform: translate(-50%, -50%);
+ left: 50%;
+ top: 50%;
+ font-size: 22px;
+ opacity: 0;
+ -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)";
+ width: 52px;
+ height: 52px;
+ line-height: 52px;
+ border-radius: 50%;
+ background: #ff3d00;
+ color: #fff;
+}
+
+.witr_team_section:hover .team_overlay_icon a {
+ opacity: 1;
+ -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)";
+}
+
+.witr_team_content {
+ padding: 23px 5px;
+}
+
+.witr_team_content h5 {
+ margin: 0;
+}
+
+.witr_team_content span {
+ font-size: 18px;
+}
+
+/* post team css */
+.team_o_icon {
+ position: absolute;
+ left: 50%;
+ top: 50%;
+ -webkit-transform: translateX(-50%) translateY(-50%);
+ transform: translateX(-50%) translateY(-50%);
+ -webkit-transition: .5s;
+ transition: .5s;
+ opacity: 0;
+ -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)";
+}
+
+.witr_team_section:hover .team_o_icon {
+ opacity: 1;
+ -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)";
+}
+
+.team_o_icons {
+ margin-top: 15px;
+ padding-top: 17px;
+ padding-bottom: 10px;
+ position: relative;
+}
+
+.team_o_icons:before {
+ position: absolute;
+ content: "";
+ top: 0px;
+ height: 1px;
+ width: 25%;
+ margin: auto;
+ left: 0;
+ right: 0;
+ -webkit-transition: .5s;
+ transition: .5s;
+}
+
+.all_color_team:hover .team_o_icons:before {
+ width: 100%;
+}
+
+.team_o_icons ul li {
+ list-style: none;
+ display: inline-block;
+}
+
+.team_o_icons ul li a {
+ display: block;
+ width: 35px;
+ height: 35px;
+ line-height: 33px;
+ border-radius: 5px;
+ text-align: center;
+ -webkit-transition: .5s;
+ transition: .5s;
+ margin: 0px 2px;
+ font-size: 15px;
+}
+
+.pteam_8 .post_team_content {
+ text-align: left;
+}
+
+.post_team_icon_8 {
+ position: absolute;
+ bottom: -15px;
+}
+
+.post_team_icon_8 ul {}
+
+.post_team_icon_8 ul li {
+ display: inline-block;
+}
+
+.post_team_icon_8 ul li a {
+ font-size: 16px;
+ height: 34px;
+ width: 34px;
+ line-height: 34px;
+ border-radius: 50%;
+ text-align: center;
+ -webkit-transition: .5s;
+ transition: .5s;
+ display: inline-block;
+ margin-left: 6px;
+}
+
+.post_team_content {
+ box-shadow: 0px 5px 20px 0px #00000014;
+ -webkit-transition: .5s;
+ transition: .5s;
+ padding: 30px 25px 25px;
+}
+
+.post_team_content h5 {
+ margin: 0;
+}
+
+.team_list_op {
+ margin-top: 10px;
+}
+
+.team_list_op ul {}
+
+.team_list_op ul li {
+ margin-top: 3px;
+ list-style: none;
+}
+
+.team_list_op ul li a {
+ display: inline-block;
+}
+
+.team_list_op ul li i {
+ margin-right: 10px;
+}
+
+.team_list_op ul li a i {
+ margin-right: 6px;
+}
+
+.cteam_9 .post_team_content {
+ text-align: left;
+}
+
+.cteam_9 .post_team_content {
+ padding: 0px;
+ display: -webkit-box;
+ display: -ms-flexbox;
+ display: flex;
+ -webkit-box-align: center;
+ -ms-flex-align: center;
+ align-items: center;
+}
+
+.post_team_icon_9 {
+ padding: 10px;
+ margin-right: 20px;
+}
+
+.post_team_icon_9 ul li {
+ list-style: none;
+}
+
+.post_team_icon_9 ul li a {
+ -webkit-transition: .5s;
+ transition: .5s;
+}
+
+.post_team10_area .team_o_icons:before {
+ display: none;
+}
+
+.post_team10_area .witr_team_section {
+ position: relative;
+}
+
+.post_team10_area .team_o_icons {
+ margin-top: 0;
+ padding: 0;
+ position: absolute;
+ top: 50%;
+ left: -25%;
+ -webkit-transform: translateY(-50%);
+ transform: translateY(-50%);
+ -webkit-transition: .5s;
+ transition: .5s;
+}
+
+.post_team10_area .team-part:hover .team_o_icons {
+ left: 0;
+}
+
+.post_team10_area .team_o_icons ul li {
+ display: block;
+}
+
+.post_team10_area .team_o_icons ul li a {
+ width: 45px;
+ height: 45px;
+ line-height: 45px;
+ border: none;
+ border-radius: 5px;
+ margin: 0px;
+ font-size: 20px;
+ background: #272727;
+ color: #fff;
+}
+
+.post_team10_area .team_o_icons ul li a:hover {
+ background: #ff3d00;
+}
+
+.witr_team_content {
+ padding: 23px 5px 23px;
+}
+
+.post_team11_area .team-part {
+ overflow: inherit;
+ padding-bottom: 40px;
+ box-shadow: none;
+}
+
+.post_team_p11 {
+ position: absolute;
+ bottom: -45px;
+ left: 15px;
+ right: 15px;
+ box-shadow: 0px 0px 20px 0px rgb(0 0 0 / 10%);
+ border-radius: 5px 5px 11px 11px;
+ background: #FFFFFF;
+}
+
+.post_team11_area .team_o_icons {
+ top: auto;
+ bottom: -30px;
+ left: 0;
+ right: 0;
+ -webkit-transform: inherit;
+ transform: inherit;
+ -webkit-transition: .5s;
+ transition: .5s;
+}
+
+.post_team11_area .team-part:hover .team_o_icons {
+ bottom: 65px;
+}
+
+.post_team11_area .team_o_icons ul li {
+ display: inline-block;
+}
+
+.post_team_p11 {
+ padding: 15px 0;
+}
+
+/* why choose area css */
+.why_choose_right_content_inner h1 {
+ text-transform: uppercase;
+ padding-top: 20px;
+}
+
+.why_choose_right_content_inner::before {
+ display: block;
+ content: "";
+ border-bottom: 0;
+ flex-grow: 1;
+ border-top: var(--divider-border-width) var(--divider-border-style) var(--divider-color);
+}
+
+.why_choose_area {
+ padding: 120px 0px 100px;
+}
+
+.why_choose_area .witr_section_title_inner h3 {
+ margin: 20px 0px 25px 0px;
+}
+
+.why_choose_area .witr_s_flex {
+ display: flex;
+ margin-bottom: 30px;
+}
+
+.why_choose_area .em-service2.sleft .em-service-icon {
+ margin-right: 20px;
+}
+
+.em-service2 .em-service-icon i {
+ display: inline-block;
+ height: 80px;
+ width: 80px;
+ text-align: center;
+ line-height: 80px;
+ transition: all .5s ease 0s;
+ color: #FF3D00;
+ font-size: 40px;
+ border-radius: 5px 5px 5px 5px;
+ box-shadow: 0px 0px 30px 0px rgba(0, 0, 0, 0.09);
+}
+
+.em-service2 .em-service-inner {
+ overflow: hidden;
+ width: 100%;
+ padding-right: 70px;
+}
+
+.why_choose_area .witr_btn {
+ border-radius: 30px;
+ font-size: 16px;
+ padding: 16px 50px;
+ transition: 1s;
+ margin-top: 12px;
+}
+
+/* pricing area css */
+.pricing_plane_area {
+ background-image: url("/static/home/assets/images/price-bg-img.jpg");
+ background-position: center center;
+ background-repeat: no-repeat;
+ background-size: cover;
+ padding: 110px 0px 100px;
+}
+
+.pricing_plane_area .witr_section_title_inner h3 {
+ padding-bottom: 15px;
+}
+
+.all_pricing_color {}
+
+.all_pricing_color ul,
+.all_pricing_color ol,
+.all_pricing_color li {
+ margin: 0px;
+}
+
+.all_pricing_color h2,
+.all_pricing_color h3,
+.all_pricing_color h5,
+.all_pricing_color h4 {
+ margin: 0px;
+}
+
+.active.pricing_area {
+ background: #f00;
+}
+
+.pricing_area {
+ border-radius: 5px;
+ box-shadow: 0px 0px 30px 0px rgb(0 0 0 / 8%);
+}
+
+.pricing-part {
+ position: relative;
+ overflow: hidden;
+ text-align: center;
+}
+
+.pricing-part strong {
+ font-size: 16px;
+ font-weight: 400;
+ position: absolute;
+ right: -40px;
+ top: 13px;
+ padding: 7px 20px;
+ width: 160px;
+ text-align: center;
+ -webkit-transform: rotate(45deg);
+ transform: rotate(45deg);
+}
+
+.witr_pricing_icon i {
+ font-size: 40px;
+ padding-top: 40px;
+ display: block;
+}
+
+.pricing-part h4 {
+ font-size: 30px;
+ padding: 26px 0 12px;
+ display: block;
+}
+
+.pricing-part h5 {
+ font-size: 35px;
+}
+
+.pricing-part h6 {
+ font-size: 21px;
+ display: block;
+ text-decoration: line-through;
+ margin: 0;
+}
+
+.pricing-part span {
+ font-size: 24px;
+ margin-right: 5px;
+}
+
+.prt_content {
+ padding: 10px 0px 7px;
+ font-size: 20px;
+}
+
+/* button */
+.witr_btnp_color {
+ padding-top: 37px;
+ padding-bottom: 40px;
+}
+
+.pricing-part a.btn {
+ padding: 17px 30px;
+ display: inline-block;
+}
+
+.witr_btnp_color a.btn {
+ color: #111111;
+ background: #DA1D1D00;
+ font-size: 15px;
+ font-weight: 500;
+ border-style: solid;
+ border-width: 1px 1px 1px 1px;
+ border-color: #DADADA;
+ border-radius: 0px 0px 0px 0px;
+ margin: 0px 0px 20px 0px;
+ font-family: "Roboto", Sans-serif;
+}
+
+.witr_btnp_color a.btn:hover {
+ color: #fff;
+ background: #ff3d00;
+ border-style: default;
+ border-color: #ff3d00;
+}
+
+/* pricing_style_7 */
+.pricing_style_7.pricing-part h4 {
+ font-size: 16px;
+ padding: 13px 30px;
+ display: inline-block;
+ border-radius: 30px;
+ color: #fff;
+ z-index: 1;
+ position: relative;
+}
+
+.pricing_bar_title {
+ position: relative;
+ margin: 50px 0px;
+}
+
+.pricing_bar_title::before {
+ position: absolute;
+ content: '';
+ width: 100%;
+ height: 1px;
+ background: #ddd;
+ left: 0;
+ right: 0;
+ top: 50%;
+}
+
+.pricing_style_7.pricing-part h4 {
+ font-size: 16px;
+ padding: 13px 30px;
+ display: inline-block;
+ border-radius: 30px;
+ color: #fff;
+ z-index: 1;
+ position: relative;
+ background: #ff3d00;
+}
+
+.all_pricing_color h5 {
+ font-size: 40px;
+ padding: 50px 0px 0px 0px;
+}
+
+.all_pricing_color span {
+ font-size: 40px;
+}
+
+.pricing_area.all_pricing_color.pricing_area2 h5 {
+ color: #fff;
+}
+
+.pricing_area {
+ background-image: url("/static/home/assets/images/price-bg.jpg");
+ background-position: center center;
+ background-repeat: no-repeat;
+ background-size: cover;
+ border-style: default;
+ border-radius: 5px;
+ box-shadow: 0 0 30px 0 rgb(0 0 0 / 8%);
+ margin-bottom: 20px;
+}
+
+.witri_texti_list ul li {
+ list-style: none;
+ font-size: 17px;
+ margin-bottom: 10px;
+ padding: 7px 0px 0px 0px;
+}
+
+.pricing_area2 {
+ background-image: url("/static/home/assets/images/price-bg-2.jpg");
+ background-position: center center;
+ background-repeat: no-repeat;
+ background-size: cover;
+ border-style: default;
+}
+
+.pricing_area2 ul li {
+ color: #FFFFFF;
+ padding: 7px 0px 0px 0px;
+}
+
+.pricing_area2 .pricing-part a.btn {
+ color: #fff;
+}
+
+/*=====================
+ TESTIMONIAL AREA CSS
+=========================*/
+.testimonial_area {
+ background-image: url("/static/home/assets/images/testimonial-bg-img.jpg");
+ background-position: center center;
+ background-repeat: no-repeat;
+ background-size: cover;
+ padding: 115px 0px 160px;
+}
+
+.testimonial_area2 {
+ background: #FFFFFF;
+ padding: 115px 0px 115px;
+}
+
+.testimonial_area .witr_section_title_inner h3 {
+ color: #FFFFFF;
+ padding: 0px 0px 10px 0px;
+}
+
+.testimonial_area .slick-dots {
+ bottom: -45px;
+}
+
+.testimonial_area .slick-dots li button {
+ width: 40px;
+ height: 15px;
+ border-radius: 0px 0px 0px 0px;
+}
+
+.witr_testi_itemt {
+ padding: 0 10px;
+}
+
+.em_single_testimonial {
+ margin-bottom: 30px;
+ -webkit-transition: all 0.5s ease 0s;
+ transition: all 0.5s ease 0s;
+ padding: 37px 30px 26px;
+ margin-top: 20px;
+ box-shadow: 0 10px 25px 0 rgba(50, 65, 141, .12);
+ overflow: hidden;
+ position: relative;
+ text-align: left;
+}
+
+.em_testi_logo {
+ position: absolute;
+ right: 4%;
+ bottom: 55px;
+}
+
+.em_testi_content {
+ position: relative;
+}
+
+.em_testi_content:before {
+ content: "";
+ font-family: fontawesome !important;
+ font-size: 60px;
+ left: 3px;
+ opacity: 0.1;
+ -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=10)";
+ position: absolute;
+ top: -97px;
+ display: none;
+}
+
+.em_testi_content:after {
+ bottom: -28px;
+ content: "";
+ font-family: fontawesome !important;
+ font-size: 60px;
+ opacity: 0.1;
+ -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=10)";
+ position: absolute;
+ right: 3px;
+ display: none;
+}
+
+.em_test_thumb {
+ float: left;
+ margin-right: 20px;
+}
+
+.em_test_thumb img {
+ width: 59px;
+}
+
+.em_testi_title h2 {}
+
+.em_testi_title h2 sup {}
+
+.em_testi_title span {
+ display: block;
+ margin-top: 5px;
+ font-size: 18px;
+ font-weight: 600;
+}
+
+.em_testi_text {
+ overflow: hidden;
+ padding-top: 20px;
+ float: left;
+ text-align: left;
+}
+
+.em_testi_text.texti_style2 {}
+
+.em_testi_degi {}
+
+.em_testi_content:after,
+.em_testi_content:before,
+.em_testi_title span,
+.execllent_star h3,
+.test_q_icon i,
+.title_and_sub h6 {
+ color: #ff3d00;
+}
+
+.em_crating i.active {
+ color: #ff3d00;
+}
+
+.all_color_testimonial i {
+ font-size: 25px;
+}
+
+.testomonial .test-part,
+.em_single_testimonial,
+.witr_testi_main,
+.testiCreCon {
+ padding: 60px 60px 50px 60px;
+ background: #FFFFFF;
+}
+
+/* process area css */
+/* witr_feature style 13 */
+.working_proces_area {
+ padding: 115px 0px 0px;
+ background: #FFFFFF;
+}
+
+.sub-item {
+ position: relative;
+ padding: 20px 0;
+ -webkit-transition: .5s;
+ transition: .5s;
+}
+
+.witr_feature_13 .sub-item i {
+ color: #FF3D00;
+ background: #fff;
+ font-size: 40px;
+ box-shadow: 0px 0px 35px 0px rgb(0 0 0 / 9%);
+ height: 100px;
+ width: 100px;
+ line-height: 100px;
+ border-radius: 5px;
+ transition: .8s;
+ display: inline-block;
+}
+
+.witr_feature_13:hover .sub-item i {
+ clip-path: polygon(0% 175%, 212% 30%, 0% 0%, 0% 0%);
+ background: #FF3D00;
+ color: #fff;
+}
+
+.witr_feature_13 .sub-item span {
+ display: block;
+ width: 35px;
+ height: 35px;
+ line-height: 35px;
+ font-size: 15px;
+ border-radius: 50px;
+ background: #121111;
+ color: #fff;
+ text-align: center;
+ margin: auto;
+ margin-top: 35px;
+ z-index: 999;
+ position: relative;
+}
+
+.witr_feature_13 .sub-item::after,
+.witr_feature_13 .sub-item:before {
+ position: absolute;
+ content: "";
+ top: 50%;
+ left: 0;
+ right: 0;
+ width: 110%;
+ height: 3px;
+ -webkit-transition: .5s;
+ transition: .5s;
+ background: #f00;
+ z-index: 1;
+ /* transform: translateY(-50%); */
+}
+
+.witr_feature_13 .sub-item::after {
+ background: #f6f6f6;
+}
+
+.witr_feature_13 .sub-item:hover::before {
+ background: #ff3d00;
+}
+
+.witr_feature_13 .sub-item:hover::after {
+ display: none;
+}
+
+.witr_feature_13 .sub-item h3 {
+ font-size: 16px;
+ margin-bottom: 10px;
+ margin-top: 30px;
+}
+
+.witr_feature_13:hover .sub-item span {
+ background: #FF3D00;
+
+}
+
+/* accordion area css */
+/* accordion area css */
+.itpart_accordion_area {
+ background: #FFFFFF;
+ padding: 80px 0px 95px;
+}
+
+.card-header.witr_ac_card {
+ background: none !important;
+ padding: 0;
+ border-bottom: 0;
+ text-align: left;
+}
+
+.witr_ac_card i {
+ margin-right: 10px;
+ font-size: 20px;
+}
+
+.accordion_area .card-2 {
+ margin-bottom: 20px;
+}
+
+.accordion_area .card-2 p {
+ padding: 10px 15px 0px;
+}
+
+.witr_ac_style {
+ padding-left: 30px;
+ font-size: 22px;
+ font-weight: 600;
+ display: -webkit-box;
+ display: -ms-flexbox;
+ display: flex;
+ -webkit-box-align: center;
+ -ms-flex-align: center;
+ align-items: center;
+ padding: 11px 15px;
+ -webkit-transition: .5s;
+ transition: .5s;
+ padding: 20px 20px 20px 20px;
+ color: #222429;
+}
+
+.witr_ac_style:before {
+ position: absolute;
+ content: '\ea99';
+ right: 30px;
+ font-family: IcoFont !important;
+ font-weight: 400;
+}
+
+.active .witr_ac_style:before {
+ content: '\eaa1';
+}
+
+.card-body ul {}
+
+.card-body ul li {
+ margin-left: 18px;
+ margin-bottom: 4px;
+}
+
+.witr_ac_style {
+ color: #232323;
+}
+
+.witr_ac_style,
+.witr_ac_style::before {
+ font-size: 22px;
+ font-weight: 700;
+}
+
+.active .witr_ac_style,
+.banner-content a i,
+.banner-content button,
+.banner-content.content-4 ul li a:hover i,
+.butn:before,
+.witr_about_btn a,
+.witr_ac_style:focus,
+.witr_ac_style:hover {
+ background: #ff3d00;
+ color: #fff;
+}
+
+.border_left_style {
+ position: relative;
+ padding-top: 10px;
+}
+
+.border_left_style::before {
+ width: 6%;
+ display: block;
+ content: "";
+ background: #FF3D00;
+ height: 2px;
+ margin-right: 10px;
+ display: inline-block;
+ top: 50%;
+ transform: translateY(-50%);
+}
+
+.itpart_accordion_area .witr_section_title_inner h3 {
+ margin: 12px 0px 20px 0px;
+}
+
+.itpart_accordion_area .witr_section_title {
+ padding-bottom: 20px;
+}
+
+/* contact page css */
+.contact_page_area {
+ background: #FFFFFF;
+ padding: 110px 0px 60px;
+}
+
+.contact_page_area .all_color_service {
+ padding: 50px 30px 50px 30px;
+}
+
+.contact_page_area .all_color_service,
+.service_top_image::after {
+ box-shadow: 0px 0px 30px 0px rgba(0, 0, 0, 0.05);
+ margin-bottom: 20px;
+}
+
+.contact_page_area .service_top_image {
+ position: relative;
+}
+
+.contact_page_area .service-item i {
+ font-size: 30px;
+ height: 80px;
+ width: 80px;
+ text-align: center;
+ border-radius: 50%;
+ line-height: 80px;
+ display: inline-block;
+ -webkit-transition: .5s;
+ transition: .5s;
+ background: #ff3d00;
+ border-radius: 5px 5px 5px 5px;
+ color: #fff;
+}
+
+.contact_page_area .service-item h3 {
+ padding: 15px 0 10px;
+}
+
+.contact_page_area .all_color_service:hover i,
+.contact_page_area .poly_text_box:hover .contact_page_area .service_icon_box::before {
+ background-color: #111111;
+}
+
+.contact_page_area .text_box.all_icon_color p {
+ padding-bottom: 3px;
+ margin: 0px;
+}
+
+.contact_area2 .apartment_area {
+ position: relative;
+ background-size: cover;
+ padding: 60px 40px 80px;
+ border-radius: 10px;
+ text-align: left;
+ box-shadow: 0 0 30px 0 rgb(0 0 0 / 6%);
+}
+
+.contact_area2 .apartment_text h1 {
+ font-size: 17px;
+ margin-bottom: 5px;
+ color: #ff3d00;
+}
+
+.contact_area2 .apartment_text h2 {
+ padding: 10px 0px 30px 0px;
+}
+
+.witr_apartment_form input,
+.witr_apartment_form form select,
+.wpcf7-form-control-wrap textarea,
+.wpcf7-form-control-wrap a,
+.wpcf7-form-control-wrap input {
+ border-style: solid;
+ border-width: 1px 1px 1px 1px;
+ border-color: #DDDDDDCC;
+ padding: 30px 0px 30px 30px;
+ background-color: #87494900;
+}
+
+.contact_area2 .witr_apartment_form form select,
+.contact_area2 .witr_apartment_form input {
+ width: 100%;
+ height: 45px;
+ border-radius: 5px;
+ outline: 0;
+ margin-bottom: 23px;
+}
+
+.contact_area2 .witr_apartment_form input,
+.contact_area2 .witr_apartment_form textarea {
+ border: 1px solid #f1f1f1;
+}
+
+.contact_area2 .witr_apartment_form textarea {
+ width: 100%;
+ height: 150px;
+ padding-top: 20px;
+ padding-left: 30px;
+}
+
+.contact_area2 .witr_apartment_form .btn {
+ border-radius: 5px;
+ font-size: 18px;
+}
+
+.box_shadow {
+ box-shadow: 0px 0px 50px 0px rgb(0 0 0 / 6%);
+ padding: 10px;
+}
+
+.contact_area2 {
+ background: #FFFFFF;
+ padding: 30px 0px 110px;
+}
+
+/* blog grid area css */
+.itpart_blog_area.blog_grid_area {
+ background: #FFFFFF;
+}
+
+.blog_grid_area .learn_btn {
+ border-radius: 5px;
+ padding: 11px 32px;
+ margin-top: 20px;
+ -webkit-transition: .5s;
+ transition: .5s;
+ font-size: 16px;
+ margin-top: 10px;
+ display: inline-block;
+ border: 1px solid #ddd;
+}
+
+.blog_grid_area .learn_btn:hover {
+ background: #ff3d00;
+ border-color: #ff3d00;
+ color: #fff;
+}
+
+.blog_grid_area .witr_blog_area12 .witr_blog_con {
+ padding: 20px 15px 30px 25px;
+ background: #FFF;
+}
+
+.blog_grid_area .witr_blog_con h2 a {
+ margin-bottom: 8px;
+}
+
+.itpart_blog_area.blog_grid_area .witr_top_category.category_blog_grid ul li a {
+ border-radius: 5px;
+ display: inline-block;
+ background-color: #ff3d00;
+ padding: 5px 10px 5px 10px;
+ color: #fff;
+ transform: scale(0);
+ transition: .5s;
+}
+
+.busi_singleBlog:hover .witr_top_category.category_blog_grid ul li a {
+ transform: scale(1);
+}
+
+.blog_grid_area .witr_section_title_inner h2 {
+ font-size: 19px;
+}
+
+/* team page area css */
+.team_page_section {
+ position: relative;
+}
+
+.team_page_section::before {
+ position: absolute;
+ content: "";
+ top: 0px;
+ left: 0px;
+ right: 0px;
+ bottom: 0px;
+ width: 100%;
+ height: 100%;
+ background: #ff3d006b;
+ border-radius: 15px;
+}
+
+.team_area2 {
+ background: #F8F9FC78;
+ padding: 105px 0px 90px;
+}
+
+.team_area2 .witr_team_content span {
+ font-size: 18px;
+ color: #ff3d00;
+}
+
+.team_area2 .team-part {
+ margin-bottom: 20px;
+}
+
+/* accordion area2 css */
+.faq_area1 {
+ background: #F9F9F9;
+ padding: 92px 0px 80px;
+}
+
+.accordion_area_02 .accordion_02_shadow {
+ border: none;
+ box-shadow: 0px 0px 20px 0px #dddddd80;
+ background: none;
+}
+
+.writ_ac_style_02:focus,
+.writ_ac_style_02:hover {
+ color: #000;
+ background: none;
+}
+
+.active .writ_ac_style_02 {
+ background: none;
+ color: #000;
+}
+
+.border_bottom_0 {
+ border-bottom: none;
+}
+
+.writ_ac_style_02 {
+ margin-left: 25px;
+ font-size: 20px;
+ font-weight: 600;
+ display: block;
+}
+
+.writ_ac_style_02:before {
+ position: absolute;
+ content: '\f067';
+ left: 20px;
+ margin-right: 10px;
+ font-family: fontawesome !important;
+ font-weight: 200;
+}
+
+.active .writ_ac_style_02:before {
+ content: '\f068';
+}
+
+.card-header.witr_ac_card.border_bottom_0 {
+ background: #fff;
+ padding: 0px 5px;
+}
+
+.content_style p,
+.conent_style p {
+ padding-left: 18px;
+}
+
+.card.card-2.accordion_02_shadow {
+ border: 0 !important;
+ margin-bottom: 20px;
+ box-shadow: 1px 1px 7px -5px rgb(0 0 0 / 75%);
+}
+
+.faq_area1 .witr_ac_style {
+ padding-left: 30px;
+ font-size: 20px;
+ font-weight: 600;
+ display: flex;
+ align-items: center;
+ padding: 11px 15px;
+ transition: .5s;
+ padding: 12px 20px 12px 20px;
+ color: #232323;
+}
+
+.writ_ac_style_02:before {
+ font-weight: 400;
+ font-size: 20px;
+ color: #232323
+}
+
+/* single service area css */
+.single_service_area {
+ padding: 110px 0px 25px;
+ background: #FFFFFF;
+}
+
+.single_service_area .witr_text_widget p {
+ line-height: 1.7em;
+}
+
+.single_service_area .witr_text_widget_inner h2 {
+ font-size: 40px;
+ padding: 45px 0px 13px 0px;
+}
+
+.faq_area1.single_service_faq1 {
+ background: #FFFFFF;
+}
+
+/*=====================
+ PORTFOLIO AREA CSS
+=========================*/
+.portfolio_nav {
+ padding: 0px 0 30px;
+}
+
+.portfolio_nav ul {}
+
+.portfolio_nav ul li {
+ display: inline;
+}
+
+.portfolio_nav ul li {
+ border-radius: 5px;
+ cursor: pointer;
+ display: inline-block;
+ font-weight: 500;
+ margin: 0 5px 10px;
+ padding: 10px 20px;
+ position: relative;
+ transition: .5s;
+ border: 1px solid #f3eaea;
+}
+
+.prot_wrap {
+ overflow: hidden;
+}
+
+/* single gallery css */
+.single_protfolio {
+ position: relative;
+ overflow: hidden;
+ margin-bottom: 30px;
+}
+
+.prot_thumb {}
+
+.prot_thumb img {
+ display: block;
+ transform: scale(1);
+ transition: all 0.5s ease 0s;
+ width: 100%;
+}
+
+.single_protfolio:hover .prot_thumb img {
+ transform: scale(1.1);
+}
+
+.prot_content {
+ position: absolute;
+ text-align: center;
+ transition: .5s;
+ right: 0;
+ top: 0;
+ bottom: 0;
+ left: 0;
+ opacity: 0;
+ z-index: 9;
+}
+
+.multi_gallery.prot_content {
+ height: 90%;
+ width: 80%;
+ right: 10%;
+ top: 5%;
+ bottom: 5%;
+ left: 10%;
+}
+
+.prot_content_inner {
+ position: absolute;
+ top: 50%;
+ width: 100%;
+ left: 50%;
+ transform: translateX(-50%) translateY(-50%);
+ transition: all 0.5s ease-in-out 0.5s;
+}
+
+.single_protfolio:hover .prot_content {
+ opacity: 1;
+}
+
+.prot_content h3 {
+ margin: 0;
+ text-transform: capitalize;
+ font-size: 18px;
+}
+
+.prot_content h3 a {
+ font-size: 23px;
+ font-weight: 700;
+ text-transform: capitalize;
+ -webkit-transition: .5s;
+ transition: .5s;
+}
+
+.prot_content p {
+ line-height: 1.2;
+ margin: 5px 0 0;
+}
+
+.prot_content p span {
+ display: inline-block;
+ padding-top: 0px;
+}
+
+.single_protfolio:hover .prot_content {
+ opacity: 1;
+ transform: scale(1, 1);
+}
+
+.porttitle_inner span,
+.porttitle_inner4 span,
+.prot_content span {
+ position: relative;
+ margin: 0 2px;
+}
+
+.prot_content span:before,
+.porttitle_inner4 span:before,
+.porttitle_inner span:before {
+ bottom: 0;
+ content: ",";
+ position: absolute;
+ right: -5px;
+}
+
+.porttitle_inner span:last-child:before,
+.prot_content span:last-child:before,
+.porttitle_inner4 span:last-child:before {
+ content: "";
+}
+
+.nospace.col-xs-12 {
+ padding: 0px;
+}
+
+.nospace .single_protfolio {
+ margin-bottom: 0px;
+}
+
+/* load button css */
+.gallery_load_button {}
+
+.gallery_load_button a {
+ padding: 7px 15px;
+ display: inline-block;
+ font-size: 17px;
+ margin-top: 0px;
+}
+
+.prot_wrap.nospace .gallery_load_button a {
+ margin-top: 30px;
+}
+
+/* portfolio icon css */
+.picon a {
+ border-radius: 5px;
+ display: inline-block;
+ font-size: 20px;
+ height: 50px;
+ line-height: 50px;
+ margin: 0 3px 11px;
+ width: 50px;
+ text-align: center;
+}
+
+/* single portfolio */
+.pimgs img {
+ height: 465px;
+ width: 100%;
+}
+
+.prots-contentg p {}
+
+/*style 1 */
+.em_port_content {
+ height: 100%;
+ opacity: 1;
+ position: absolute;
+ right: 0;
+ text-align: center;
+ top: 0;
+ transition: all 0.5s ease 0s;
+ width: 100%;
+ z-index: 9;
+ left: 0;
+ top: -100%;
+ width: 100%;
+ transition: .5s;
+ text-align: center;
+}
+
+.pstyle_1 .porttitle_inner h3 {
+ padding-bottom: 0px;
+}
+
+.pstyle_1 .prot_content p {
+ margin: 2px 0 0;
+}
+
+.pstyle_1 .single_protfolio {
+ -webkit-transition: .5s;
+ transition: .5s;
+}
+
+.portfolio_readmore_btn {
+ padding-top: 23px;
+}
+
+.portfolio_readmore_btn>a {
+ border-radius: 5px;
+ display: inline-block;
+ padding: 6px 21px;
+ text-transform: uppercase;
+ -webkit-transition: .3s;
+ transition: .3s;
+ border: 1px solid transparent;
+}
+
+.pstyle_1 .picon a {
+ background: transparent;
+ border-radius: 5px;
+ display: inline-block;
+ font-size: 25px;
+ height: 50px;
+ line-height: 50px;
+ margin: 0 8px 11px;
+ width: 50px;
+ transition: .5s;
+}
+
+.pstyle2 .prot_content_inner {
+ left: 50%;
+ position: absolute;
+ top: 60%;
+ transform: translateX(-50%) translateY(-50%);
+ width: 100%;
+ z-index: 10;
+ transition: all 0.3s ease-in-out 0.3s;
+ opacity: 0;
+}
+
+.pstyle2 .single_protfolio:hover .prot_content_inner {
+ top: 50%;
+ opacity: 1;
+}
+
+/* style 4 */
+.pstyle4.pstyle_1 .single_protfolio:hover {
+ box-shadow: none;
+}
+
+.pstyle4 .prot_content_inner {
+ top: 50%;
+}
+
+.pstyle4 .prot_thumb {
+ overflow: hidden;
+ position: relative;
+}
+
+.pprotfolio4 {
+ box-shadow: 0 10px 16px 0 rgba(0, 0, 0, 0.7);
+ padding: 17px 10px 20px;
+}
+
+.pprotfolio4 {
+ padding: 20px 10px 23px;
+}
+
+.porttitle_inner4 h3 {
+ margin: 0;
+}
+
+.porttitle_inner4 h3 a {}
+
+.porttitle_inner4 p {
+ margin-bottom: 0;
+}
+
+.porttitle_inner4 p span {
+ display: inline-block;
+}
+
+.portfolio_nav ul li.current_menu_item,
+.portfolio_nav ul li:hover {
+ border-color: #ff3d00;
+ background: #ff3d00;
+ color: #fff;
+}
+
+.portfolio_nav ul li.current_menu_item,
+.portfolio_nav ul li:hover {}
+
+.prot_content {
+ background: #ff3d0080;
+}
+
+.pprotfolio4 {
+ box-shadow: 0 10px 16px 0 rgba(0, 0, 0, .7);
+ padding: 30px 10px 30px;
+ border: 1px solid #f1f1f1;
+ border-top: 0 solid #f1f1f1;
+}
+
+.portfolio_nav {
+ text-align: center;
+}
+
+.portfolio_area {
+ background: #FFFFFF;
+ padding: 110px 0px 250px;
+}
+
+.page-numbers span.current,
+.paginations a.current,
+.paginations a:hover {
+ border-color: #ff3d00;
+ background: #ff3d00;
+ color: #fff;
+}
+
+ul.page-numbers a.page-numbers {
+ box-shadow: 0 10px 40px 0 rgba(50, 65, 141, .12);
+}
+
+.page-numbers,
+.tutor-pagination-wrap a,
+.tutor-pagination-wrap span.page-numbers.current,
+a.page-numbers {
+ border-radius: 5px;
+ margin-right: 10px;
+ padding: 15px 24px;
+ font-size: 19px;
+ line-height: 1;
+ -webkit-transition: .5s;
+ transition: .5s;
+}
+
+.page-numbers span.current,
+.paginations a {
+ display: inline-block;
+ font-weight: 500;
+ margin: auto 5px;
+}
+
+.paginations a {
+ color: #888;
+}
+
+.page-numbers li {
+ display: inline-block;
+}
+
+.paginations {
+ text-align: center;
+ margin-top: 30px;
+}
+
+/* blog area css */
+.itpart_blog_area {
+ background-image: url("/static/home/assets/images/blog-bg-img.jpg");
+ background-position: center center;
+ background-repeat: no-repeat;
+ background-size: cover;
+ padding: 110px 0px 95px;
+}
+
+/* witr_blog_area12 */
+.witr_blog_area12 .witr_blog_con {
+ padding: 20px 15px 12px 25px;
+ background: #FFF;
+}
+
+.wbutton_right_icon {
+ position: absolute;
+ bottom: 0px;
+ right: 24px;
+}
+
+.wbutton_right_icon a {
+ font-size: 20px;
+ position: relative;
+ z-index: 1;
+}
+
+.wbutton_right_icon a::before {
+ content: '';
+ position: absolute;
+ height: 110px;
+ width: 110px;
+ border: 2px solid #f7f7f7;
+ bottom: -78px;
+ z-index: -1;
+ transform: rotate(-35deg);
+ right: -38px;
+ border-radius: 0px 20px;
+ transition: .5s;
+}
+
+.busi_singleBlog:hover .wbutton_right_icon a {
+ color: #fff;
+}
+
+/* blog area css 5 */
+.busi_singleBlog {
+ -webkit-transition: .5s;
+ transition: .5s;
+ box-shadow: 0 10px 40px 0 rgba(50, 65, 141, .07);
+ position: relative;
+ overflow: hidden;
+ margin-bottom: 20px;
+}
+
+.busi_singleBlog:hover {
+ box-shadow: 0px 5px 4px 0px rgba(0, 0, 0, 0.05);
+}
+
+.witr_sb_thumb {
+ overflow: hidden;
+ position: relative;
+}
+
+.witr_sb_thumb img {
+ width: 100%;
+ -webkit-transition: .5s;
+ transition: .5s;
+}
+
+.witr_sb_thumb:before {
+ position: absolute;
+ content: '';
+ top: 0;
+ left: 0;
+ bottom: 0;
+ right: 0;
+ -webkit-transform: scale(0);
+ transform: scale(0);
+ -webkit-transition: .5s;
+ transition: .5s;
+ z-index: 1;
+}
+
+.busi_singleBlog:hover .witr_sb_thumb img,
+.busi_singleBlog:hover .witr_sb_thumb:before {
+ -webkit-transform: scale(1.2);
+ transform: scale(1.2);
+}
+
+.witr_blog_con {
+ padding: 20px 15px 0px 25px;
+ margin-bottom: 0px;
+}
+
+.witr_blog_con span {
+ font-size: 16px;
+ line-height: 50px;
+ font-size: 16px;
+ margin-bottom: 15px;
+ margin-right: 2px;
+}
+
+.bs5 span {
+ line-height: 26px;
+}
+
+.witr_blog_con span i {
+ padding-right: 5px;
+ padding-left: 5px;
+ -webkit-transition: .5s;
+ transition: .5s;
+}
+
+.witr_blog_con h2 {
+ margin: 15px 0 0;
+}
+
+.witr_blog_con h2 a {
+ display: inline-block;
+}
+
+.witr_sb_thumb {
+ overflow: hidden;
+ position: relative;
+}
+
+.witr_sb_thumb img {
+ width: 100%;
+ transition: .5s;
+}
+
+.witr_sb_thumb:before {
+ position: absolute;
+ content: '';
+ top: 0;
+ left: 0;
+ bottom: 0;
+ right: 0;
+ -webkit-transform: scale(0);
+ transform: scale(0);
+ -webkit-transition: .5s;
+ transition: .5s;
+ z-index: 1;
+ background: rgba(0, 0, 0, .5);
+}
+
+.busi_singleBlog:hover .witr_sb_thumb img,
+.busi_singleBlog:hover .witr_sb_thumb:before {
+ -webkit-transform: scale(1.2);
+ transform: scale(1.2);
+}
+
+.witr_sb_thumb {
+ overflow: hidden;
+ position: relative;
+}
+
+.witr_top_category {
+ position: absolute;
+ left: 20px;
+ top: 20px;
+ z-index: 999;
+}
+
+.itpart_blog_area .witr_top_category ul li {
+ display: inline-block;
+}
+
+.itpart_blog_area .witr_top_category ul li a {
+ border-radius: 5px;
+ display: inline-block;
+ background-color: #FFFFFF;
+ padding: 10px 31px 10px 30px;
+ color: #111111;
+}
+
+.witr_top_category ul li a:hover {
+ color: #FFFFFF;
+ background: #FF3D00;
+}
+
+.all_blog_color p {
+ padding: 15px 0px 15px 0px;
+}
+
+.blog_add_icon a,
+.busi_singleBlog:hover .wbutton_right_icon a::before {
+ background: #ff3d00;
+}
+
+/* contact area css */
+.itpart_contact_area {
+ background: #FFFFFF;
+ padding: 125px 0px 110px;
+}
+
+.itpart_contact_area .witr_section_title_inner h3 {
+ margin: 15px 0px 0px 0px;
+}
+
+.itpart_contact_area .witr_section_title_inner p {
+ width: 100%;
+ padding: 15px 0px 0px 0px;
+}
+
+/*======== contact css ==========*/
+.apartment_area {
+ position: relative;
+ background-size: cover;
+ border-radius: 10px;
+ text-align: left;
+}
+
+.apartment_text h1 {
+ font-size: 17px;
+ margin-bottom: 5px;
+}
+
+.apartment_text h2 {
+ margin-bottom: 40px;
+ font-size: 38px;
+}
+
+.witr_apartment_form {}
+
+.witr_apartment_form form select option {}
+
+.witr_apartment_form form select,
+.witr_apartment_form input {
+ width: 100%;
+ height: 45px;
+ border-radius: 5px;
+ outline: none;
+ margin-bottom: 23px;
+}
+
+.witr_apartment_form textarea {
+ margin-bottom: 25px;
+ height: 150px;
+}
+
+.witr_apartment_form input::-moz-placeholder {
+ opacity: 1;
+ -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)";
+}
+
+.witr_apartment_form input::-ms-input-placeholder {
+ opacity: 1;
+ -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)";
+}
+
+.witr_apartment_form input::-webkit-input-placeholder {
+ opacity: 1;
+ -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)";
+}
+
+.witr_apartment_form select::-webkit-input-placeholder,
+.witr_apartment_form textarea::-webkit-input-placeholder {
+ opacity: 1;
+ -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)";
+}
+
+.witr_apartment_form .btn {
+ border-radius: 0px;
+ display: inline-block;
+ font-weight: 600;
+ padding: 15px 30px;
+ background: #ff3d00;
+ border: none;
+}
+
+.witr_apartment_form .btn:hover {
+ background: #02101e;
+}
+
+.checkbox_witr input {
+ width: 20px;
+ float: left;
+ margin-right: 15px;
+ margin-top: -8px;
+}
+
+.checkbox_witr span {
+ font-size: 15px
+}
+
+.witr_con_btn2 .w_btn2 {
+ /* width: 100%; */
+ text-align: center;
+ color: #fff;
+ font-size: 17px;
+ cursor: pointer;
+ line-height: inherit;
+ border-radius: 30px;
+ font-weight: 500;
+ border: none;
+ transition: .5s;
+ outline: none;
+ padding: 12px 30px 15px;
+ display: inline-block;
+}
+
+.witr_apartment_form input,
+.witr_apartment_form form select,
+.witr_apartment_form textarea,
+.witr_apartment_form form select option {
+ background-color: #FAFAFA;
+}
+
+/* brand area css */
+.itpart_brand_area {
+ background: #FE3D00;
+ transition: background 0.3s, border 0.3s, border-radius 0.3s, box-shadow 0.3s;
+ padding: 65px 0px 80px 0px;
+}
+
+/*======== footer area css ======= */
+.em_footer_area {
+ background-repeat: no-repeat;
+ background-position: center center;
+ background-image: url("/static/home/assets/images/fottor-img.jpg");
+ background-size: cover;
+}
+
+.em_footer_area.footer-middle {
+ padding: 65px 0 0px;
+}
+
+.em_footer_bottom.footer-bottom {
+ padding: 26px 0 24px;
+ position: relative;
+ margin-top: 80px;
+}
+
+.em_footer_bottom.footer-bottom:before {
+ content: "";
+ position: absolute;
+ top: 0;
+ background: #ffffff61;
+ height: 1px;
+ width: 61%;
+ left: 0;
+ right: 0;
+ margin: auto;
+}
+
+.witrfm_area {
+ position: relative;
+}
+
+.witrfm_area:before {
+ content: "";
+ position: absolute;
+ top: 0;
+ height: 100%;
+ width: 100%;
+ left: 0;
+ right: 0;
+ margin: auto;
+}
+
+.footer-middle {
+ padding: 65px 0 73px;
+}
+
+.footer-middle.wpfd {
+ padding: 0;
+}
+
+.wpfdp {
+ padding-top: 65px;
+ padding-bottom: 80px;
+}
+
+.footer-middle .widget h2 {
+ margin-bottom: 28px;
+ margin-top: 28px;
+ position: relative;
+}
+
+.footer-middle .widget h2:before {}
+
+.footer-middle table#wp-calendar td,
+.footer-middle table#wp-calendar th {
+ color: #fff;
+}
+
+.footer-middle #archives-dropdown--1 {
+ height: 34px;
+}
+
+.footer-middle .widget h2 {}
+
+.footer-middle .widget ul li:before {}
+
+.footer-middle .tagcloud a {}
+
+.footer-middle .widget ul {
+ list-style: none;
+}
+
+.footer-middle .widget ul li {
+ margin-bottom: 10px;
+}
+
+.footer-middle .widget ul li a,
+.footer-middle .widget ul li:before {
+ -webkit-transition: .5s;
+ transition: .5s;
+}
+
+.footer-middle .widget ul li a:hover,
+.footer-middle .widget ul li:hover:before {
+ color: #ff3d00;
+}
+
+.recent-portfolio-area {
+ display: -webkit-box;
+ display: -ms-flexbox;
+ display: flex;
+ -ms-flex-flow: row;
+ flex-flow: row;
+ -ms-flex-wrap: wrap;
+ flex-wrap: wrap;
+}
+
+.recent-portfolio {
+ margin-bottom: 10px;
+ margin-right: 10px;
+}
+
+.recent-portfolio {
+ width: 29.33%;
+}
+
+.recent-portfolio-image img {
+ width: 100%;
+}
+
+.em_footer_area.footer-middle .widget h2 {
+ margin-bottom: 28px;
+ margin-top: 28px;
+ position: relative;
+ font-size: 22px;
+}
+
+.footer-middle .widget ul li,
+.footer-middle .widget ul li a,
+.footer-middle .widget ul li:before,
+.footer-middle .tagcloud a,
+.footer-middle caption,
+.footer-middle table,
+.footer-middle table td a,
+.footer-middle cite,
+.footer-middle .rssSummary,
+.footer-middle span.rss-date,
+.footer-middle span.comment-author-link,
+.footer-middle .textwidget p,
+.footer-middle .widget .screen-reader-text {
+ color: #212d48;
+}
+
+.footer-middle .mc4wp-form-fields input::placeholder {
+ color: #212d48;
+}
+
+.widget ul li {
+ margin-bottom: 10px;
+}
+
+.footer-widget.address,
+.footer-widget.address p {
+ color: #17161a;
+}
+
+.footer-sociala-icon {
+ clear: both;
+ float: left;
+ font-size: 18px;
+ margin-right: 12px;
+}
+
+.footer-middle .mc4wp-form-fields p:nth-child(1) {
+ margin-bottom: 22px;
+}
+
+.footer-middle .mc4wp-form-fields input {
+ height: 50px;
+ position: relative;
+ background: transparent;
+ width: 100%;
+ line-height: 43px;
+ color: #fff;
+ border: 1px solid #e0a067;
+ border-radius: 0px;
+ padding-left: 10px;
+}
+
+.mc4wp-form-fields input {
+ width: 67%;
+ background: #1837d345;
+ font-size: 16px;
+ line-height: 28px;
+ color: #fff;
+ border-radius: 50px;
+ border: none;
+ outline: none;
+ padding: 15px 30px;
+ border: 2px solid #465ed9;
+}
+
+.footer-middle .mc4wp-form-fields button {
+ position: absolute;
+ height: 50px;
+ border-radius: 0px;
+ color: #fff;
+ background: #E0A067;
+ cursor: pointer;
+ padding: 10px 15px;
+ -webkit-transition: .5s;
+ transition: .5s;
+ border: none;
+}
+
+#witr_mp4_video {
+ position: absolute;
+ left: 0;
+ right: 0;
+ top: 0;
+ bottom: 0;
+ width: 100%;
+ object-fit: cover;
+ height: 100%;
+ z-index: -1;
+}
+
+.footer-middle .widget h2 {
+ color: #ffffff;
+}
+
+.footer-middle .widget ul li,
+.footer-middle .widget ul li a,
+.footer-middle .widget ul li::before,
+.footer-middle .tagcloud a,
+.footer-middle caption,
+.footer-middle table,
+.footer-middle table td a,
+.footer-middle cite,
+.footer-middle .rssSummary,
+.footer-middle span.rss-date,
+.footer-middle span.comment-author-link,
+.footer-middle .textwidget p,
+.footer-middle .widget .screen-reader-text,
+mc4wp-form-fields p,
+.mc4wp-form-fields,
+.footer-m-address p,
+.footer-m-address,
+.footer-widget.address,
+.footer-widget.address p,
+.mc4wp-form-fields p,
+.itpart-description-area p,
+.itpart-description-area .phone a,
+.itpart-description-area .social-icons a,
+.recent-review-content h3,
+.recent-review-content h3 a,
+.recent-review-content p,
+.footer-middle .itpart-description-area p,
+.footer-middle .recent-post-text h4 a,
+.footer-middle .recent-post-text .rcomment,
+.witr_sub_table span {
+ color: #ffffff;
+}
+
+.footer-widget.address p {
+ margin-bottom: 6px;
+}
+
+.itpart-description-area .social-icons a {
+ width: 40px;
+ height: 40px;
+ line-height: 40px;
+ display: inline-block;
+ text-align: center;
+ border-radius: 0;
+ margin-right: 5px;
+ margin-bottom: 5px;
+ margin-top: 5px;
+}
+
+.itpart-description-area .social-icons a:hover {
+ border-color: #ff3d00;
+ background: #ff3d00;
+}
+
+.itpart-description-area a img {
+ margin: 26px 0;
+}
+
+.itpart-description-area .logo{
+ width: 100px;
+}
+
+/*======================== END FOOTER middle AREA CSS =========================*/
+.footer-bottom {
+ padding: 26px 0 24px;
+ position: relative;
+}
+
+.footer-bottom:before {
+ content: "";
+ position: absolute;
+ top: 0;
+ background: #ffffff61;
+ height: 1px;
+ width: 61%;
+ left: 0;
+ right: 0;
+ margin: auto;
+}
+
+.copy-right-text {
+ text-align: left;
+}
+
+.copy-right-text p {
+ margin: 0;
+ padding: 0;
+}
+
+.footer-menu {}
+
+.footer-menu ul {
+ list-style: none;
+ margin: 0px;
+ padding: 0px;
+}
+
+.footer-menu ul li {
+ display: inline-block;
+}
+
+.footer-menu ul li a {
+ padding: 0 10px;
+ display: block;
+}
+
+.copy-right-text a:hover,
+.footer-menu ul li a:hover {
+ color: #ff3d00;
+}
+
+.footer-menu ul li:last-child a {
+ padding-right: 0px;
+}
+
+.footer_style_3 .footer-menu ul li:first-child a {
+ padding-left: 0px;
+}
+
+.footer-menu ul ul {
+ display: none;
+}
+
+.copy-right-text p,
+.footer-menu ul li a {
+ color: #ffffff;
+}
+
+/*======================== END FOOTER BOTTOM AREA CSS =========================*/
+/* about page area css */
+.itpart_service_area2.itpart_service_area {
+ margin-top: 0px;
+ padding: 185px 0px 100px;
+}
+
+.about_page_counter {
+ background: #FFFFFF;
+ box-shadow: 0px 0px 50px 0px rgba(0, 0, 0, 0.09);
+ transition: background 0.3s, border 0.3s, border-radius 0.3s, box-shadow 0.3s;
+ padding: 85px 10px 53px 81px;
+ border-radius: 10px;
+}
+
+.about_page_counter .witr_counter_number_inn {
+ overflow: hidden;
+ text-align: center;
+}
+
+.about_page_counter .all_counter_color h3,
+.all_counter_color span {
+ color: #ff3d00;
+ font-weight: 700;
+}
+
+.about_page_counter .witr_counter_number_inn h4 {
+ font-size: 22px;
+ color: #111;
+}
+
+.about_page_area {
+ padding: 45px 0px 100px;
+}
+
+.about_page_area_about {}
+
+.about_page_area_about .all_color_service {
+ border-style: solid;
+ border-width: 1px 1px 1px 1px;
+ border-color: #F6F6F6;
+ display: inline-block;
+ padding: 33px 23px 50px;
+ margin: 15px 10px 10px;
+}
+
+.about_page_area_about .witr_section_title_inner.text-left p {
+ padding-top: 15px;
+}
+
+.about_page_area_about .all_color_service:hover {
+ border-style: solid;
+ border-width: 1px 1px 1px 1px;
+ border-color: #FFFFFF;
+ box-shadow: 0px 0px 50px 0px rgba(0, 0, 0, 0.05);
+ background-color: #FFFFFF;
+}
+
+.about_page_area_about .service_top_image {
+ position: relative;
+}
+
+.about_page_area_about .all_icon_color i,
+.about_page_area_about .service_icon_box {
+ padding: 30px 0px 0px 0px;
+}
+
+.about_page_area_about .width_height_link_0.service-item i,
+.about_page_area_about .width_height_link_02 .service-item i {
+ font-size: 50px;
+ height: auto;
+ width: auto;
+ border-radius: initial;
+ line-height: normal;
+ background: 0 0;
+ border: none;
+ color: #ff3d00;
+}
+
+.about_page_area_about .all_color_service h3,
+.about_page_area_about .all_color_service h3 a {
+ font-size: 18px;
+ font-weight: 700;
+}
+
+.about_page_area_about .all_color_service h3 {
+ margin: 0px 0px -20px 0px;
+ padding: 10px 0px 0px 0px;
+}
+
+/* service page area css */
+.itpart_service_area2.itpart_service_area.service_page_area {
+ padding: 115px 0px 100px;
+}
+
+.testimonial_area2 {
+ background: #FFFFFF;
+}
+
+.testimonial_area2 .witr_section_title_inner h3 {
+ color: #111;
+ padding: 0px 0px 10px 0px;
+}
+
+.testimonial_area2 .em_test_thumb img {
+ border-radius: 50%;
+ width: 59px;
+}
+
+.testimonial_area2 .em_crating i {
+ font-size: 18px;
+}
+
+/* home2 area css */
+.home2_swiper_area {}
+
+.witr_swiper_area .home2_swiper_area .witr_swiper_content h1 {
+ color: #FFFFFF;
+ font-size: 16px;
+ text-transform: uppercase;
+}
+
+.cal_to_toggole {
+ display: -webkit-box;
+ display: -ms-flexbox;
+ display: flex;
+ align-items: center;
+}
+
+.home2_togole_area .single_image {
+ margin: 10px 20px 0px 0px;
+}
+
+.togole_inner_area {
+ background-color: #111111;
+ border-radius: 10px 10px 10px 10px;
+ padding: 50px 0px 50px 10px;
+ display: flex;
+}
+
+.home2_togole_area .all_cal_color h3 {
+ color: #FFFFFF;
+}
+
+.home2_togole_area .all_cal_color h2 {
+ color: #FFFFFF;
+}
+
+.home2_togole_area .itpart_content h2,
+.home2_togole_area .itpart_content h3 {
+ font-size: 26px;
+ padding: 4px 0;
+}
+
+.home2_togole_area .itpart_button.no_margin {
+ margin-top: 0;
+ width: 60%;
+}
+
+.home2_togole_area .itpart_button a {
+ padding: 18px 35px;
+ display: inline-block;
+ font-size: 18px;
+ -webkit-transition: 1s;
+ transition: 1s;
+ margin-right: 15px;
+ font-weight: 500;
+ border-radius: 30px;
+}
+
+.home2_togole_area .itpart_button a,
+.home2_togole_area .witr_case_btnb a:hover {
+ background: #ff3d00;
+}
+
+.home2_togole_area .itpart_button a,
+.home2_togole_area .itpart_button a:hover,
+.home2_togole_area .itpart_video_inner i {
+ color: #fff;
+}
+
+.home2_togole_area .single_image_area {
+ text-align: right;
+}
+
+.home2_togole_area .all_cal_color a:hover,
+.home2_togole_area .all_cal_color button:hover {
+ color: #111111;
+ background-color: #FFFFFF;
+ border-style: default;
+}
+
+.itpart_service_area2.itpart_service_area.home2_service_area {
+ padding: 125px 0px 110px;
+}
+
+.home2_project_area {
+ background-image: url("/static/home/assets/images/port-bg-img.jpg");
+ background-repeat: no-repeat;
+ background-size: cover;
+ padding: 125px 0px 130px;
+}
+
+.itpart_about_area.about_page_area_about.home2_about {
+ padding: 130px 0px 130px;
+}
+
+.counter_up_area.home2_counter {
+ margin-top: -100px;
+ margin-bottom: 0px;
+}
+
+.itpart_team_area.home2_team {
+ padding: 130px 0px 240px;
+}
+
+.why_choose_area.about_page_area.home2_why_choose {
+ padding: 55px 0px 130px;
+}
+
+.home2_togole_area {
+ position: relative;
+ margin-bottom: -100px;
+}
+
+.itpart_blog_area.home2_blog_area {
+ padding: 230px 0px 100px;
+}
+
+#witr_mp4_video {
+ position: absolute;
+ left: 0;
+ right: 0;
+ top: 0;
+ bottom: 0;
+ width: 100%;
+ object-fit: cover;
+ height: 100%;
+ z-index: -1;
+}
+
+.port_3column_area .witr_section_title_inner p {
+ width: 39%;
+}
+
+/* testimonial area3 css */
+.testimonial_area3 {
+ padding: 110px 0px 145px;
+}
+
+.witr_testomonial_area {
+ width: 80%;
+ margin: auto;
+}
+
+.witr_background_test {
+ box-shadow: 0px 0px 30px 0px rgba(0, 0, 0, 0.1);
+ margin-top: 50px;
+ margin-bottom: 60px;
+}
+
+.witr_testi_main {
+ box-shadow: 0px 0px 30px 0px rgba(0, 0, 0, 0.1);
+ text-align: center;
+ padding: 50px 0px;
+ width: 70%;
+ margin: auto;
+ margin-top: -50px;
+ margin-bottom: -50px;
+}
+
+.witr_test_part {
+ float: left;
+ margin-left: 215px;
+ margin-right: -165px;
+}
+
+.witr_test_part img {}
+
+.witr_ns_part {}
+
+.witr_ns_part h6 {
+ font-size: 22px;
+ margin-top: 10px;
+}
+
+.witr_ns_part i {
+ font-size: 17px;
+ font-weight: 500;
+}
+
+.witr_test_content {}
+
+.witr_test_content p {
+ width: 88%;
+ margin: auto;
+ margin-top: 30px;
+}
+
+.witr_test_name {
+ margin: 30px 0 15px;
+}
+
+.witr_test_name li {
+ list-style: none;
+}
+
+.witr_test_name i {
+ font-size: 18px;
+}
+
+.witr_background_test,
+.witr_testi_main {
+ border-top: 2px solid #ff3d00;
+ border-bottom: 2px solid #ff3d00;
+}
+
+.testimonial_area3 .slick-dots {
+ margin-bottom: -15px;
+}
+
+.testimonial_area3 .slick-dots li button {
+ width: 50px;
+ height: 15px;
+ border-radius: 3px;
+}
+
+.testimonial_area3 .witr_test_name i {
+ font-size: 22px;
+}
+
+/*======================== BREADCRUMB AREA CSS =========================*/
+.breadcumb-blog-area {
+ padding: 60px 0 65px;
+ background-color: #f7f7f7;
+ background-position: center top;
+ background-repeat: no-repeat;
+ background-size: cover;
+ position: relative;
+}
+
+.breadcumb-inner h2 {
+ font-size: 36px;
+}
+
+.breadcumb-area {
+ background-image: url("/static/home/assets/images/breadcump.jpg");
+ padding: 140px 0px;
+ background-color: rgba(0, 0, 0, 0.39);
+ background-position: center center;
+ background-repeat: no-repeat;
+ position: relative;
+ background-size: cover;
+}
+
+.breadcumb-area:before,
+.breadcumb-blog-area:before {
+ position: absolute;
+ left: 0;
+ top: 0;
+ right: 0;
+ bottom: 0;
+ content: "";
+}
+
+.breadcumb-area::before,
+.breadcumb-blog-area::before {
+ background-color: rgba(0, 0, 0, 0.39)
+}
+
+.breadcumb-inner ul,
+.breadcumb-inner ul span a,
+.breadcumb-inner li,
+.breadcumb-inner li a {
+ color: #ffffff;
+ font-display: swap;
+}
+
+.breadcumb-inner ul {
+ font-weight: 600;
+}
+
+.breadcumb-inner li {
+ display: inline-block;
+ margin: 0 2px;
+ color: #fff;
+ font-weight: 600;
+}
+
+.breadcumb-inner li:nth-last-child(-n+1) {
+ color: #821F05;
+ color: #fff;
+ font-weight: 600;
+}
+
+.breadcumb-inner li a {
+ font-weight: 600;
+ color: #fff;
+}
+
+.breadcumb-inner li a:hover {
+ color: #821F05;
+}
+
+.brpt h2 {
+ color: #fff;
+ font-size: 40px;
+}
+
+.lcase {
+ text-transform: lowercase;
+}
+
+.ucase {
+ text-transform: uppercase;
+}
+
+.ccase {
+ text-transform: capitalize;
+}
+
+/* =============== blog left sidebar css =============== */
+/* side bar css */
+.witr-blog-side-area.blog_sidebar {
+ padding: 100px 0px 100px;
+ background: #f9f9f9;
+}
+
+.blog-left-side>div {
+ background-color: #fff;
+ margin-bottom: 30px;
+ padding: 15px;
+ box-shadow: 0 0 5px 0 rgba(148, 146, 245, 0.2);
+}
+
+.blog-left-side>div:last-child {
+ margin-bottom: 0;
+}
+
+.blog-left-side h2 {
+ margin-bottom: 10px;
+ text-transform: uppercase;
+}
+
+.blog-left-side .content {
+ padding: 0;
+}
+
+.blog-left-side .push-bottom-large {
+ margin-bottom: 0;
+}
+
+.blog-left-side>div:last-child {
+ margin-bottom: 0;
+}
+
+.blog-left-side>aside:last-child {
+ margin-bottom: 0 !important;
+}
+
+.blog-left-side .nav .children li a:hover,
+.blog-left-side .sub-menu li a:hover {
+ background: 0 0;
+ color: #18c8ff;
+}
+
+.defaultsearch {
+ background: #f7f7f7;
+ position: relative;
+}
+
+.defaultsearch input {
+ background: #f7f7f7 none repeat scroll 0 0;
+ border: 0 none;
+ height: 54px;
+ position: relative;
+ width: 100%;
+}
+
+.defaultsearch button {
+ background: transparent none repeat scroll 0 0;
+ border: 0 none;
+ color: #858585;
+ font-size: 18px;
+ padding: 1px 15px;
+ position: absolute;
+ right: 0;
+ top: 50%;
+ cursor: pointer;
+ transform: translateY(-50%);
+}
+
+.defaultsearch input[type="text"] {
+ padding-left: 10px;
+}
+
+.blog-left-side .widget h2 {
+ border-bottom: 1px solid #e5e5e5;
+ bottom: -1px;
+ display: block;
+ line-height: 17px;
+ margin-bottom: 20px;
+ padding-bottom: 14px;
+ position: relative;
+ text-transform: capitalize;
+}
+
+.blog-left-side .widget h2::before {
+ background: #ff3d00 none repeat scroll 0 0;
+ bottom: 0;
+ content: "";
+ height: 20px;
+ left: -15px;
+ position: absolute;
+ width: 2px;
+ top: -3px;
+}
+
+.footer-middle .widget h5 {
+ text-transform: capitalize;
+}
+
+.blog-left-side .widget ul {
+ list-style: none;
+}
+
+.blog-left-side .widget ul li {
+ margin: 0 0 5px;
+ padding-left: 20px;
+ position: relative;
+}
+
+.blog-left-side .widget ul li span {
+ font-weight: 300;
+}
+
+.blog-left-side .widget ul li:last-child {
+ padding-bottom: 0;
+ margin-bottom: 0;
+}
+
+.blog-left-side>.widget>ul>li {
+ margin: 0 0 10px;
+ padding-bottom: 10px;
+}
+
+.blog-left-side .widget>ul>li:not(:last-child) {
+ border-bottom: 1px solid rgba(0, 0, 0, 0.12);
+}
+
+.blog-left-side .widget ul li a:hover,
+.blog-left-side .widget ul li:hover::before {
+ color: #ff3d00;
+}
+
+.blog-left-side .widget ul li::before {
+ content: "\f105";
+ font-family: FontAwesome;
+ font-size: 18px;
+ left: 0;
+ position: absolute;
+}
+
+.blog-left-side .widget select {
+ width: 100%;
+ height: 40px;
+ background: #fff;
+ border: 1px solid #ddd;
+ padding-left: 5px;
+}
+
+.widget .screen-reader-text {
+ display: none;
+}
+
+.textwidget select {
+ width: 100%;
+}
+
+#wp-calendar {
+ width: 100%;
+}
+
+.tagcloud a {
+ display: inline-block;
+ font-size: 14px !important;
+ margin: 0 8px 10px 0;
+ padding: 7px 15px;
+ text-align: center;
+ font-weight: 400;
+ border: 1px solid #ddd;
+ text-transform: capitalize;
+}
+
+.r-post-content h3 a:hover,
+.r-post-content h3:hover,
+.tagcloud a:hover,
+.widget_archive ul li a:hover,
+.widget_archive ul li:hover:before,
+.widget_categories ul li a:hover,
+.widget_categories ul li:hover:before {
+ color: #ff3d00;
+}
+
+.tagcloud a:hover {
+ background: #ff3d00;
+ color: #fff;
+}
+
+#wp-calendar caption {
+ font-size: 14px;
+ font-weight: 400;
+ margin-bottom: 10px;
+ text-align: left;
+ text-transform: uppercase;
+}
+
+#wp-calendar {
+ font-size: 13px;
+}
+
+#wp-calendar {
+ border: 0 solid #e5e5e5;
+ margin-bottom: 20px;
+ overflow: auto;
+ vertical-align: top;
+ width: 100%;
+ margin: 0;
+}
+
+table#wp-calendar td {
+ border: 1px solid #e5e5e5;
+ padding: 5px 10px;
+ text-align: center;
+ vertical-align: top;
+ font-size: 14px;
+}
+
+#wp-calendar td,
+#wp-calendar th {
+ padding: 8px;
+}
+
+table#wp-calendar th {
+ border: 1px solid #e5e5e5;
+ font-size: 13px;
+ font-weight: 700;
+ padding: 5px 10px;
+ text-align: center;
+ text-transform: uppercase;
+ vertical-align: middle;
+}
+
+table#wp-calendar td#today {
+ color: #fff;
+ background-color: #ff3d00;
+}
+
+table#wp-calendar td#today a {
+ color: #fff;
+}
+
+.textwidget img {
+ margin-bottom: 15px;
+}
+
+.textwidget p {
+ margin-bottom: 0.5rem;
+}
+
+.itpart-blog-thumb img {
+ width: 100%;
+}
+
+.witr-blog-side-area .imagess_area .slick-slide img {
+ display: inline-block;
+ margin: auto;
+ width: 100%;
+}
+
+/* end sidebar css */
+/* witr-blog-2side-area */
+.witr-blog-side-area.witr-blog-2side {
+ padding: 100px 0px 70px;
+ background: #f9f9f9;
+}
+
+.itpart-single-blog {
+ margin-bottom: 30px;
+ overflow: hidden;
+ -webkit-transition: all .3s ease-in-out 0s;
+ transition: all .3s ease-in-out 0s;
+}
+
+.itpart-blog-thumb {
+ overflow: hidden;
+}
+
+.itpart-blog-thumb a {
+ display: block;
+ position: relative;
+}
+
+.itpart-blog-thumb a:before {
+ content: "";
+ left: 0;
+ top: 0;
+ right: 0;
+ bottom: 0;
+ width: 100%;
+ height: 100%;
+ position: absolute;
+ background: rgba(0, 0, 0, .7);
+ opacity: 0;
+ z-index: 999;
+ transition: .5s;
+}
+
+.itpart-single-blog:hover .itpart-blog-thumb a:before {
+ opacity: 1;
+ transition: .5s;
+}
+
+.itpart-blog-thumb img {
+ transition: .5s;
+ display: block;
+}
+
+.em-blog-content-area {
+ padding: 15px 0px 15px;
+}
+
+.blog-page-title h2 {
+ display: block;
+ font-size: 22px;
+ margin-bottom: 7px;
+ text-transform: capitalize;
+ -webkit-transition: all .5s ease 0s;
+ transition: all .5s ease 0s;
+}
+
+.blog-page-title a {
+ display: inline-block;
+ word-break: break-all;
+}
+
+.blog-content {
+ word-break: break-word;
+}
+
+.itpart-blog-meta.post_blog h2 a {
+ font-size: 24px;
+ font-weight: 700;
+ transition: .5s;
+}
+
+.itpart-blog-meta.post_blog h2 {
+ margin-bottom: 8px;
+}
+
+.recent-post-item {
+ margin-bottom: 10px;
+}
+
+.blog-left-side .widget ul li a,
+.blog-left-side .widget ul li::before {
+ color: #444;
+}
+
+.itpart-blog-meta.post_blog h2 a:hover {
+ color: #ff3d00;
+}
+
+.itpart-blog-meta-left a,
+.itpart-blog-meta-left span {
+ color: #888888;
+ font-size: 16px;
+ margin-right: 5px;
+ margin-bottom: 10px;
+ display: inline-block;
+ margin-top: 5px;
+}
+
+.itpart-blog-meta-left i {
+ color: #ff3d00;
+ margin-right: 5px;
+}
+
+.blog-content p {
+ font-size: 17px;
+ padding-top: 14px;
+}
+
+.em-blog-content-area .witr_btn {
+ background: #ff3d00;
+ border-radius: 5px;
+ color: #fff;
+ display: inline-block;
+ font-size: 20px;
+ padding: 10px 30px;
+ text-align: center;
+ position: relative;
+ margin-right: 20px;
+ z-index: 2;
+ transition: 1s;
+ font-weight: 400;
+ margin-bottom: 15px;
+}
+
+.em-blog-content-area .witr_btn:hover {
+ background: #323232;
+ color: #fff;
+}
+
+.witr-blog-side-area.blog_sidebar .itpart-single-blog {
+ margin-bottom: 30px;
+ box-shadow: none;
+ border-bottom: 1px solid #e7e7e7;
+ background: transparent;
+}
+
+blockquote p {
+ font-size: 20px;
+ position: relative;
+ color: ##999;
+}
+
+.witr-blog-side-area blockquote {
+ background-color: #f7f7f7;
+ border-left: 3px solid #ff3d00;
+ padding: 1em 1em;
+ margin-top: 15px;
+}
+
+.recent-post-text h4 a {
+ color: #17161a;
+ font-size: 19px;
+ transition: all .3s ease 0s;
+}
+
+/* video play css */
+.video-open-inline iframe {
+ width: 100%;
+ height: 400px;
+ border: none;
+}
+
+/* =============== End blog left sidebar css =============== */
+
+/* single blog css */
+.witr-blog-side-area {
+ padding: 100px 0px 100px;
+}
+
+.comment-respond {
+ border: 1px solid #ddd;
+ margin-bottom: 30px;
+ padding: 25px 10px 30px;
+ background-color: #f1f1f1;
+}
+
+.single_blog_page {
+ margin-bottom: 0px;
+}
+
+.comment_field .input-field input,
+.comment_field .textarea-field textarea {
+ color: #555555;
+}
+
+.comment_field .input-field input {
+ width: 100%;
+ border: 1px solid #e5e5e5;
+ padding: 6px 20px;
+ height: 54px;
+ font-size: 17px;
+}
+
+.comment_field .input-field label,
+.comment_field .textarea-field label {
+ color: #606060;
+ font-size: 14px;
+ margin-top: 15px;
+ margin-bottom: 0;
+ font-weight: 500;
+}
+
+.comment_field .input-field {
+ width: 33.33%;
+ float: left;
+ margin-bottom: 25px;
+}
+
+.comment_field .textarea-field label {
+ margin-top: 20px;
+ margin-bottom: 10px;
+}
+
+.comment_field .textarea-field textarea {
+ width: 100%;
+ border: 1px solid #e5e5e5;
+ height: 150px;
+ padding: 10px;
+}
+
+.itpart_btn {
+ background: transparent;
+ border: 1px solid #ddd;
+ display: inline-block;
+ text-align: center;
+ padding: 12px 20px;
+ margin-top: 15px;
+ border-radius: 5px;
+ transition: .5s;
+ color: #444;
+}
+
+.itpart_btn:hover {
+ background: #ff3d00;
+ border-color: #ff3d00;
+ color: #fff;
+}
+
+.single_blog_thumb img {
+ width: 100%;
+ height: 500px;
+}
+
+blockquote {
+ padding: 25px 32px 25px;
+ margin: 0 0 30px;
+ font-size: 17px;
+ /* border-left: 3px solid #f99a00; */
+ font-weight: 400;
+ box-shadow: 0 0 5px 0px rgb(0 0 0 / 7%);
+}
+
+blockquote p {
+ font-size: 20px;
+ position: relative;
+}
+
+.block .wp-block-quote.is-large p,
+.block .wp-block-quote.is-style-large p {
+ font-size: 1.5em;
+ font-style: italic;
+ line-height: 1.6;
+}
+
+.witr-blog-side-area.single_blog blockquote {
+ background-color: #f7f7f7;
+ border-left: none;
+}
+
+.wp-block-group.block {
+ text-align: center;
+}
+
+.itpart-single-blog-details-inner {
+ padding: 38px 45px 45px;
+ box-shadow: 0 3px 19px rgb(0 0 0 / 8%);
+ border-radius: 0 0 10px 10px;
+}
+
+.itpart-single-icon-inner {
+ text-align: center;
+}
+
+.itpart-single-icon-inner a {
+ border: 1px solid #e6e6e6;
+ color: #17161a;
+ display: inline-block;
+ font-size: 15px;
+ height: 40px;
+ line-height: 41px;
+ margin: 0 9px 0 0;
+ text-align: center;
+ width: 40px;
+ border-radius: 5px;
+}
+
+.itpart-single-icon-inner a:hover {
+ background: #ff3d00;
+ border-color: #ff3d00;
+ color: #fff;
+}
+
+.recent-post-image {
+ float: left;
+ margin-right: 10px;
+}
+
+.recent-post-image img {
+ width: 75px;
+}
+
+/*========================
+EM40 SCROLL TOP CSS
+=========================*/
+#scrollUp {
+ background: #ff3d00;
+ bottom: 30px;
+ color: #fff;
+ font-size: 30px;
+ height: 40px;
+ line-height: 40px;
+ right: 100px;
+ text-align: center;
+ border-radius: 5px;
+ width: 40px;
+}
+
+#scrollUp i {
+ color: #fff;
+ font-weight: 900;
+}
+
+.witr_case:hover .slick-prev,
+.witr_case:hover .slick-next,
+.service_active:hover .slick-prev,
+.service_active:hover .slick-next,
+.feature_active:hover .slick-prev,
+.feature_active:hover .slick-next,
+.event_active:hover .slick-prev,
+.event_active:hover .slick-next,
+.imagess_area:hover .slick-prev,
+.imagess_area:hover .slick-next,
+.witr_ds_content_area:hover .slick-prev,
+.witr_ds_content_area:hover .slick-next,
+.blog_wrap:hover .slick-prev,
+.blog_wrap:hover .slick-next,
+.witr_team_area_c:hover .slick-prev,
+.witr_team_area_c:hover .slick-next,
+.images_area:hover .slick-prev,
+.images_area:hover .slick-next,
+.testomonial-slide:hover .slick-prev,
+.testomonial-slide:hover .slick-next,
+.Screenshots-slide:hover .slick-prev,
+.Screenshots-slide:hover .slick-next,
+.mobile-slide:hover .slick-prev,
+.mobile-slide:hover .slick-next,
+.mobile-slide-7:hover .slick-prev,
+.mobile-slide-7:hover .slick-next,
+.witr_islidess_slick:hover .slick-prev,
+.witr_islidess_slick:hover .slick-next,
+.testomonial:hover .slick-prev,
+.testomonial:hover .slick-next {
+ opacity: 1;
+}
+
+/* slick prev slick next css */
+/*======== slick ========*/
+.slick-prev,
+.slick-next {
+ font-size: 0;
+ position: absolute;
+ display: block;
+ padding: 0;
+ cursor: pointer;
+ color: #fff;
+ outline: none;
+ background: #ff3d00;
+ z-index: 9;
+ opacity: 0;
+ border-radius: 0px;
+ box-shadow: 0 0 5px rgba(0, 0, 0, 0.1);
+ width: 55px;
+ height: 55px;
+ line-height: 55px;
+ top: 50%;
+ transform: translate(0px, -50%);
+ transition: .5s;
+ border: 0px solid #17161a;
+}
+
+.slick-prev {
+ left: -15px;
+}
+
+.slick-next {
+ right: -15px;
+}
+
+.slick-prev.slick-disabled,
+.slick-next.slick-disabled {
+ background: #E0A067;
+}
+
+.witr_ds_content_area .slick-prev {
+ left: 15px;
+}
+
+.witr_ds_content_area .slick-next {
+ right: 15px;
+}
+
+.slick-prev:before,
+.slick-next:before {
+ color: #fff;
+ font-size: 25px;
+ -webkit-transition: all 0.3s ease 0s;
+ transition: all 0.3s ease 0s;
+ content: "\f177";
+ font-family: FontAwesome !important;
+ line-height: inherit;
+ opacity: 1;
+ -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)";
+}
+
+.slick-next:before {
+ content: "\f178";
+ font-family: FontAwesome !important;
+}
+
+.slick-prev:hover:before,
+.slick-prev:focus:before,
+.slick-next:hover:before,
+.slick-next:focus:before {
+ color: #fff;
+}
+
+.team_page_active:hover .slick-prev,
+.team_page_active:hover .slick-next {
+ opacity: 1;
+}
+
+button:focus {
+ outline: none;
+ outline: none;
+}
+
+.land_page_flex {
+ display: flex-end;
+}
\ No newline at end of file
diff --git a/public/static/home/venobox/close.gif b/public/static/home/venobox/close.gif
new file mode 100644
index 0000000..4b8697c
--- /dev/null
+++ b/public/static/home/venobox/close.gif
Binary files differ
diff --git a/public/static/home/venobox/next.gif b/public/static/home/venobox/next.gif
new file mode 100644
index 0000000..8a60294
--- /dev/null
+++ b/public/static/home/venobox/next.gif
Binary files differ
diff --git a/public/static/home/venobox/preload-circle.png b/public/static/home/venobox/preload-circle.png
new file mode 100644
index 0000000..f106176
--- /dev/null
+++ b/public/static/home/venobox/preload-circle.png
Binary files differ
diff --git a/public/static/home/venobox/preload-dots.png b/public/static/home/venobox/preload-dots.png
new file mode 100644
index 0000000..de4c0ea
--- /dev/null
+++ b/public/static/home/venobox/preload-dots.png
Binary files differ
diff --git a/public/static/home/venobox/preload-ios.png b/public/static/home/venobox/preload-ios.png
new file mode 100644
index 0000000..7c6a9c1
--- /dev/null
+++ b/public/static/home/venobox/preload-ios.png
Binary files differ
diff --git a/public/static/home/venobox/preload-quads.png b/public/static/home/venobox/preload-quads.png
new file mode 100644
index 0000000..0c61971
--- /dev/null
+++ b/public/static/home/venobox/preload-quads.png
Binary files differ
diff --git a/public/static/home/venobox/preload.png b/public/static/home/venobox/preload.png
new file mode 100644
index 0000000..f106176
--- /dev/null
+++ b/public/static/home/venobox/preload.png
Binary files differ
diff --git a/public/static/home/venobox/prev.gif b/public/static/home/venobox/prev.gif
new file mode 100644
index 0000000..47f2c71
--- /dev/null
+++ b/public/static/home/venobox/prev.gif
Binary files differ
diff --git a/public/static/home/venobox/venobox.css b/public/static/home/venobox/venobox.css
new file mode 100644
index 0000000..9d71fd6
--- /dev/null
+++ b/public/static/home/venobox/venobox.css
@@ -0,0 +1,327 @@
+/* ------ venobox.css --------*/
+.vbox-overlay *, .vbox-overlay *:before, .vbox-overlay *:after{
+ -webkit-backface-visibility: hidden;
+ -webkit-box-sizing:border-box;
+ -moz-box-sizing:border-box;
+ box-sizing:border-box;
+}
+/* ------- overlay: change here background color and opacity ----- */
+.vbox-overlay{
+ background: #fdfdfd;
+ background: rgba(0,0,0,0.85);
+ width: 100%;
+ height: auto;
+ position: fixed;
+ top: 0;
+ left: 0;
+ bottom: 0;
+ z-index: 9999;
+ opacity: 0;
+ overflow-x: hidden;
+ overflow-y: auto;
+
+}
+
+/* ----- preloader - choose between CIRCLE, IOS, DOTS, QUADS ----- */
+
+/* circle preloader */
+.vbox-preloader{
+ position:fixed;
+ width:32px;
+ height:32px;
+ left:50%;
+ top:50%;
+ margin-left:-16px;
+ margin-top:-16px;
+ background-image: url(preload-circle.png);
+ text-indent: -100px;
+ overflow: hidden;
+ -webkit-animation: playload 1.4s steps(18) infinite;
+ -moz-animation: playload 1.4s steps(18) infinite;
+ -ms-animation: playload 1.4s steps(18) infinite;
+ -o-animation: playload 1.4s steps(18) infinite;
+ animation: playload 1.4s steps(18) infinite;
+}
+@-webkit-keyframes playload {
+ from { background-position: 0px; }
+ to { background-position: -576px; }
+}
+@-moz-keyframes playload {
+ from { background-position: 0px; }
+ to { background-position: -576px; }
+}
+@-ms-keyframes playload {
+ from { background-position: 0px; }
+ to { background-position: -576px; }
+}
+@-o-keyframes playload {
+ from { background-position: 0px; }
+ to { background-position: -576px; }
+}
+@keyframes playload {
+ from { background-position: 0px; }
+ to { background-position: -576px; }
+}
+
+
+/* IOS preloader */
+
+/*.vbox-preloader{
+ position:fixed;
+ width:32px;
+ height:32px;
+ left:50%;
+ top:50%;
+ margin-left:-16px;
+ margin-top:-16px;
+ background-image: url(preload-ios.png);
+ text-indent: -100px;
+ overflow: hidden;
+ -webkit-animation: playload 1.4s steps(12) infinite;
+ -moz-animation: playload 1.4s steps(12) infinite;
+ -ms-animation: playload 1.4s steps(12) infinite;
+ -o-animation: playload 1.4s steps(12) infinite;
+ animation: playload 1.4s steps(12) infinite;
+}
+
+@-webkit-keyframes playload {
+ from { background-position: 0px; }
+ to { background-position: -384px; }
+}
+@-moz-keyframes playload {
+ from { background-position: 0px; }
+ to { background-position: -384px; }
+}
+@-ms-keyframes playload {
+ from { background-position: 0px; }
+ to { background-position: -384px; }
+}
+@-o-keyframes playload {
+ from { background-position: 0px; }
+ to { background-position: -384px; }
+}
+@keyframes playload {
+ from { background-position: 0px; }
+ to { background-position: -384px; }
+}
+*/
+
+
+/* dots preloader */
+/*
+.vbox-preloader{
+ position:fixed;
+ width:32px;
+ height:11px;
+ left:50%;
+ top:50%;
+ margin-left:-16px;
+ margin-top:-16px;
+ background-image: url(preload-dots.png);
+ text-indent: -100px;
+ overflow: hidden;
+ -webkit-animation: playload 1.4s steps(24) infinite;
+ -moz-animation: playload 1.4s steps(24) infinite;
+ -ms-animation: playload 1.4s steps(24) infinite;
+ -o-animation: playload 1.4s steps(24) infinite;
+ animation: playload 1.4s steps(24) infinite;
+}
+
+@-webkit-keyframes playload {
+ from { background-position: 0px; }
+ to { background-position: -768px; }
+}
+@-moz-keyframes playload {
+ from { background-position: 0px; }
+ to { background-position: -768px; }
+}
+@-ms-keyframes playload {
+ from { background-position: 0px; }
+ to { background-position: -768px; }
+}
+@-o-keyframes playload {
+ from { background-position: 0px; }
+ to { background-position: -768px; }
+}
+@keyframes playload {
+ from { background-position: 0px; }
+ to { background-position: -768px; }
+}
+*/
+
+
+/* quads preloader */
+/*
+.vbox-preloader{
+ position:fixed;
+ width:32px;
+ height:10px;
+ left:50%;
+ top:50%;
+ margin-left:-16px;
+ margin-top:-16px;
+ background-image: url(preload-quads.png);
+ text-indent: -100px;
+ overflow: hidden;
+ -webkit-animation: playload 1.4s steps(12) infinite;
+ -moz-animation: playload 1.4s steps(12) infinite;
+ -ms-animation: playload 1.4s steps(12) infinite;
+ -o-animation: playload 1.4s steps(12) infinite;
+ animation: playload 1.4s steps(12) infinite;
+}
+@-webkit-keyframes playload {
+ from { background-position: 0px; }
+ to { background-position: -384px; }
+}
+@-moz-keyframes playload {
+ from { background-position: 0px; }
+ to { background-position: -384px; }
+}
+@-ms-keyframes playload {
+ from { background-position: 0px; }
+ to { background-position: -384px; }
+}
+@-o-keyframes playload {
+ from { background-position: 0px; }
+ to { background-position: -384px; }
+}
+@keyframes playload {
+ from { background-position: 0px; }
+ to { background-position: -384px; }
+}
+*/
+/* ----- navigation ----- */
+.vbox-close{
+ cursor: pointer;
+ position: fixed;
+ top: -1px;
+ right: 0;
+ width: 46px;
+ height: 40px;
+ padding: 10px 20px 10px 0;
+ display: block;
+ background: url(close.gif) no-repeat #161617;
+ background-position:10px center;
+ color: #fff;
+ text-indent: -100px;
+ overflow: hidden;
+}
+.vbox-next, .vbox-prev{
+ box-sizing: content-box;
+ cursor: pointer;
+ position: fixed;
+ top: 50%;
+ color: #fff;
+ width: 30px;
+ height: 170px;
+ margin-top: -85px;
+ text-indent: -100px;
+ border: solid transparent; /* Using border instead of padding to keep bg image in place */
+ overflow: hidden;
+}
+.vbox-prev{
+ left: 0;
+ border-width: 0 30px 0 10px;
+ background: url(prev.gif) center center no-repeat;
+}
+.vbox-next{
+ right: 0;
+ border-width: 0 10px 0 30px;
+ background: url(next.gif) center center no-repeat;
+}
+
+.vbox-title{
+ width: 100%;
+ height: 40px;
+ float: left;
+ text-align: center;
+ line-height: 28px;
+ font-size: 12px;
+ color: #fff;
+ padding: 6px 40px;
+ overflow: hidden;
+ background: #161617;
+ position: fixed;
+ display: none;
+ top: -1px;
+ left: 0;
+
+}
+.vbox-num{
+ cursor: pointer;
+ position: fixed;
+ top: -1px;
+ left: 0;
+ height: 40px;
+ display: block;
+ color: #fff;
+ overflow: hidden;
+ line-height: 28px;
+ font-size: 12px;
+ padding: 6px 10px;
+ background: #161617;
+ display: none;
+}
+/* ------- inline window ------ */
+.vbox-inline{
+ width: 420px;
+ height: 315px;
+ padding: 10px;
+ background: #fff;
+ text-align: left;
+ margin: 0 auto;
+ overflow: auto;
+}
+
+/* ------- Video & iFrames window ------ */
+.venoframe{
+ border: none;
+ width: 960px;
+ height: 720px;
+}
+@media (max-width: 992px) {
+ .venoframe{
+ width: 640px;
+ height: 480px;
+ }
+}
+@media (max-width: 767px) {
+ .venoframe{
+ width: 420px;
+ height: 315px;
+ }
+}
+@media (max-width: 460px) {
+ .vbox-inline{
+ width: 100%;
+ }
+
+ .venoframe{
+ width: 100%;
+ height: 260px;
+ }
+}
+
+/* ------- PLease do NOT edit this! (or do it at your own risk) ------ */
+.vbox-open{
+ overflow: hidden;
+}
+.vbox-container{
+ position: relative;
+ background: #000;
+ width: 100%;
+ max-width: 1200px;
+ margin: 0 auto;
+ padding: 0 15px;
+}
+.vbox-content{
+ text-align: center;
+ float: left;
+ width: 100%;
+ position: relative;
+ overflow: hidden;
+}
+.vbox-container img{
+ max-width: 100%;
+ height: auto;
+}
\ No newline at end of file
diff --git a/public/static/home/venobox/venobox.js b/public/static/home/venobox/venobox.js
new file mode 100644
index 0000000..828396d
--- /dev/null
+++ b/public/static/home/venobox/venobox.js
@@ -0,0 +1,448 @@
+/*
+ * VenoBox - jQuery Plugin
+ * version: 1.6.0
+ * @requires jQuery
+ *
+ * Examples at http://lab.veno.it/venobox/
+ * License: MIT License
+ * License URI: https://github.com/nicolafranchini/VenoBox/blob/master/LICENSE
+ * Copyright 2013-2015 Nicola Franchini - @nicolafranchini
+ *
+ */
+(function($){
+
+ var autoplay, bgcolor, blocknum, blocktitle, border, core, container, content, dest,
+ evitacontent, evitanext, evitaprev, extraCss, figliall, framewidth, frameheight,
+ infinigall, items, keyNavigationDisabled, margine, numeratio, overlayColor, overlay,
+ prima, title, thisgall, thenext, theprev, type,
+ finH, sonH, nextok, prevok;
+
+ $.fn.extend({
+ //plugin name - venobox
+ venobox: function(options) {
+
+ // default option
+ var defaults = {
+ framewidth: '',
+ frameheight: '',
+ border: '0',
+ bgcolor: '#fff',
+ titleattr: 'title', // specific attribute to get a title (e.g. [data-title]) - thanx @mendezcode
+ numeratio: false,
+ infinigall: false,
+ overlayclose: true // disable overlay click-close - thanx @martybalandis
+ };
+
+ var option = $.extend(defaults, options);
+
+ return this.each(function() {
+ var obj = $(this);
+
+ // Prevent double initialization - thanx @matthistuff
+ if(obj.data('venobox')) {
+ return true;
+ }
+
+ obj.addClass('vbox-item');
+ obj.data('framewidth', option.framewidth);
+ obj.data('frameheight', option.frameheight);
+ obj.data('border', option.border);
+ obj.data('bgcolor', option.bgcolor);
+ obj.data('numeratio', option.numeratio);
+ obj.data('infinigall', option.infinigall);
+ obj.data('overlayclose', option.overlayclose);
+ obj.data('venobox', true);
+
+ obj.click(function(e){
+ e.stopPropagation();
+ e.preventDefault();
+ obj = $(this);
+ overlayColor = obj.data('overlay');
+ framewidth = obj.data('framewidth');
+ frameheight = obj.data('frameheight');
+ // set data-autoplay="true" for vimeo and youtube videos - thanx @zehfernandes
+ autoplay = obj.data('autoplay') || false;
+ border = obj.data('border');
+ bgcolor = obj.data('bgcolor');
+ nextok = false;
+ prevok = false;
+ keyNavigationDisabled = false;
+
+ // set a different url to be loaded via ajax using data-href="" - thanx @pixeline
+ dest = obj.data('href') || obj.attr('href');
+ extraCss = obj.data( 'css' ) || "";
+
+ $('body').addClass('vbox-open');
+ core = '<div class="vbox-overlay ' + extraCss + '" style="background:'+ overlayColor +'"><div class="vbox-preloader">Loading...</div><div class="vbox-container"><div class="vbox-content"></div></div><div class="vbox-title"></div><div class="vbox-num">0/0</div><div class="vbox-close">X</div><div class="vbox-next">next</div><div class="vbox-prev">prev</div></div>';
+
+ $('body').append(core);
+
+ overlay = $('.vbox-overlay');
+ container = $('.vbox-container');
+ content = $('.vbox-content');
+ blocknum = $('.vbox-num');
+ blocktitle = $('.vbox-title');
+
+ content.html('');
+ content.css('opacity', '0');
+
+ checknav();
+
+ overlay.css('min-height', $(window).outerHeight());
+
+ // fade in overlay
+ overlay.animate({opacity:1}, 250, function(){
+
+ if(obj.data('type') == 'iframe'){
+ loadIframe();
+ }else if (obj.data('type') == 'inline'){
+ loadInline();
+ }else if (obj.data('type') == 'ajax'){
+ loadAjax();
+ }else if (obj.data('type') == 'vimeo'){
+ loadVimeo(autoplay);
+ }else if (obj.data('type') == 'youtube'){
+ loadYoutube(autoplay);
+ } else {
+ content.html('<img src="'+dest+'">');
+ preloadFirst();
+ }
+ });
+
+ /* -------- CHECK NEXT / PREV -------- */
+ function checknav(){
+
+ thisgall = obj.data('gall');
+ numeratio = obj.data('numeratio');
+ infinigall = obj.data('infinigall');
+
+ items = $('.vbox-item[data-gall="' + thisgall + '"]');
+
+ if(items.length > 1 && numeratio === true){
+ blocknum.html(items.index(obj)+1 + ' / ' + items.length);
+ blocknum.show();
+ }else{
+ blocknum.hide();
+ }
+
+ thenext = items.eq( items.index(obj) + 1 );
+ theprev = items.eq( items.index(obj) - 1 );
+
+ if(obj.attr(option.titleattr)){
+ title = obj.attr(option.titleattr);
+ blocktitle.show();
+ }else{
+ title = '';
+ blocktitle.hide();
+ }
+
+ if (items.length > 1 && infinigall === true) {
+
+ nextok = true;
+ prevok = true;
+
+ if(thenext.length < 1 ){
+ thenext = items.eq(0);
+ }
+ if(items.index(obj) < 1 ){
+ theprev = items.eq( items.index(items.length) );
+ }
+
+ } else {
+
+ if(thenext.length > 0 ){
+ $('.vbox-next').css('display', 'block');
+ nextok = true;
+ }else{
+ $('.vbox-next').css('display', 'none');
+ nextok = false;
+ }
+ if(items.index(obj) > 0 ){
+ $('.vbox-prev').css('display', 'block');
+ prevok = true;
+ }else{
+ $('.vbox-prev').css('display', 'none');
+ prevok = false;
+ }
+ }
+ }
+
+ /* -------- NAVIGATION CODE -------- */
+ var gallnav = {
+
+ prev: function() {
+
+ if (keyNavigationDisabled) {
+ return;
+ } else {
+ keyNavigationDisabled = true;
+ }
+
+ overlayColor = theprev.data('overlay');
+
+ framewidth = theprev.data('framewidth');
+ frameheight = theprev.data('frameheight');
+ border = theprev.data('border');
+ bgcolor = theprev.data('bgcolor');
+ dest = theprev.data('href') || theprev.attr('href');
+
+ autoplay = theprev.data('autoplay');
+
+ if(theprev.attr(option.titleattr)){
+ title = theprev.attr(option.titleattr);
+ }else{
+ title = '';
+ }
+
+ if (overlayColor === undefined ) {
+ overlayColor = "";
+ }
+
+ content.animate({ opacity:0}, 500, function(){
+
+ overlay.css('background',overlayColor);
+
+ if (theprev.data('type') == 'iframe') {
+ loadIframe();
+ } else if (theprev.data('type') == 'inline'){
+ loadInline();
+ } else if (theprev.data('type') == 'ajax'){
+ loadAjax();
+ } else if (theprev.data('type') == 'youtube'){
+ loadYoutube(autoplay);
+ } else if (theprev.data('type') == 'vimeo'){
+ loadVimeo(autoplay);
+ }else{
+ content.html('<img src="'+dest+'">');
+ preloadFirst();
+ }
+ obj = theprev;
+ checknav();
+ keyNavigationDisabled = false;
+ });
+
+ },
+
+ next: function() {
+
+ if (keyNavigationDisabled) {
+ return;
+ } else {
+ keyNavigationDisabled = true;
+ }
+
+ overlayColor = thenext.data('overlay');
+
+ framewidth = thenext.data('framewidth');
+ frameheight = thenext.data('frameheight');
+ border = thenext.data('border');
+ bgcolor = thenext.data('bgcolor');
+ dest = thenext.data('href') || thenext.attr('href');
+ autoplay = thenext.data('autoplay');
+
+ if(thenext.attr(option.titleattr)){
+ title = thenext.attr(option.titleattr);
+ }else{
+ title = '';
+ }
+
+ if (overlayColor === undefined ) {
+ overlayColor = "";
+ }
+
+ content.animate({ opacity:0}, 500, function(){
+
+ overlay.css('background',overlayColor);
+
+ if (thenext.data('type') == 'iframe') {
+ loadIframe();
+ } else if (thenext.data('type') == 'inline'){
+ loadInline();
+ } else if (thenext.data('type') == 'ajax'){
+ loadAjax();
+ } else if (thenext.data('type') == 'youtube'){
+ loadYoutube(autoplay);
+ } else if (thenext.data('type') == 'vimeo'){
+ loadVimeo(autoplay);
+ }else{
+ content.html('<img src="'+dest+'">');
+ preloadFirst();
+ }
+ obj = thenext;
+ checknav();
+ keyNavigationDisabled = false;
+ });
+
+ }
+
+ };
+
+ /* -------- NAVIGATE WITH ARROW KEYS -------- */
+ $('body').keydown(function(e) {
+
+ if(e.keyCode == 37 && prevok == true) { // left
+ gallnav.prev();
+ }
+
+ if(e.keyCode == 39 && nextok == true) { // right
+ gallnav.next();
+ }
+
+ });
+
+ /* -------- PREVGALL -------- */
+ $('.vbox-prev').click(function(){
+ gallnav.prev();
+ });
+
+ /* -------- NEXTGALL -------- */
+ $('.vbox-next').click(function(){
+ gallnav.next();
+ });
+
+ /* -------- ESCAPE HANDLER -------- */
+ function escapeHandler(e) {
+ if(e.keyCode === 27) {
+ closeVbox();
+ }
+ }
+
+ /* -------- CLOSE VBOX -------- */
+
+ function closeVbox(){
+
+ $('body').removeClass('vbox-open');
+ $('body').unbind('keydown', escapeHandler);
+
+ overlay.animate({opacity:0}, 500, function(){
+ overlay.remove();
+ keyNavigationDisabled = false;
+ obj.focus();
+ });
+ }
+
+ /* -------- CLOSE CLICK -------- */
+ var closeclickclass = '.vbox-close, .vbox-overlay';
+ if(!obj.data('overlayclose')){
+ closeclickclass = '.vbox-close'; // close only on X
+ }
+
+ $(closeclickclass).click(function(e){
+ evitacontent = '.figlio';
+ evitaprev = '.vbox-prev';
+ evitanext = '.vbox-next';
+ figliall = '.figlio *';
+ if(!$(e.target).is(evitacontent) && !$(e.target).is(evitanext) && !$(e.target).is(evitaprev)&& !$(e.target).is(figliall)){
+ closeVbox();
+ }
+ });
+ $('body').keydown(escapeHandler);
+ return false;
+ });
+ });
+ }
+ });
+
+ /* -------- LOAD AJAX -------- */
+ function loadAjax(){
+ $.ajax({
+ url: dest,
+ cache: false
+ }).done(function( msg ) {
+ content.html('<div class="vbox-inline">'+ msg +'</div>');
+ updateoverlay(true);
+
+ }).fail(function() {
+ content.html('<div class="vbox-inline"><p>Error retrieving contents, please retry</div>');
+ updateoverlay(true);
+ })
+ }
+
+ /* -------- LOAD IFRAME -------- */
+ function loadIframe(){
+ content.html('<iframe class="venoframe" src="'+dest+'"></iframe>');
+ // $('.venoframe').load(function(){ // valid only for iFrames in same domain
+ updateoverlay();
+ // });
+ }
+
+ /* -------- LOAD VIMEO -------- */
+ function loadVimeo(autoplay){
+ var pezzi = dest.split('/');
+ var videoid = pezzi[pezzi.length-1];
+ var stringAutoplay = autoplay ? "?autoplay=1" : "";
+ content.html('<iframe class="venoframe" webkitallowfullscreen mozallowfullscreen allowfullscreen frameborder="0" src="//player.vimeo.com/video/'+videoid+stringAutoplay+'"></iframe>');
+ updateoverlay();
+ }
+
+ /* -------- LOAD YOUTUBE -------- */
+ function loadYoutube(autoplay){
+ var pezzi = dest.split('/');
+ var videoid = pezzi[pezzi.length-1];
+ var stringAutoplay = autoplay ? "?autoplay=1" : "";
+ content.html('<iframe class="venoframe" webkitallowfullscreen mozallowfullscreen allowfullscreen src="//www.youtube.com/embed/'+videoid+stringAutoplay+'"></iframe>');
+ updateoverlay();
+ }
+
+ /* -------- LOAD INLINE -------- */
+ function loadInline(){
+ content.html('<div class="vbox-inline">'+$(dest).html()+'</div>');
+ updateoverlay();
+ }
+
+ /* -------- PRELOAD IMAGE -------- */
+ function preloadFirst(){
+ prima = $('.vbox-content').find('img');
+ prima.one('load', function() {
+ updateoverlay();
+ }).each(function() {
+ if(this.complete) $(this).load();
+ });
+ }
+
+ /* -------- CENTER ON LOAD -------- */
+ function updateoverlay(){
+
+ blocktitle.html(title);
+ content.find(">:first-child").addClass('figlio');
+ $('.figlio').css('width', framewidth).css('height', frameheight).css('padding', border).css('background', bgcolor);
+
+ sonH = content.outerHeight();
+ finH = $(window).height();
+
+ if(sonH+80 < finH){
+ margine = (finH - sonH)/2;
+ content.css('margin-top', margine);
+ content.css('margin-bottom', margine);
+
+ }else{
+ content.css('margin-top', '40px');
+ content.css('margin-bottom', '40px');
+ }
+ content.animate({
+ 'opacity': '1'
+ },'slow');
+ }
+
+ /* -------- CENTER ON RESIZE -------- */
+ function updateoverlayresize(){
+ if($('.vbox-content').length){
+ sonH = content.height();
+ finH = $(window).height();
+
+ if(sonH+80 < finH){
+ margine = (finH - sonH)/2;
+ content.css('margin-top', margine);
+ content.css('margin-bottom', margine);
+ }else{
+ content.css('margin-top', '40px');
+ content.css('margin-bottom', '40px');
+ }
+ }
+ }
+
+ $(window).resize(function(){
+ updateoverlayresize();
+ });
+
+})(jQuery);
\ No newline at end of file
diff --git a/public/static/home/venobox/venobox.min.js b/public/static/home/venobox/venobox.min.js
new file mode 100644
index 0000000..93f4c57
--- /dev/null
+++ b/public/static/home/venobox/venobox.min.js
@@ -0,0 +1,12 @@
+/*
+ * VenoBox - jQuery Plugin
+ * version: 1.8.2
+ * @requires jQuery >= 1.7.0
+ *
+ * Examples at http://veno.es/venobox/
+ * License: MIT License
+ * License URI: https://github.com/nicolafranchini/VenoBox/blob/master/LICENSE
+ * Copyright 2013-2017 Nicola Franchini - @nicolafranchini
+ *
+ */
+!function(e){"use strict";var o,t,a,i,s,n,c,r,d,l,v,u,b,p,m,f,h,g,k,x,y,w,C,_,P,B,E,O,U,D,M,N,V,z,R,X,Y,j,W,q;e.fn.extend({venobox:function($){var I=this,A={arrowsColor:"#B6B6B6",autoplay:!1,bgcolor:"#fff",border:"0",closeBackground:"#161617",closeColor:"#d2d2d2",framewidth:"",frameheight:"",infinigall:!1,htmlClose:"×",htmlNext:"<span>Next</span>",htmlPrev:"<span>Prev</span>",numeratio:!1,numerationBackground:"#161617",numerationColor:"#d2d2d2",numerationPosition:"top",overlayClose:!0,overlayColor:"rgba(23,23,23,0.85)",spinner:"double-bounce",spinColor:"#d2d2d2",titleattr:"title",titleBackground:"#161617",titleColor:"#d2d2d2",titlePosition:"top",cb_pre_open:function(){return!0},cb_post_open:function(){},cb_pre_close:function(){return!0},cb_post_close:function(){},cb_post_resize:function(){},cb_after_nav:function(){},cb_init:function(){}},H=e.extend(A,$);return H.cb_init(I),this.each(function(){function $(){y=O.data("gall"),h=O.data("numeratio"),b=O.data("infinigall"),p=e('.vbox-item[data-gall="'+y+'"]'),w=p.eq(p.index(O)+1),C=p.eq(p.index(O)-1),w.length||b!==!0||(w=p.eq(0)),p.length>1?(U=p.index(O)+1,a.html(U+" / "+p.length)):U=1,h===!0?a.show():a.hide(),""!==x?i.show():i.hide(),w.length||b===!0?(e(".vbox-next").css("display","block"),_=!0):(e(".vbox-next").css("display","none"),_=!1),p.index(O)>0||b===!0?(e(".vbox-prev").css("display","block"),P=!0):(e(".vbox-prev").css("display","none"),P=!1),(P===!0||_===!0)&&(r.on(ne.DOWN,T),r.on(ne.MOVE,Z),r.on(ne.UP,F))}function A(e){return e.length<1?!1:m?!1:(m=!0,g=e.data("overlay")||e.data("overlaycolor"),v=e.data("framewidth"),u=e.data("frameheight"),s=e.data("border"),t=e.data("bgcolor"),d=e.data("href")||e.attr("href"),o=e.data("autoplay"),x=e.attr(e.data("titleattr"))||"",e===C&&r.addClass("animated").addClass("swipe-right"),e===w&&r.addClass("animated").addClass("swipe-left"),void r.animate({opacity:0},500,function(){k.css("background",g),r.removeClass("animated").removeClass("swipe-left").removeClass("swipe-right").css({"margin-left":0,"margin-right":0}),"iframe"==e.data("vbtype")?J():"inline"==e.data("vbtype")?oe():"ajax"==e.data("vbtype")?G():"video"==e.data("vbtype")||"vimeo"==e.data("vbtype")||"youtube"==e.data("vbtype")?K(o):(r.html('<img src="'+d+'">'),te()),O=e,$(),m=!1,H.cb_after_nav(O,U,w,C)}))}function Q(e){27===e.keyCode&&S(),37==e.keyCode&&P===!0&&A(C),39==e.keyCode&&_===!0&&A(w)}function S(){var o=H.cb_pre_close(O,U,w,C);return o===!1?!1:(e("body").off("keydown",Q).removeClass("vbox-open"),O.focus(),void k.animate({opacity:0},500,function(){k.remove(),m=!1,H.cb_post_close()}))}function T(e){r.addClass("animated"),V=R=e.pageY,z=X=e.pageX,D=!0}function Z(e){if(D===!0){X=e.pageX,R=e.pageY,j=X-z,W=R-V;var o=Math.abs(j),t=Math.abs(W);o>t&&100>=o&&(e.preventDefault(),r.css("margin-left",j))}}function F(e){if(D===!0){D=!1;var o=O,t=!1;Y=X-z,0>Y&&_===!0&&(o=w,t=!0),Y>0&&P===!0&&(o=C,t=!0),Math.abs(Y)>=q&&t===!0?A(o):r.css({"margin-left":0,"margin-right":0})}}function G(){e.ajax({url:d,cache:!1}).done(function(e){r.html('<div class="vbox-inline">'+e+"</div>"),te()}).fail(function(){r.html('<div class="vbox-inline"><p>Error retrieving contents, please retry</div>'),ae()})}function J(){r.html('<iframe class="venoframe" src="'+d+'"></iframe>'),ae()}function K(e){var o,t=L(d),a=e?"?rel=0&autoplay=1":"?rel=0",i=a+ee(d);"vimeo"==t.type?o="https://player.vimeo.com/video/":"youtube"==t.type&&(o="https://www.youtube.com/embed/"),r.html('<iframe class="venoframe vbvid" webkitallowfullscreen mozallowfullscreen allowfullscreen frameborder="0" src="'+o+t.id+i+'"></iframe>'),ae()}function L(e){if(e.match(/(http:|https:|)\/\/(player.|www.)?(vimeo\.com|youtu(be\.com|\.be|be\.googleapis\.com))\/(video\/|embed\/|watch\?v=|v\/)?([A-Za-z0-9._%-]*)(\&\S+)?/),RegExp.$3.indexOf("youtu")>-1)var o="youtube";else if(RegExp.$3.indexOf("vimeo")>-1)var o="vimeo";return{type:o,id:RegExp.$6}}function ee(e){var o="",t=decodeURIComponent(e),a=t.split("?");if(void 0!==a[1]){var i,s,n=a[1].split("&");for(s=0;s<n.length;s++)i=n[s].split("="),o=o+"&"+i[0]+"="+i[1]}return encodeURI(o)}function oe(){r.html('<div class="vbox-inline">'+e(d).html()+"</div>"),ae()}function te(){N=r.find("img"),N.length?N.each(function(){e(this).one("load",function(){ae()})}):ae()}function ae(){i.html(x),r.find(">:first-child").addClass("figlio").css({width:v,height:u,padding:s,background:t}),e("img.figlio").on("dragstart",function(e){e.preventDefault()}),ie(),r.animate({opacity:"1"},"slow",function(){})}function ie(){var o=r.outerHeight(),t=e(window).height();f=t>o+60?(t-o)/2:"30px",r.css("margin-top",f),r.css("margin-bottom",f),H.cb_post_resize()}if(O=e(this),O.data("venobox"))return!0;I.VBclose=function(){S()},O.addClass("vbox-item"),O.data("framewidth",H.framewidth),O.data("frameheight",H.frameheight),O.data("border",H.border),O.data("bgcolor",H.bgcolor),O.data("numeratio",H.numeratio),O.data("infinigall",H.infinigall),O.data("overlaycolor",H.overlayColor),O.data("titleattr",H.titleattr),O.data("venobox",!0),O.on("click",function(b){b.preventDefault(),O=e(this);var p=H.cb_pre_open(O);if(p===!1)return!1;switch(I.VBnext=function(){A(w)},I.VBprev=function(){A(C)},g=O.data("overlay")||O.data("overlaycolor"),v=O.data("framewidth"),u=O.data("frameheight"),o=O.data("autoplay")||H.autoplay,s=O.data("border"),t=O.data("bgcolor"),_=!1,P=!1,m=!1,d=O.data("href")||O.attr("href"),l=O.data("css")||"",x=O.attr(O.data("titleattr"))||"",B='<div class="vbox-preloader">',H.spinner){case"rotating-plane":B+='<div class="sk-rotating-plane"></div>';break;case"double-bounce":B+='<div class="sk-double-bounce"><div class="sk-child sk-double-bounce1"></div><div class="sk-child sk-double-bounce2"></div></div>';break;case"wave":B+='<div class="sk-wave"><div class="sk-rect sk-rect1"></div><div class="sk-rect sk-rect2"></div><div class="sk-rect sk-rect3"></div><div class="sk-rect sk-rect4"></div><div class="sk-rect sk-rect5"></div></div>';break;case"wandering-cubes":B+='<div class="sk-wandering-cubes"><div class="sk-cube sk-cube1"></div><div class="sk-cube sk-cube2"></div></div>';break;case"spinner-pulse":B+='<div class="sk-spinner sk-spinner-pulse"></div>';break;case"three-bounce":B+='<div class="sk-three-bounce"><div class="sk-child sk-bounce1"></div><div class="sk-child sk-bounce2"></div><div class="sk-child sk-bounce3"></div></div>';break;case"cube-grid":B+='<div class="sk-cube-grid"><div class="sk-cube sk-cube1"></div><div class="sk-cube sk-cube2"></div><div class="sk-cube sk-cube3"></div><div class="sk-cube sk-cube4"></div><div class="sk-cube sk-cube5"></div><div class="sk-cube sk-cube6"></div><div class="sk-cube sk-cube7"></div><div class="sk-cube sk-cube8"></div><div class="sk-cube sk-cube9"></div></div>'}return B+="</div>",E='<a class="vbox-next">'+H.htmlNext+'</a><a class="vbox-prev">'+H.htmlPrev+"</a>",M='<div class="vbox-title"></div><div class="vbox-num">0/0</div><div class="vbox-close">'+H.htmlClose+"</div>",n='<div class="vbox-overlay '+l+'" style="background:'+g+'">'+B+'<div class="vbox-container"><div class="vbox-content"></div></div>'+M+E+"</div>",e("body").append(n).addClass("vbox-open"),e(".vbox-preloader .sk-child, .vbox-preloader .sk-rotating-plane, .vbox-preloader .sk-rect, .vbox-preloader .sk-cube, .vbox-preloader .sk-spinner-pulse").css("background-color",H.spinColor),k=e(".vbox-overlay"),c=e(".vbox-container"),r=e(".vbox-content"),a=e(".vbox-num"),i=e(".vbox-title"),i.css(H.titlePosition,"-1px"),i.css({color:H.titleColor,"background-color":H.titleBackground}),e(".vbox-close").css({color:H.closeColor,"background-color":H.closeBackground}),e(".vbox-num").css(H.numerationPosition,"-1px"),e(".vbox-num").css({color:H.numerationColor,"background-color":H.numerationBackground}),e(".vbox-next span, .vbox-prev span").css({"border-top-color":H.arrowsColor,"border-right-color":H.arrowsColor}),r.html(""),r.css("opacity","0"),k.css("opacity","0"),$(),k.animate({opacity:1},250,function(){"iframe"==O.data("vbtype")?J():"inline"==O.data("vbtype")?oe():"ajax"==O.data("vbtype")?G():"video"==O.data("vbtype")||"vimeo"==O.data("vbtype")||"youtube"==O.data("vbtype")?K(o):(r.html('<img src="'+d+'">'),te()),H.cb_post_open(O,U,w,C)}),e("body").keydown(Q),e(".vbox-prev").on("click",function(){A(C)}),e(".vbox-next").on("click",function(){A(w)}),!1});var se=".vbox-overlay";H.overlayClose||(se=".vbox-close"),e(document).on("click",se,function(o){(e(o.target).is(".vbox-overlay")||e(o.target).is(".vbox-content")||e(o.target).is(".vbox-close")||e(o.target).is(".vbox-preloader"))&&S()}),z=0,X=0,Y=0,q=50,D=!1;var ne={DOWN:"touchmousedown",UP:"touchmouseup",MOVE:"touchmousemove"},ce=function(o){var t;switch(o.type){case"mousedown":t=ne.DOWN;break;case"mouseup":t=ne.UP;break;case"mouseout":t=ne.UP;break;case"mousemove":t=ne.MOVE;break;default:return}var a=de(t,o,o.pageX,o.pageY);e(o.target).trigger(a)},re=function(o){var t;switch(o.type){case"touchstart":t=ne.DOWN;break;case"touchend":t=ne.UP;break;case"touchmove":t=ne.MOVE;break;default:return}var a,i=o.originalEvent.touches[0];a=t==ne.UP?de(t,o,null,null):de(t,o,i.pageX,i.pageY),e(o.target).trigger(a)},de=function(o,t,a,i){return e.Event(o,{pageX:a,pageY:i,originalEvent:t})};"ontouchstart"in window?(e(document).on("touchstart",re),e(document).on("touchmove",re),e(document).on("touchend",re)):(e(document).on("mousedown",ce),e(document).on("mouseup",ce),e(document).on("mouseout",ce),e(document).on("mousemove",ce)),e(window).resize(function(){e(".vbox-content").length&&setTimeout(ie(),800)})})}})}(jQuery);
\ No newline at end of file
diff --git a/public/static/js/language/language.js b/public/static/js/language/language.js
index cb501a3..832617c 100644
--- a/public/static/js/language/language.js
+++ b/public/static/js/language/language.js
@@ -1,47 +1,68 @@
-var languages = {
+const messages = {
'zh-cn': {
- 'supplier_info_title': '供应商信息',
- 'to_do_items': '待办事项',
- 'add': '添加',
- 'account_management': "账号管理",
- 'search': "搜索",
- 'supplier_management': "供应商管理",
- 'home_page': '首页',
- 'sign_out':"退出",
+ message: {
+ common: {
+ 'contactUs': '联系我们',
+ 'aboutUs': '关于我们',
+ },
+ header: {
+ 'home': '首页',
+ 'about': '关于',
+ 'service': '服务',
+ 'blog': '推文',
+ 'partners': '合作伙伴',
+ 'contact': '联系我们',
+ },
+ home: {
+ 'text-1': "中国汉制造·南非共享",
+ 'text-2': "青年创业孵化营",
+ 'text-3': "产业带推广服务",
+ 'text-4': "全链路推广,让南非消费者深度感知中国制造优势",
+ 'text-5': "24/7 品牌直播推广服务",
+ 'text-6': "双语团队在南非平台全天直播带货",
+ 'text-7': "产教融合服务",
+ 'text-8': "联动院校培养跨境电商人才,填补人才供需缺口",
+ 'text-9': '搭建中国优质产品与南非市场的桥梁 —— ',
+ 'text-10': '我们的业务',
+ 'text-11': 'C Park 南非跨境电商产业园,依托股东武汉金融控股集团(注册资本 210 亿元人民币)及长江国际贸易集团(注册资本 8 亿元人民币),计划开拓南非消费市场。以下是预估的市场数据:',
+ 'text-12': '产业带合作 10+ 条中国产业带',
+ 'text-13': '合作工厂 100+ 家',
+ 'text-14': '青少年孵化 1000+ 名青少年',
+
+ }
+ }
},
'en-us': {
- 'supplier_info_title': 'Supplier info',
- 'to_do_items': 'To do items',
- 'add': 'Add',
- 'account_management': "Account management",
- 'search': "Search",
- 'supplier_management': "Supplier management",
- 'home_page': 'Home page',
- 'sign_out':"Sign Out",
- },
-};
-
-/////切换语言/////
-function switchLanguage(lang) {
- switch_Lang(lang)
- let url = "/supplier/login/setlang.html"
- postRequest(url, { lang: lang }).then(res => {
- if (res.data.code == 200) {
- document.location.reload();
+ message: {
+ common: {
+ 'contactUs': 'Contact Us',
+ 'aboutUs': 'About Us',
+ },
+ header: {
+ 'home': 'Home',
+ 'about': 'About',
+ 'service': 'Service',
+ 'blog': 'Blog',
+ 'partners': 'Partners',
+ 'contact': 'Contact',
+ },
+ home: {
+ 'text-1': "Made In China,Used In SA",
+ 'text-2': "Youth Startup Incubation",
+ 'text-3': "Comprehensive promotion",
+ 'text-4': "connects Chinese manufacturing strengths with South African consumers",
+ 'text-5': "24/7 Brand Live Streaming",
+ 'text-6': "Bilingual teams run round - the - clock live sales on SA platforms",
+ 'text-7': "Industry - Education ",
+ 'text-8': "Integration Collaborate with schools to train cross - border e - commerce talents, bridging talent supply - demand gaps",
+ 'text-9': "We Connect Chinese Quality to South Africa's Market - ",
+ 'text-10': "What We Do",
+ 'text-11': 'C Park South Africa Cross - border E-commerce Industrial Park, backed by its shareholders, Wuhan Financial Holdings Group (with a registered capital of 21 billion yuan) and Changjiang International Trade Group (with a registered capital of 8 billion yuan), plans to explore the South African consumer market. Here are the projected market figures:',
+ 'text-12': 'Industrial Belt Cooperation 10+ Chinese industrial belts',
+ 'text-13': 'Cooperative Factories 100+',
+ 'text-14': 'Youth Incubation 1000+ youths',
+ }
}
- });
+ }
}
-
-function switch_Lang(lang) {
- $('[data-i18n]').each(function () {
- var key = $(this).data('i18n');
- $(this).text(languages[lang][key]);
- });
-
-}
-
-$(function () {
- var languageType = $("#languageType").val();
- switch_Lang(languageType);
-});
diff --git a/public/static/vue/mixin.js b/public/static/vue/mixin.js
index 2a311c5..220d187 100644
--- a/public/static/vue/mixin.js
+++ b/public/static/vue/mixin.js
@@ -1,251 +1,40 @@
-var menu_index = $('#menu_index').val();
+const { createI18n, useI18n } = VueI18n;
+// 通过选项创建 VueI18n 实例
+const i18n = createI18n({
+ locale: localStorage.getItem('changjiang-park-lang') || 'zh-cn',
+ messages,
+ fallbackLocale: 'zh-cn',
+ legacy: false,
+})
const sharedMixin = {
data() {
return {
- menu_index: '',
- side_menu_collapse: false,
- default_aside_width: "250px",
- el_aside_width: "340px",
- side_menu_show_type: 1,/////左侧菜单收放状态,1=展开,2=收缩
- breadcrumbList: [],
- menuList: [],///菜单列表
- url: '',
- lastColumn: 100,
- currentLang: localStorage.getItem('lang') || 'zh-cn',
- langPag: {},// 存储加载后的语言包
languageList: [
{ id: 1, name_loc: '简体中文', symbol: 'zh-cn' },
{ id: 2, name_loc: 'English', symbol: 'en-us' },
- { id: 3, name_loc: 'ar', symbol: 'ar' },
+ // { id: 3, name_loc: 'ar', symbol: 'ar' },
],
+ currentLang: '',
+ i18n: i18n.global, // 引入i18n实例
}
},
+
+ // 生命周期 - 创建完成(可以访问当前this实例)
mounted() {
- setTimeout(() => {
- this.observeLastColumnWidth();
- }, 100);
- this.getLanguage();
- if (this.currentLang == 'en-us') {
- this.el_aside_width = this.default_aside_width = "340px"
- }
- else if (this.currentLang == 'zh-cn') {
- this.el_aside_width = this.default_aside_width = "250px";
- }
- else {
- this.el_aside_width = this.default_aside_width = "300px";
- }
},
+
+ // 创建生命周期
created() {
- this.getMenu();
- this.changeLang(this.currentLang, false);
+ this.currentLang = this.i18n.locale || 'zh-cn';
},
+
+ // 方法
methods: {
- getLanguage() {
- const that = this;
- const url = "/supplier/login/getLanguage.html";
- postRequest(url, {}).then((res) => {
- if (res.data.code === 200) {
- this.languageList = res.data.list
- }
- }).catch((error) => {
-
- });
- },
- // 异步加载语言包的方法
- async loadLanguage(lang, ifreload) {
- try {
- localStorage.setItem('lang', lang);//设置默认语言
- const response = await fetch(`/static/lang/1/${lang}.json`);
- this.langPag = await response.json();
- this.setLanguage(lang, ifreload);
- } catch (error) {
- // 回退到中文
- const zhResponse = await fetch('/static/lang/1/zh-cn.json');
- this.langPag = await zhResponse.json();
- }
- },
- // 切换语言
- async changeLang(lang, ifreload) {
- if (!['zh-cn', 'en-us', 'ar'].includes(lang)) {
- lang = 'zh-cn';
- }
- this.currentLang = lang;
- await this.loadLanguage(lang, ifreload);
-
- },
- // 翻译方法
- t(key, value = '') {
- if (value == '') {
- value = key
- }
- return key.split('.').reduce((obj, k) => obj?.[k], this.langPag) || value;
- },
- setLanguage(lang, ifreload) {
- let url = "/supplier/login/setlang.html"
- postRequest(url, { lang: lang }).then(res => {
- if (res.data.code == 200) {
- if (ifreload) {
- window.location.reload();
- }
- }
- });
- },
- /**
- * 高级替换函数
- * @param {string} original - 原始文本
- * @param {string|RegExp} search - 要查找的内容或正则表达式
- * @param {string|function} replacement - 替换内容或替换函数
- * @param {boolean} caseSensitive - 是否区分大小写
- * @returns {string} 替换后的文本
- */
- replaceStr(original, search, replacement, caseSensitive = true) {
- if (!original || !search) return original;
-
- const flags = caseSensitive ? 'g' : 'gi';
- const regex = typeof search === 'string'
- ? new RegExp(search, flags)
- : search;
-
- return original.replace(regex, replacement);
- },
-
- sharedMethod() {
- // 共享的方法逻辑
- },
-
- /////切换语言/////
- switchLanguage(type) {
- /////提交保存到数据库默认语言类型/////
-
- /////切换语言//////
- window.switchLanguage(type);
- },
-
- /////左侧菜单跳转/////
- goto_menu(url) {
- window.location.href = url;
- },
-
- /////左侧菜单收放状态
- show_side_menu() {
- if (this.side_menu_show_type == 1) {
- /////设置为收缩状态/////
- this.el_aside_width = "auto";
- this.side_menu_show_type = 2;
- this.side_menu_collapse = true;
- } else {
- /////设置为展开状态/////
- this.el_aside_width = this.default_aside_width;
- this.side_menu_show_type = 1;
- this.side_menu_collapse = false;
- }
- },
- getMenu() {
- let that = this;
- let url = "/supplier/index/getMenu.html"
- console.log(menu_index)
- postRequest(url, { menuindex: menu_index }).then(res => {
- if (res.data.code == 200) {
- that.menuList = res.data.data;
- that.menu_index = menu_index
- this.url = new URL(window.location.href)
- let menus = this.getMenus(that.menuList)
- let home = [{ title: that.menuList[0].title, menu_url: '/supplier/index/index.html' }]
- if (menus !== undefined) {
- if (this.url.pathname !== '/supplier/index/index.html' && this.url.href !== '/supplier/index/index.html') {
- menus = home.concat(menus)
- }
- } else {
- menus = home
- }
- this.breadcrumbList = menus
- }
- });
- },
- getMenus(menuList, arr, z) {
- arr = arr || []
- z = z || 0
- for (let i = 0; i < menuList.length; i++) {
- let item = menuList[i]
- arr[z] = item
-
- if (menuList[i].menu_url != null && menuList[i].menu_url != '') {
- if (this.url.pathname === menuList[i].menu_url || this.url.pathname.includes(menuList[i].menu_url.slice(0, -5))) {
- return arr.slice(0, z + 1)
- }
- }
-
- if (menuList[i].children && menuList[i].children.length) {
- let res = this.getMenus(menuList[i].children, arr, z + 1)
- if (res) {
- return res
- }
- }
- }
- },
- curentTime() {
- var now = new Date();
- var year = now.getFullYear(); // 年
- var month = now.getMonth() + 1; // 月
- var day = now.getDate(); // 日
- var hh = now.getHours(); // 时
- var mm = now.getMinutes(); // 分
- var ss = now.getSeconds(); // 秒
- var clock = year + "-";
-
- if (month < 10)
- clock += "0";
- clock += month + "-";
- if (day < 10)
- clock += "0";
- clock += day + " ";
- if (hh < 10)
- clock += "0";
- clock += hh + ":";
- if (mm < 10)
- clock += "0";
- clock += mm + ":";
- if (ss < 10)
- clock += "0";
- clock += ss;
- return clock;
- },
- //获取表格中最后一列的宽度
- observeLastColumnWidth() {
- // 获取表格的 DOM 元素
- if (typeof this.$refs.tableRef == 'undefined') {
- return false;
- }
- try {
- const tableHeader = this.$refs.tableRef.$el.querySelector('.el-table__header-wrapper').querySelector('colgroup');
- if (tableHeader) {
- // 获取最后一列的 DOM 元素
- const lastColumn = tableHeader.querySelector('col:last-child');
- if (lastColumn) {
- // 创建 ResizeObserver 实例
- const observer = new ResizeObserver((entries) => {
- for (const entry of entries) {
- const columnWidth = entry.contentRect.width; // 获取列宽
- this.lastColumn = columnWidth;
- }
- });
- // 监听最后一列的宽度变化
- observer.observe(lastColumn);
- }
- }
- }
- catch (error) {
- return false;
- }
-
- },
- //设置最后一列的对齐方式
- alignValue(width) {
- if (this.lastColumn > width) {
- return 'left';
- } else {
- return 'center';
- }
+ ///// 切换语言 /////
+ changeLanguage(newLang) {
+ this.i18n.locale = newLang;
+ this.i18n.currentLocale = newLang;
+ localStorage.setItem('changjiang-park-lang', newLang);
},
}
}
\ No newline at end of file
diff --git a/public/static/vue/vue-i18n.global.js b/public/static/vue/vue-i18n.global.js
new file mode 100644
index 0000000..86e2b91
--- /dev/null
+++ b/public/static/vue/vue-i18n.global.js
@@ -0,0 +1,6197 @@
+/*!
+ * vue-i18n v11.1.11
+ * (c) 2025 kazuya kawaguchi
+ * Released under the MIT License.
+ */
+var VueI18n = (function (exports, vue) {
+ 'use strict';
+
+ function warn(msg, err) {
+ if (typeof console !== 'undefined') {
+ console.warn(`[intlify] ` + msg);
+ /* istanbul ignore if */
+ if (err) {
+ console.warn(err.stack);
+ }
+ }
+ }
+ const hasWarned = {};
+ function warnOnce(msg) {
+ if (!hasWarned[msg]) {
+ hasWarned[msg] = true;
+ warn(msg);
+ }
+ }
+
+ /**
+ * Original Utilities
+ * written by kazuya kawaguchi
+ */
+ const inBrowser = typeof window !== 'undefined';
+ let mark;
+ let measure;
+ {
+ const perf = inBrowser && window.performance;
+ if (perf &&
+ perf.mark &&
+ perf.measure &&
+ perf.clearMarks &&
+ // @ts-ignore browser compat
+ perf.clearMeasures) {
+ mark = (tag) => {
+ perf.mark(tag);
+ };
+ measure = (name, startTag, endTag) => {
+ perf.measure(name, startTag, endTag);
+ perf.clearMarks(startTag);
+ perf.clearMarks(endTag);
+ };
+ }
+ }
+ const RE_ARGS = /\{([0-9a-zA-Z]+)\}/g;
+ /* eslint-disable */
+ function format$1(message, ...args) {
+ if (args.length === 1 && isObject(args[0])) {
+ args = args[0];
+ }
+ if (!args || !args.hasOwnProperty) {
+ args = {};
+ }
+ return message.replace(RE_ARGS, (match, identifier) => {
+ return args.hasOwnProperty(identifier) ? args[identifier] : '';
+ });
+ }
+ const makeSymbol = (name, shareable = false) => !shareable ? Symbol(name) : Symbol.for(name);
+ const generateFormatCacheKey = (locale, key, source) => friendlyJSONstringify({ l: locale, k: key, s: source });
+ const friendlyJSONstringify = (json) => JSON.stringify(json)
+ .replace(/\u2028/g, '\\u2028')
+ .replace(/\u2029/g, '\\u2029')
+ .replace(/\u0027/g, '\\u0027');
+ const isNumber = (val) => typeof val === 'number' && isFinite(val);
+ const isDate = (val) => toTypeString(val) === '[object Date]';
+ const isRegExp = (val) => toTypeString(val) === '[object RegExp]';
+ const isEmptyObject = (val) => isPlainObject(val) && Object.keys(val).length === 0;
+ const assign = Object.assign;
+ const _create = Object.create;
+ const create = (obj = null) => _create(obj);
+ let _globalThis;
+ const getGlobalThis = () => {
+ // prettier-ignore
+ return (_globalThis ||
+ (_globalThis =
+ typeof globalThis !== 'undefined'
+ ? globalThis
+ : typeof self !== 'undefined'
+ ? self
+ : typeof window !== 'undefined'
+ ? window
+ : typeof global !== 'undefined'
+ ? global
+ : create()));
+ };
+ function escapeHtml(rawText) {
+ return rawText
+ .replace(/&/g, '&') // escape `&` first to avoid double escaping
+ .replace(/</g, '<')
+ .replace(/>/g, '>')
+ .replace(/"/g, '"')
+ .replace(/'/g, ''')
+ .replace(/\//g, '/') // escape `/` to prevent closing tags or JavaScript URLs
+ .replace(/=/g, '='); // escape `=` to prevent attribute injection
+ }
+ function escapeAttributeValue(value) {
+ return value
+ .replace(/&(?![a-zA-Z0-9#]{2,6};)/g, '&') // escape unescaped `&`
+ .replace(/"/g, '"')
+ .replace(/'/g, ''')
+ .replace(/</g, '<')
+ .replace(/>/g, '>');
+ }
+ function sanitizeTranslatedHtml(html) {
+ // Escape dangerous characters in attribute values
+ // Process attributes with double quotes
+ html = html.replace(/(\w+)\s*=\s*"([^"]*)"/g, (_, attrName, attrValue) => `${attrName}="${escapeAttributeValue(attrValue)}"`);
+ // Process attributes with single quotes
+ html = html.replace(/(\w+)\s*=\s*'([^']*)'/g, (_, attrName, attrValue) => `${attrName}='${escapeAttributeValue(attrValue)}'`);
+ // Detect and neutralize event handler attributes
+ const eventHandlerPattern = /\s*on\w+\s*=\s*["']?[^"'>]+["']?/gi;
+ if (eventHandlerPattern.test(html)) {
+ {
+ warn('Potentially dangerous event handlers detected in translation. ' +
+ 'Consider removing onclick, onerror, etc. from your translation messages.');
+ }
+ // Neutralize event handler attributes by escaping 'on'
+ html = html.replace(/(\s+)(on)(\w+\s*=)/gi, '$1on$3');
+ }
+ // Disable javascript: URLs in various contexts
+ const javascriptUrlPattern = [
+ // In href, src, action, formaction attributes
+ /(\s+(?:href|src|action|formaction)\s*=\s*["']?)\s*javascript:/gi,
+ // In style attributes within url()
+ /(style\s*=\s*["'][^"']*url\s*\(\s*)javascript:/gi
+ ];
+ javascriptUrlPattern.forEach(pattern => {
+ html = html.replace(pattern, '$1javascript:');
+ });
+ return html;
+ }
+ const hasOwnProperty = Object.prototype.hasOwnProperty;
+ function hasOwn(obj, key) {
+ return hasOwnProperty.call(obj, key);
+ }
+ /* eslint-enable */
+ /**
+ * Useful Utilities By Evan you
+ * Modified by kazuya kawaguchi
+ * MIT License
+ * https://github.com/vuejs/vue-next/blob/master/packages/shared/src/index.ts
+ * https://github.com/vuejs/vue-next/blob/master/packages/shared/src/codeframe.ts
+ */
+ const isArray = Array.isArray;
+ const isFunction = (val) => typeof val === 'function';
+ const isString = (val) => typeof val === 'string';
+ const isBoolean = (val) => typeof val === 'boolean';
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
+ const isObject = (val) => val !== null && typeof val === 'object';
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
+ const isPromise = (val) => {
+ return isObject(val) && isFunction(val.then) && isFunction(val.catch);
+ };
+ const objectToString = Object.prototype.toString;
+ const toTypeString = (value) => objectToString.call(value);
+ const isPlainObject = (val) => toTypeString(val) === '[object Object]';
+ // for converting list and named values to displayed strings.
+ const toDisplayString = (val) => {
+ return val == null
+ ? ''
+ : isArray(val) || (isPlainObject(val) && val.toString === objectToString)
+ ? JSON.stringify(val, null, 2)
+ : String(val);
+ };
+ function join(items, separator = '') {
+ return items.reduce((str, item, index) => (index === 0 ? str + item : str + separator + item), '');
+ }
+ const RANGE = 2;
+ function generateCodeFrame(source, start = 0, end = source.length) {
+ const lines = source.split(/\r?\n/);
+ let count = 0;
+ const res = [];
+ for (let i = 0; i < lines.length; i++) {
+ count += lines[i].length + 1;
+ if (count >= start) {
+ for (let j = i - RANGE; j <= i + RANGE || end > count; j++) {
+ if (j < 0 || j >= lines.length)
+ continue;
+ const line = j + 1;
+ res.push(`${line}${' '.repeat(3 - String(line).length)}| ${lines[j]}`);
+ const lineLength = lines[j].length;
+ if (j === i) {
+ // push underline
+ const pad = start - (count - lineLength) + 1;
+ const length = Math.max(1, end > count ? lineLength - pad : end - start);
+ res.push(` | ` + ' '.repeat(pad) + '^'.repeat(length));
+ }
+ else if (j > i) {
+ if (end > count) {
+ const length = Math.max(Math.min(end - count, lineLength), 1);
+ res.push(` | ` + '^'.repeat(length));
+ }
+ count += lineLength + 1;
+ }
+ }
+ break;
+ }
+ }
+ return res.join('\n');
+ }
+
+ /**
+ * Event emitter, forked from the below:
+ * - original repository url: https://github.com/developit/mitt
+ * - code url: https://github.com/developit/mitt/blob/master/src/index.ts
+ * - author: Jason Miller (https://github.com/developit)
+ * - license: MIT
+ */
+ /**
+ * Create a event emitter
+ *
+ * @returns An event emitter
+ */
+ function createEmitter() {
+ const events = new Map();
+ const emitter = {
+ events,
+ on(event, handler) {
+ const handlers = events.get(event);
+ const added = handlers && handlers.push(handler);
+ if (!added) {
+ events.set(event, [handler]);
+ }
+ },
+ off(event, handler) {
+ const handlers = events.get(event);
+ if (handlers) {
+ handlers.splice(handlers.indexOf(handler) >>> 0, 1);
+ }
+ },
+ emit(event, payload) {
+ (events.get(event) || [])
+ .slice()
+ .map(handler => handler(payload));
+ (events.get('*') || [])
+ .slice()
+ .map(handler => handler(event, payload));
+ }
+ };
+ return emitter;
+ }
+
+ const isNotObjectOrIsArray = (val) => !isObject(val) || isArray(val);
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
+ function deepCopy(src, des) {
+ // src and des should both be objects, and none of them can be a array
+ if (isNotObjectOrIsArray(src) || isNotObjectOrIsArray(des)) {
+ throw new Error('Invalid value');
+ }
+ const stack = [{ src, des }];
+ while (stack.length) {
+ const { src, des } = stack.pop();
+ // using `Object.keys` which skips prototype properties
+ Object.keys(src).forEach(key => {
+ if (key === '__proto__') {
+ return;
+ }
+ // if src[key] is an object/array, set des[key]
+ // to empty object/array to prevent setting by reference
+ if (isObject(src[key]) && !isObject(des[key])) {
+ des[key] = Array.isArray(src[key]) ? [] : create();
+ }
+ if (isNotObjectOrIsArray(des[key]) || isNotObjectOrIsArray(src[key])) {
+ // replace with src[key] when:
+ // src[key] or des[key] is not an object, or
+ // src[key] or des[key] is an array
+ des[key] = src[key];
+ }
+ else {
+ // src[key] and des[key] are both objects, merge them
+ stack.push({ src: src[key], des: des[key] });
+ }
+ });
+ }
+ }
+
+ function createPosition(line, column, offset) {
+ return { line, column, offset };
+ }
+ function createLocation(start, end, source) {
+ const loc = { start, end };
+ return loc;
+ }
+
+ const CompileErrorCodes = {
+ // tokenizer error codes
+ EXPECTED_TOKEN: 1,
+ INVALID_TOKEN_IN_PLACEHOLDER: 2,
+ UNTERMINATED_SINGLE_QUOTE_IN_PLACEHOLDER: 3,
+ UNKNOWN_ESCAPE_SEQUENCE: 4,
+ INVALID_UNICODE_ESCAPE_SEQUENCE: 5,
+ UNBALANCED_CLOSING_BRACE: 6,
+ UNTERMINATED_CLOSING_BRACE: 7,
+ EMPTY_PLACEHOLDER: 8,
+ NOT_ALLOW_NEST_PLACEHOLDER: 9,
+ INVALID_LINKED_FORMAT: 10,
+ // parser error codes
+ MUST_HAVE_MESSAGES_IN_PLURAL: 11,
+ UNEXPECTED_EMPTY_LINKED_MODIFIER: 12,
+ UNEXPECTED_EMPTY_LINKED_KEY: 13,
+ UNEXPECTED_LEXICAL_ANALYSIS: 14,
+ // generator error codes
+ UNHANDLED_CODEGEN_NODE_TYPE: 15,
+ // minifier error codes
+ UNHANDLED_MINIFIER_NODE_TYPE: 16
+ };
+ // Special value for higher-order compilers to pick up the last code
+ // to avoid collision of error codes.
+ // This should always be kept as the last item.
+ const COMPILE_ERROR_CODES_EXTEND_POINT = 17;
+ /** @internal */
+ const errorMessages$2 = {
+ // tokenizer error messages
+ [CompileErrorCodes.EXPECTED_TOKEN]: `Expected token: '{0}'`,
+ [CompileErrorCodes.INVALID_TOKEN_IN_PLACEHOLDER]: `Invalid token in placeholder: '{0}'`,
+ [CompileErrorCodes.UNTERMINATED_SINGLE_QUOTE_IN_PLACEHOLDER]: `Unterminated single quote in placeholder`,
+ [CompileErrorCodes.UNKNOWN_ESCAPE_SEQUENCE]: `Unknown escape sequence: \\{0}`,
+ [CompileErrorCodes.INVALID_UNICODE_ESCAPE_SEQUENCE]: `Invalid unicode escape sequence: {0}`,
+ [CompileErrorCodes.UNBALANCED_CLOSING_BRACE]: `Unbalanced closing brace`,
+ [CompileErrorCodes.UNTERMINATED_CLOSING_BRACE]: `Unterminated closing brace`,
+ [CompileErrorCodes.EMPTY_PLACEHOLDER]: `Empty placeholder`,
+ [CompileErrorCodes.NOT_ALLOW_NEST_PLACEHOLDER]: `Not allowed nest placeholder`,
+ [CompileErrorCodes.INVALID_LINKED_FORMAT]: `Invalid linked format`,
+ // parser error messages
+ [CompileErrorCodes.MUST_HAVE_MESSAGES_IN_PLURAL]: `Plural must have messages`,
+ [CompileErrorCodes.UNEXPECTED_EMPTY_LINKED_MODIFIER]: `Unexpected empty linked modifier`,
+ [CompileErrorCodes.UNEXPECTED_EMPTY_LINKED_KEY]: `Unexpected empty linked key`,
+ [CompileErrorCodes.UNEXPECTED_LEXICAL_ANALYSIS]: `Unexpected lexical analysis in token: '{0}'`,
+ // generator error messages
+ [CompileErrorCodes.UNHANDLED_CODEGEN_NODE_TYPE]: `unhandled codegen node type: '{0}'`,
+ // minimizer error messages
+ [CompileErrorCodes.UNHANDLED_MINIFIER_NODE_TYPE]: `unhandled mimifier node type: '{0}'`
+ };
+ function createCompileError(code, loc, options = {}) {
+ const { domain, messages, args } = options;
+ const msg = format$1((messages || errorMessages$2)[code] || '', ...(args || []))
+ ;
+ const error = new SyntaxError(String(msg));
+ error.code = code;
+ if (loc) {
+ error.location = loc;
+ }
+ error.domain = domain;
+ return error;
+ }
+ /** @internal */
+ function defaultOnError(error) {
+ throw error;
+ }
+
+ // eslint-disable-next-line no-useless-escape
+ const RE_HTML_TAG = /<\/?[\w\s="/.':;#-\/]+>/;
+ const detectHtmlTag = (source) => RE_HTML_TAG.test(source);
+
+ const CHAR_SP = ' ';
+ const CHAR_CR = '\r';
+ const CHAR_LF = '\n';
+ const CHAR_LS = String.fromCharCode(0x2028);
+ const CHAR_PS = String.fromCharCode(0x2029);
+ function createScanner(str) {
+ const _buf = str;
+ let _index = 0;
+ let _line = 1;
+ let _column = 1;
+ let _peekOffset = 0;
+ const isCRLF = (index) => _buf[index] === CHAR_CR && _buf[index + 1] === CHAR_LF;
+ const isLF = (index) => _buf[index] === CHAR_LF;
+ const isPS = (index) => _buf[index] === CHAR_PS;
+ const isLS = (index) => _buf[index] === CHAR_LS;
+ const isLineEnd = (index) => isCRLF(index) || isLF(index) || isPS(index) || isLS(index);
+ const index = () => _index;
+ const line = () => _line;
+ const column = () => _column;
+ const peekOffset = () => _peekOffset;
+ const charAt = (offset) => isCRLF(offset) || isPS(offset) || isLS(offset) ? CHAR_LF : _buf[offset];
+ const currentChar = () => charAt(_index);
+ const currentPeek = () => charAt(_index + _peekOffset);
+ function next() {
+ _peekOffset = 0;
+ if (isLineEnd(_index)) {
+ _line++;
+ _column = 0;
+ }
+ if (isCRLF(_index)) {
+ _index++;
+ }
+ _index++;
+ _column++;
+ return _buf[_index];
+ }
+ function peek() {
+ if (isCRLF(_index + _peekOffset)) {
+ _peekOffset++;
+ }
+ _peekOffset++;
+ return _buf[_index + _peekOffset];
+ }
+ function reset() {
+ _index = 0;
+ _line = 1;
+ _column = 1;
+ _peekOffset = 0;
+ }
+ function resetPeek(offset = 0) {
+ _peekOffset = offset;
+ }
+ function skipToPeek() {
+ const target = _index + _peekOffset;
+ while (target !== _index) {
+ next();
+ }
+ _peekOffset = 0;
+ }
+ return {
+ index,
+ line,
+ column,
+ peekOffset,
+ charAt,
+ currentChar,
+ currentPeek,
+ next,
+ peek,
+ reset,
+ resetPeek,
+ skipToPeek
+ };
+ }
+
+ const EOF = undefined;
+ const DOT = '.';
+ const LITERAL_DELIMITER = "'";
+ const ERROR_DOMAIN$3 = 'tokenizer';
+ function createTokenizer(source, options = {}) {
+ const location = options.location !== false;
+ const _scnr = createScanner(source);
+ const currentOffset = () => _scnr.index();
+ const currentPosition = () => createPosition(_scnr.line(), _scnr.column(), _scnr.index());
+ const _initLoc = currentPosition();
+ const _initOffset = currentOffset();
+ const _context = {
+ currentType: 13 /* TokenTypes.EOF */,
+ offset: _initOffset,
+ startLoc: _initLoc,
+ endLoc: _initLoc,
+ lastType: 13 /* TokenTypes.EOF */,
+ lastOffset: _initOffset,
+ lastStartLoc: _initLoc,
+ lastEndLoc: _initLoc,
+ braceNest: 0,
+ inLinked: false,
+ text: ''
+ };
+ const context = () => _context;
+ const { onError } = options;
+ function emitError(code, pos, offset, ...args) {
+ const ctx = context();
+ pos.column += offset;
+ pos.offset += offset;
+ if (onError) {
+ const loc = location ? createLocation(ctx.startLoc, pos) : null;
+ const err = createCompileError(code, loc, {
+ domain: ERROR_DOMAIN$3,
+ args
+ });
+ onError(err);
+ }
+ }
+ function getToken(context, type, value) {
+ context.endLoc = currentPosition();
+ context.currentType = type;
+ const token = { type };
+ if (location) {
+ token.loc = createLocation(context.startLoc, context.endLoc);
+ }
+ if (value != null) {
+ token.value = value;
+ }
+ return token;
+ }
+ const getEndToken = (context) => getToken(context, 13 /* TokenTypes.EOF */);
+ function eat(scnr, ch) {
+ if (scnr.currentChar() === ch) {
+ scnr.next();
+ return ch;
+ }
+ else {
+ emitError(CompileErrorCodes.EXPECTED_TOKEN, currentPosition(), 0, ch);
+ return '';
+ }
+ }
+ function peekSpaces(scnr) {
+ let buf = '';
+ while (scnr.currentPeek() === CHAR_SP || scnr.currentPeek() === CHAR_LF) {
+ buf += scnr.currentPeek();
+ scnr.peek();
+ }
+ return buf;
+ }
+ function skipSpaces(scnr) {
+ const buf = peekSpaces(scnr);
+ scnr.skipToPeek();
+ return buf;
+ }
+ function isIdentifierStart(ch) {
+ if (ch === EOF) {
+ return false;
+ }
+ const cc = ch.charCodeAt(0);
+ return ((cc >= 97 && cc <= 122) || // a-z
+ (cc >= 65 && cc <= 90) || // A-Z
+ cc === 95 // _
+ );
+ }
+ function isNumberStart(ch) {
+ if (ch === EOF) {
+ return false;
+ }
+ const cc = ch.charCodeAt(0);
+ return cc >= 48 && cc <= 57; // 0-9
+ }
+ function isNamedIdentifierStart(scnr, context) {
+ const { currentType } = context;
+ if (currentType !== 2 /* TokenTypes.BraceLeft */) {
+ return false;
+ }
+ peekSpaces(scnr);
+ const ret = isIdentifierStart(scnr.currentPeek());
+ scnr.resetPeek();
+ return ret;
+ }
+ function isListIdentifierStart(scnr, context) {
+ const { currentType } = context;
+ if (currentType !== 2 /* TokenTypes.BraceLeft */) {
+ return false;
+ }
+ peekSpaces(scnr);
+ const ch = scnr.currentPeek() === '-' ? scnr.peek() : scnr.currentPeek();
+ const ret = isNumberStart(ch);
+ scnr.resetPeek();
+ return ret;
+ }
+ function isLiteralStart(scnr, context) {
+ const { currentType } = context;
+ if (currentType !== 2 /* TokenTypes.BraceLeft */) {
+ return false;
+ }
+ peekSpaces(scnr);
+ const ret = scnr.currentPeek() === LITERAL_DELIMITER;
+ scnr.resetPeek();
+ return ret;
+ }
+ function isLinkedDotStart(scnr, context) {
+ const { currentType } = context;
+ if (currentType !== 7 /* TokenTypes.LinkedAlias */) {
+ return false;
+ }
+ peekSpaces(scnr);
+ const ret = scnr.currentPeek() === "." /* TokenChars.LinkedDot */;
+ scnr.resetPeek();
+ return ret;
+ }
+ function isLinkedModifierStart(scnr, context) {
+ const { currentType } = context;
+ if (currentType !== 8 /* TokenTypes.LinkedDot */) {
+ return false;
+ }
+ peekSpaces(scnr);
+ const ret = isIdentifierStart(scnr.currentPeek());
+ scnr.resetPeek();
+ return ret;
+ }
+ function isLinkedDelimiterStart(scnr, context) {
+ const { currentType } = context;
+ if (!(currentType === 7 /* TokenTypes.LinkedAlias */ ||
+ currentType === 11 /* TokenTypes.LinkedModifier */)) {
+ return false;
+ }
+ peekSpaces(scnr);
+ const ret = scnr.currentPeek() === ":" /* TokenChars.LinkedDelimiter */;
+ scnr.resetPeek();
+ return ret;
+ }
+ function isLinkedReferStart(scnr, context) {
+ const { currentType } = context;
+ if (currentType !== 9 /* TokenTypes.LinkedDelimiter */) {
+ return false;
+ }
+ const fn = () => {
+ const ch = scnr.currentPeek();
+ if (ch === "{" /* TokenChars.BraceLeft */) {
+ return isIdentifierStart(scnr.peek());
+ }
+ else if (ch === "@" /* TokenChars.LinkedAlias */ ||
+ ch === "|" /* TokenChars.Pipe */ ||
+ ch === ":" /* TokenChars.LinkedDelimiter */ ||
+ ch === "." /* TokenChars.LinkedDot */ ||
+ ch === CHAR_SP ||
+ !ch) {
+ return false;
+ }
+ else if (ch === CHAR_LF) {
+ scnr.peek();
+ return fn();
+ }
+ else {
+ // other characters
+ return isTextStart(scnr, false);
+ }
+ };
+ const ret = fn();
+ scnr.resetPeek();
+ return ret;
+ }
+ function isPluralStart(scnr) {
+ peekSpaces(scnr);
+ const ret = scnr.currentPeek() === "|" /* TokenChars.Pipe */;
+ scnr.resetPeek();
+ return ret;
+ }
+ function isTextStart(scnr, reset = true) {
+ const fn = (hasSpace = false, prev = '') => {
+ const ch = scnr.currentPeek();
+ if (ch === "{" /* TokenChars.BraceLeft */) {
+ return hasSpace;
+ }
+ else if (ch === "@" /* TokenChars.LinkedAlias */ || !ch) {
+ return hasSpace;
+ }
+ else if (ch === "|" /* TokenChars.Pipe */) {
+ return !(prev === CHAR_SP || prev === CHAR_LF);
+ }
+ else if (ch === CHAR_SP) {
+ scnr.peek();
+ return fn(true, CHAR_SP);
+ }
+ else if (ch === CHAR_LF) {
+ scnr.peek();
+ return fn(true, CHAR_LF);
+ }
+ else {
+ return true;
+ }
+ };
+ const ret = fn();
+ reset && scnr.resetPeek();
+ return ret;
+ }
+ function takeChar(scnr, fn) {
+ const ch = scnr.currentChar();
+ if (ch === EOF) {
+ return EOF;
+ }
+ if (fn(ch)) {
+ scnr.next();
+ return ch;
+ }
+ return null;
+ }
+ function isIdentifier(ch) {
+ const cc = ch.charCodeAt(0);
+ return ((cc >= 97 && cc <= 122) || // a-z
+ (cc >= 65 && cc <= 90) || // A-Z
+ (cc >= 48 && cc <= 57) || // 0-9
+ cc === 95 || // _
+ cc === 36 // $
+ );
+ }
+ function takeIdentifierChar(scnr) {
+ return takeChar(scnr, isIdentifier);
+ }
+ function isNamedIdentifier(ch) {
+ const cc = ch.charCodeAt(0);
+ return ((cc >= 97 && cc <= 122) || // a-z
+ (cc >= 65 && cc <= 90) || // A-Z
+ (cc >= 48 && cc <= 57) || // 0-9
+ cc === 95 || // _
+ cc === 36 || // $
+ cc === 45 // -
+ );
+ }
+ function takeNamedIdentifierChar(scnr) {
+ return takeChar(scnr, isNamedIdentifier);
+ }
+ function isDigit(ch) {
+ const cc = ch.charCodeAt(0);
+ return cc >= 48 && cc <= 57; // 0-9
+ }
+ function takeDigit(scnr) {
+ return takeChar(scnr, isDigit);
+ }
+ function isHexDigit(ch) {
+ const cc = ch.charCodeAt(0);
+ return ((cc >= 48 && cc <= 57) || // 0-9
+ (cc >= 65 && cc <= 70) || // A-F
+ (cc >= 97 && cc <= 102)); // a-f
+ }
+ function takeHexDigit(scnr) {
+ return takeChar(scnr, isHexDigit);
+ }
+ function getDigits(scnr) {
+ let ch = '';
+ let num = '';
+ while ((ch = takeDigit(scnr))) {
+ num += ch;
+ }
+ return num;
+ }
+ function readText(scnr) {
+ let buf = '';
+ while (true) {
+ const ch = scnr.currentChar();
+ if (ch === "{" /* TokenChars.BraceLeft */ ||
+ ch === "}" /* TokenChars.BraceRight */ ||
+ ch === "@" /* TokenChars.LinkedAlias */ ||
+ ch === "|" /* TokenChars.Pipe */ ||
+ !ch) {
+ break;
+ }
+ else if (ch === CHAR_SP || ch === CHAR_LF) {
+ if (isTextStart(scnr)) {
+ buf += ch;
+ scnr.next();
+ }
+ else if (isPluralStart(scnr)) {
+ break;
+ }
+ else {
+ buf += ch;
+ scnr.next();
+ }
+ }
+ else {
+ buf += ch;
+ scnr.next();
+ }
+ }
+ return buf;
+ }
+ function readNamedIdentifier(scnr) {
+ skipSpaces(scnr);
+ let ch = '';
+ let name = '';
+ while ((ch = takeNamedIdentifierChar(scnr))) {
+ name += ch;
+ }
+ if (scnr.currentChar() === EOF) {
+ emitError(CompileErrorCodes.UNTERMINATED_CLOSING_BRACE, currentPosition(), 0);
+ }
+ return name;
+ }
+ function readListIdentifier(scnr) {
+ skipSpaces(scnr);
+ let value = '';
+ if (scnr.currentChar() === '-') {
+ scnr.next();
+ value += `-${getDigits(scnr)}`;
+ }
+ else {
+ value += getDigits(scnr);
+ }
+ if (scnr.currentChar() === EOF) {
+ emitError(CompileErrorCodes.UNTERMINATED_CLOSING_BRACE, currentPosition(), 0);
+ }
+ return value;
+ }
+ function isLiteral(ch) {
+ return ch !== LITERAL_DELIMITER && ch !== CHAR_LF;
+ }
+ function readLiteral(scnr) {
+ skipSpaces(scnr);
+ // eslint-disable-next-line no-useless-escape
+ eat(scnr, `\'`);
+ let ch = '';
+ let literal = '';
+ while ((ch = takeChar(scnr, isLiteral))) {
+ if (ch === '\\') {
+ literal += readEscapeSequence(scnr);
+ }
+ else {
+ literal += ch;
+ }
+ }
+ const current = scnr.currentChar();
+ if (current === CHAR_LF || current === EOF) {
+ emitError(CompileErrorCodes.UNTERMINATED_SINGLE_QUOTE_IN_PLACEHOLDER, currentPosition(), 0);
+ // TODO: Is it correct really?
+ if (current === CHAR_LF) {
+ scnr.next();
+ // eslint-disable-next-line no-useless-escape
+ eat(scnr, `\'`);
+ }
+ return literal;
+ }
+ // eslint-disable-next-line no-useless-escape
+ eat(scnr, `\'`);
+ return literal;
+ }
+ function readEscapeSequence(scnr) {
+ const ch = scnr.currentChar();
+ switch (ch) {
+ case '\\':
+ case `\'`: // eslint-disable-line no-useless-escape
+ scnr.next();
+ return `\\${ch}`;
+ case 'u':
+ return readUnicodeEscapeSequence(scnr, ch, 4);
+ case 'U':
+ return readUnicodeEscapeSequence(scnr, ch, 6);
+ default:
+ emitError(CompileErrorCodes.UNKNOWN_ESCAPE_SEQUENCE, currentPosition(), 0, ch);
+ return '';
+ }
+ }
+ function readUnicodeEscapeSequence(scnr, unicode, digits) {
+ eat(scnr, unicode);
+ let sequence = '';
+ for (let i = 0; i < digits; i++) {
+ const ch = takeHexDigit(scnr);
+ if (!ch) {
+ emitError(CompileErrorCodes.INVALID_UNICODE_ESCAPE_SEQUENCE, currentPosition(), 0, `\\${unicode}${sequence}${scnr.currentChar()}`);
+ break;
+ }
+ sequence += ch;
+ }
+ return `\\${unicode}${sequence}`;
+ }
+ function isInvalidIdentifier(ch) {
+ return (ch !== "{" /* TokenChars.BraceLeft */ &&
+ ch !== "}" /* TokenChars.BraceRight */ &&
+ ch !== CHAR_SP &&
+ ch !== CHAR_LF);
+ }
+ function readInvalidIdentifier(scnr) {
+ skipSpaces(scnr);
+ let ch = '';
+ let identifiers = '';
+ while ((ch = takeChar(scnr, isInvalidIdentifier))) {
+ identifiers += ch;
+ }
+ return identifiers;
+ }
+ function readLinkedModifier(scnr) {
+ let ch = '';
+ let name = '';
+ while ((ch = takeIdentifierChar(scnr))) {
+ name += ch;
+ }
+ return name;
+ }
+ function readLinkedRefer(scnr) {
+ const fn = (buf) => {
+ const ch = scnr.currentChar();
+ if (ch === "{" /* TokenChars.BraceLeft */ ||
+ ch === "@" /* TokenChars.LinkedAlias */ ||
+ ch === "|" /* TokenChars.Pipe */ ||
+ ch === "(" /* TokenChars.ParenLeft */ ||
+ ch === ")" /* TokenChars.ParenRight */ ||
+ !ch) {
+ return buf;
+ }
+ else if (ch === CHAR_SP) {
+ return buf;
+ }
+ else if (ch === CHAR_LF || ch === DOT) {
+ buf += ch;
+ scnr.next();
+ return fn(buf);
+ }
+ else {
+ buf += ch;
+ scnr.next();
+ return fn(buf);
+ }
+ };
+ return fn('');
+ }
+ function readPlural(scnr) {
+ skipSpaces(scnr);
+ const plural = eat(scnr, "|" /* TokenChars.Pipe */);
+ skipSpaces(scnr);
+ return plural;
+ }
+ // TODO: We need refactoring of token parsing ...
+ function readTokenInPlaceholder(scnr, context) {
+ let token = null;
+ const ch = scnr.currentChar();
+ switch (ch) {
+ case "{" /* TokenChars.BraceLeft */:
+ if (context.braceNest >= 1) {
+ emitError(CompileErrorCodes.NOT_ALLOW_NEST_PLACEHOLDER, currentPosition(), 0);
+ }
+ scnr.next();
+ token = getToken(context, 2 /* TokenTypes.BraceLeft */, "{" /* TokenChars.BraceLeft */);
+ skipSpaces(scnr);
+ context.braceNest++;
+ return token;
+ case "}" /* TokenChars.BraceRight */:
+ if (context.braceNest > 0 &&
+ context.currentType === 2 /* TokenTypes.BraceLeft */) {
+ emitError(CompileErrorCodes.EMPTY_PLACEHOLDER, currentPosition(), 0);
+ }
+ scnr.next();
+ token = getToken(context, 3 /* TokenTypes.BraceRight */, "}" /* TokenChars.BraceRight */);
+ context.braceNest--;
+ context.braceNest > 0 && skipSpaces(scnr);
+ if (context.inLinked && context.braceNest === 0) {
+ context.inLinked = false;
+ }
+ return token;
+ case "@" /* TokenChars.LinkedAlias */:
+ if (context.braceNest > 0) {
+ emitError(CompileErrorCodes.UNTERMINATED_CLOSING_BRACE, currentPosition(), 0);
+ }
+ token = readTokenInLinked(scnr, context) || getEndToken(context);
+ context.braceNest = 0;
+ return token;
+ default: {
+ let validNamedIdentifier = true;
+ let validListIdentifier = true;
+ let validLiteral = true;
+ if (isPluralStart(scnr)) {
+ if (context.braceNest > 0) {
+ emitError(CompileErrorCodes.UNTERMINATED_CLOSING_BRACE, currentPosition(), 0);
+ }
+ token = getToken(context, 1 /* TokenTypes.Pipe */, readPlural(scnr));
+ // reset
+ context.braceNest = 0;
+ context.inLinked = false;
+ return token;
+ }
+ if (context.braceNest > 0 &&
+ (context.currentType === 4 /* TokenTypes.Named */ ||
+ context.currentType === 5 /* TokenTypes.List */ ||
+ context.currentType === 6 /* TokenTypes.Literal */)) {
+ emitError(CompileErrorCodes.UNTERMINATED_CLOSING_BRACE, currentPosition(), 0);
+ context.braceNest = 0;
+ return readToken(scnr, context);
+ }
+ if ((validNamedIdentifier = isNamedIdentifierStart(scnr, context))) {
+ token = getToken(context, 4 /* TokenTypes.Named */, readNamedIdentifier(scnr));
+ skipSpaces(scnr);
+ return token;
+ }
+ if ((validListIdentifier = isListIdentifierStart(scnr, context))) {
+ token = getToken(context, 5 /* TokenTypes.List */, readListIdentifier(scnr));
+ skipSpaces(scnr);
+ return token;
+ }
+ if ((validLiteral = isLiteralStart(scnr, context))) {
+ token = getToken(context, 6 /* TokenTypes.Literal */, readLiteral(scnr));
+ skipSpaces(scnr);
+ return token;
+ }
+ if (!validNamedIdentifier && !validListIdentifier && !validLiteral) {
+ // TODO: we should be re-designed invalid cases, when we will extend message syntax near the future ...
+ token = getToken(context, 12 /* TokenTypes.InvalidPlace */, readInvalidIdentifier(scnr));
+ emitError(CompileErrorCodes.INVALID_TOKEN_IN_PLACEHOLDER, currentPosition(), 0, token.value);
+ skipSpaces(scnr);
+ return token;
+ }
+ break;
+ }
+ }
+ return token;
+ }
+ // TODO: We need refactoring of token parsing ...
+ function readTokenInLinked(scnr, context) {
+ const { currentType } = context;
+ let token = null;
+ const ch = scnr.currentChar();
+ if ((currentType === 7 /* TokenTypes.LinkedAlias */ ||
+ currentType === 8 /* TokenTypes.LinkedDot */ ||
+ currentType === 11 /* TokenTypes.LinkedModifier */ ||
+ currentType === 9 /* TokenTypes.LinkedDelimiter */) &&
+ (ch === CHAR_LF || ch === CHAR_SP)) {
+ emitError(CompileErrorCodes.INVALID_LINKED_FORMAT, currentPosition(), 0);
+ }
+ switch (ch) {
+ case "@" /* TokenChars.LinkedAlias */:
+ scnr.next();
+ token = getToken(context, 7 /* TokenTypes.LinkedAlias */, "@" /* TokenChars.LinkedAlias */);
+ context.inLinked = true;
+ return token;
+ case "." /* TokenChars.LinkedDot */:
+ skipSpaces(scnr);
+ scnr.next();
+ return getToken(context, 8 /* TokenTypes.LinkedDot */, "." /* TokenChars.LinkedDot */);
+ case ":" /* TokenChars.LinkedDelimiter */:
+ skipSpaces(scnr);
+ scnr.next();
+ return getToken(context, 9 /* TokenTypes.LinkedDelimiter */, ":" /* TokenChars.LinkedDelimiter */);
+ default:
+ if (isPluralStart(scnr)) {
+ token = getToken(context, 1 /* TokenTypes.Pipe */, readPlural(scnr));
+ // reset
+ context.braceNest = 0;
+ context.inLinked = false;
+ return token;
+ }
+ if (isLinkedDotStart(scnr, context) ||
+ isLinkedDelimiterStart(scnr, context)) {
+ skipSpaces(scnr);
+ return readTokenInLinked(scnr, context);
+ }
+ if (isLinkedModifierStart(scnr, context)) {
+ skipSpaces(scnr);
+ return getToken(context, 11 /* TokenTypes.LinkedModifier */, readLinkedModifier(scnr));
+ }
+ if (isLinkedReferStart(scnr, context)) {
+ skipSpaces(scnr);
+ if (ch === "{" /* TokenChars.BraceLeft */) {
+ // scan the placeholder
+ return readTokenInPlaceholder(scnr, context) || token;
+ }
+ else {
+ return getToken(context, 10 /* TokenTypes.LinkedKey */, readLinkedRefer(scnr));
+ }
+ }
+ if (currentType === 7 /* TokenTypes.LinkedAlias */) {
+ emitError(CompileErrorCodes.INVALID_LINKED_FORMAT, currentPosition(), 0);
+ }
+ context.braceNest = 0;
+ context.inLinked = false;
+ return readToken(scnr, context);
+ }
+ }
+ // TODO: We need refactoring of token parsing ...
+ function readToken(scnr, context) {
+ let token = { type: 13 /* TokenTypes.EOF */ };
+ if (context.braceNest > 0) {
+ return readTokenInPlaceholder(scnr, context) || getEndToken(context);
+ }
+ if (context.inLinked) {
+ return readTokenInLinked(scnr, context) || getEndToken(context);
+ }
+ const ch = scnr.currentChar();
+ switch (ch) {
+ case "{" /* TokenChars.BraceLeft */:
+ return readTokenInPlaceholder(scnr, context) || getEndToken(context);
+ case "}" /* TokenChars.BraceRight */:
+ emitError(CompileErrorCodes.UNBALANCED_CLOSING_BRACE, currentPosition(), 0);
+ scnr.next();
+ return getToken(context, 3 /* TokenTypes.BraceRight */, "}" /* TokenChars.BraceRight */);
+ case "@" /* TokenChars.LinkedAlias */:
+ return readTokenInLinked(scnr, context) || getEndToken(context);
+ default: {
+ if (isPluralStart(scnr)) {
+ token = getToken(context, 1 /* TokenTypes.Pipe */, readPlural(scnr));
+ // reset
+ context.braceNest = 0;
+ context.inLinked = false;
+ return token;
+ }
+ if (isTextStart(scnr)) {
+ return getToken(context, 0 /* TokenTypes.Text */, readText(scnr));
+ }
+ break;
+ }
+ }
+ return token;
+ }
+ function nextToken() {
+ const { currentType, offset, startLoc, endLoc } = _context;
+ _context.lastType = currentType;
+ _context.lastOffset = offset;
+ _context.lastStartLoc = startLoc;
+ _context.lastEndLoc = endLoc;
+ _context.offset = currentOffset();
+ _context.startLoc = currentPosition();
+ if (_scnr.currentChar() === EOF) {
+ return getToken(_context, 13 /* TokenTypes.EOF */);
+ }
+ return readToken(_scnr, _context);
+ }
+ return {
+ nextToken,
+ currentOffset,
+ currentPosition,
+ context
+ };
+ }
+
+ const ERROR_DOMAIN$2 = 'parser';
+ // Backslash backslash, backslash quote, uHHHH, UHHHHHH.
+ const KNOWN_ESCAPES = /(?:\\\\|\\'|\\u([0-9a-fA-F]{4})|\\U([0-9a-fA-F]{6}))/g;
+ function fromEscapeSequence(match, codePoint4, codePoint6) {
+ switch (match) {
+ case `\\\\`:
+ return `\\`;
+ // eslint-disable-next-line no-useless-escape
+ case `\\\'`:
+ // eslint-disable-next-line no-useless-escape
+ return `\'`;
+ default: {
+ const codePoint = parseInt(codePoint4 || codePoint6, 16);
+ if (codePoint <= 0xd7ff || codePoint >= 0xe000) {
+ return String.fromCodePoint(codePoint);
+ }
+ // invalid ...
+ // Replace them with U+FFFD REPLACEMENT CHARACTER.
+ return '�';
+ }
+ }
+ }
+ function createParser(options = {}) {
+ const location = options.location !== false;
+ const { onError } = options;
+ function emitError(tokenzer, code, start, offset, ...args) {
+ const end = tokenzer.currentPosition();
+ end.offset += offset;
+ end.column += offset;
+ if (onError) {
+ const loc = location ? createLocation(start, end) : null;
+ const err = createCompileError(code, loc, {
+ domain: ERROR_DOMAIN$2,
+ args
+ });
+ onError(err);
+ }
+ }
+ function startNode(type, offset, loc) {
+ const node = { type };
+ if (location) {
+ node.start = offset;
+ node.end = offset;
+ node.loc = { start: loc, end: loc };
+ }
+ return node;
+ }
+ function endNode(node, offset, pos, type) {
+ if (location) {
+ node.end = offset;
+ if (node.loc) {
+ node.loc.end = pos;
+ }
+ }
+ }
+ function parseText(tokenizer, value) {
+ const context = tokenizer.context();
+ const node = startNode(3 /* NodeTypes.Text */, context.offset, context.startLoc);
+ node.value = value;
+ endNode(node, tokenizer.currentOffset(), tokenizer.currentPosition());
+ return node;
+ }
+ function parseList(tokenizer, index) {
+ const context = tokenizer.context();
+ const { lastOffset: offset, lastStartLoc: loc } = context; // get brace left loc
+ const node = startNode(5 /* NodeTypes.List */, offset, loc);
+ node.index = parseInt(index, 10);
+ tokenizer.nextToken(); // skip brach right
+ endNode(node, tokenizer.currentOffset(), tokenizer.currentPosition());
+ return node;
+ }
+ function parseNamed(tokenizer, key) {
+ const context = tokenizer.context();
+ const { lastOffset: offset, lastStartLoc: loc } = context; // get brace left loc
+ const node = startNode(4 /* NodeTypes.Named */, offset, loc);
+ node.key = key;
+ tokenizer.nextToken(); // skip brach right
+ endNode(node, tokenizer.currentOffset(), tokenizer.currentPosition());
+ return node;
+ }
+ function parseLiteral(tokenizer, value) {
+ const context = tokenizer.context();
+ const { lastOffset: offset, lastStartLoc: loc } = context; // get brace left loc
+ const node = startNode(9 /* NodeTypes.Literal */, offset, loc);
+ node.value = value.replace(KNOWN_ESCAPES, fromEscapeSequence);
+ tokenizer.nextToken(); // skip brach right
+ endNode(node, tokenizer.currentOffset(), tokenizer.currentPosition());
+ return node;
+ }
+ function parseLinkedModifier(tokenizer) {
+ const token = tokenizer.nextToken();
+ const context = tokenizer.context();
+ const { lastOffset: offset, lastStartLoc: loc } = context; // get linked dot loc
+ const node = startNode(8 /* NodeTypes.LinkedModifier */, offset, loc);
+ if (token.type !== 11 /* TokenTypes.LinkedModifier */) {
+ // empty modifier
+ emitError(tokenizer, CompileErrorCodes.UNEXPECTED_EMPTY_LINKED_MODIFIER, context.lastStartLoc, 0);
+ node.value = '';
+ endNode(node, offset, loc);
+ return {
+ nextConsumeToken: token,
+ node
+ };
+ }
+ // check token
+ if (token.value == null) {
+ emitError(tokenizer, CompileErrorCodes.UNEXPECTED_LEXICAL_ANALYSIS, context.lastStartLoc, 0, getTokenCaption(token));
+ }
+ node.value = token.value || '';
+ endNode(node, tokenizer.currentOffset(), tokenizer.currentPosition());
+ return {
+ node
+ };
+ }
+ function parseLinkedKey(tokenizer, value) {
+ const context = tokenizer.context();
+ const node = startNode(7 /* NodeTypes.LinkedKey */, context.offset, context.startLoc);
+ node.value = value;
+ endNode(node, tokenizer.currentOffset(), tokenizer.currentPosition());
+ return node;
+ }
+ function parseLinked(tokenizer) {
+ const context = tokenizer.context();
+ const linkedNode = startNode(6 /* NodeTypes.Linked */, context.offset, context.startLoc);
+ let token = tokenizer.nextToken();
+ if (token.type === 8 /* TokenTypes.LinkedDot */) {
+ const parsed = parseLinkedModifier(tokenizer);
+ linkedNode.modifier = parsed.node;
+ token = parsed.nextConsumeToken || tokenizer.nextToken();
+ }
+ // asset check token
+ if (token.type !== 9 /* TokenTypes.LinkedDelimiter */) {
+ emitError(tokenizer, CompileErrorCodes.UNEXPECTED_LEXICAL_ANALYSIS, context.lastStartLoc, 0, getTokenCaption(token));
+ }
+ token = tokenizer.nextToken();
+ // skip brace left
+ if (token.type === 2 /* TokenTypes.BraceLeft */) {
+ token = tokenizer.nextToken();
+ }
+ switch (token.type) {
+ case 10 /* TokenTypes.LinkedKey */:
+ if (token.value == null) {
+ emitError(tokenizer, CompileErrorCodes.UNEXPECTED_LEXICAL_ANALYSIS, context.lastStartLoc, 0, getTokenCaption(token));
+ }
+ linkedNode.key = parseLinkedKey(tokenizer, token.value || '');
+ break;
+ case 4 /* TokenTypes.Named */:
+ if (token.value == null) {
+ emitError(tokenizer, CompileErrorCodes.UNEXPECTED_LEXICAL_ANALYSIS, context.lastStartLoc, 0, getTokenCaption(token));
+ }
+ linkedNode.key = parseNamed(tokenizer, token.value || '');
+ break;
+ case 5 /* TokenTypes.List */:
+ if (token.value == null) {
+ emitError(tokenizer, CompileErrorCodes.UNEXPECTED_LEXICAL_ANALYSIS, context.lastStartLoc, 0, getTokenCaption(token));
+ }
+ linkedNode.key = parseList(tokenizer, token.value || '');
+ break;
+ case 6 /* TokenTypes.Literal */:
+ if (token.value == null) {
+ emitError(tokenizer, CompileErrorCodes.UNEXPECTED_LEXICAL_ANALYSIS, context.lastStartLoc, 0, getTokenCaption(token));
+ }
+ linkedNode.key = parseLiteral(tokenizer, token.value || '');
+ break;
+ default: {
+ // empty key
+ emitError(tokenizer, CompileErrorCodes.UNEXPECTED_EMPTY_LINKED_KEY, context.lastStartLoc, 0);
+ const nextContext = tokenizer.context();
+ const emptyLinkedKeyNode = startNode(7 /* NodeTypes.LinkedKey */, nextContext.offset, nextContext.startLoc);
+ emptyLinkedKeyNode.value = '';
+ endNode(emptyLinkedKeyNode, nextContext.offset, nextContext.startLoc);
+ linkedNode.key = emptyLinkedKeyNode;
+ endNode(linkedNode, nextContext.offset, nextContext.startLoc);
+ return {
+ nextConsumeToken: token,
+ node: linkedNode
+ };
+ }
+ }
+ endNode(linkedNode, tokenizer.currentOffset(), tokenizer.currentPosition());
+ return {
+ node: linkedNode
+ };
+ }
+ function parseMessage(tokenizer) {
+ const context = tokenizer.context();
+ const startOffset = context.currentType === 1 /* TokenTypes.Pipe */
+ ? tokenizer.currentOffset()
+ : context.offset;
+ const startLoc = context.currentType === 1 /* TokenTypes.Pipe */
+ ? context.endLoc
+ : context.startLoc;
+ const node = startNode(2 /* NodeTypes.Message */, startOffset, startLoc);
+ node.items = [];
+ let nextToken = null;
+ do {
+ const token = nextToken || tokenizer.nextToken();
+ nextToken = null;
+ switch (token.type) {
+ case 0 /* TokenTypes.Text */:
+ if (token.value == null) {
+ emitError(tokenizer, CompileErrorCodes.UNEXPECTED_LEXICAL_ANALYSIS, context.lastStartLoc, 0, getTokenCaption(token));
+ }
+ node.items.push(parseText(tokenizer, token.value || ''));
+ break;
+ case 5 /* TokenTypes.List */:
+ if (token.value == null) {
+ emitError(tokenizer, CompileErrorCodes.UNEXPECTED_LEXICAL_ANALYSIS, context.lastStartLoc, 0, getTokenCaption(token));
+ }
+ node.items.push(parseList(tokenizer, token.value || ''));
+ break;
+ case 4 /* TokenTypes.Named */:
+ if (token.value == null) {
+ emitError(tokenizer, CompileErrorCodes.UNEXPECTED_LEXICAL_ANALYSIS, context.lastStartLoc, 0, getTokenCaption(token));
+ }
+ node.items.push(parseNamed(tokenizer, token.value || ''));
+ break;
+ case 6 /* TokenTypes.Literal */:
+ if (token.value == null) {
+ emitError(tokenizer, CompileErrorCodes.UNEXPECTED_LEXICAL_ANALYSIS, context.lastStartLoc, 0, getTokenCaption(token));
+ }
+ node.items.push(parseLiteral(tokenizer, token.value || ''));
+ break;
+ case 7 /* TokenTypes.LinkedAlias */: {
+ const parsed = parseLinked(tokenizer);
+ node.items.push(parsed.node);
+ nextToken = parsed.nextConsumeToken || null;
+ break;
+ }
+ }
+ } while (context.currentType !== 13 /* TokenTypes.EOF */ &&
+ context.currentType !== 1 /* TokenTypes.Pipe */);
+ // adjust message node loc
+ const endOffset = context.currentType === 1 /* TokenTypes.Pipe */
+ ? context.lastOffset
+ : tokenizer.currentOffset();
+ const endLoc = context.currentType === 1 /* TokenTypes.Pipe */
+ ? context.lastEndLoc
+ : tokenizer.currentPosition();
+ endNode(node, endOffset, endLoc);
+ return node;
+ }
+ function parsePlural(tokenizer, offset, loc, msgNode) {
+ const context = tokenizer.context();
+ let hasEmptyMessage = msgNode.items.length === 0;
+ const node = startNode(1 /* NodeTypes.Plural */, offset, loc);
+ node.cases = [];
+ node.cases.push(msgNode);
+ do {
+ const msg = parseMessage(tokenizer);
+ if (!hasEmptyMessage) {
+ hasEmptyMessage = msg.items.length === 0;
+ }
+ node.cases.push(msg);
+ } while (context.currentType !== 13 /* TokenTypes.EOF */);
+ if (hasEmptyMessage) {
+ emitError(tokenizer, CompileErrorCodes.MUST_HAVE_MESSAGES_IN_PLURAL, loc, 0);
+ }
+ endNode(node, tokenizer.currentOffset(), tokenizer.currentPosition());
+ return node;
+ }
+ function parseResource(tokenizer) {
+ const context = tokenizer.context();
+ const { offset, startLoc } = context;
+ const msgNode = parseMessage(tokenizer);
+ if (context.currentType === 13 /* TokenTypes.EOF */) {
+ return msgNode;
+ }
+ else {
+ return parsePlural(tokenizer, offset, startLoc, msgNode);
+ }
+ }
+ function parse(source) {
+ const tokenizer = createTokenizer(source, assign({}, options));
+ const context = tokenizer.context();
+ const node = startNode(0 /* NodeTypes.Resource */, context.offset, context.startLoc);
+ if (location && node.loc) {
+ node.loc.source = source;
+ }
+ node.body = parseResource(tokenizer);
+ if (options.onCacheKey) {
+ node.cacheKey = options.onCacheKey(source);
+ }
+ // assert whether achieved to EOF
+ if (context.currentType !== 13 /* TokenTypes.EOF */) {
+ emitError(tokenizer, CompileErrorCodes.UNEXPECTED_LEXICAL_ANALYSIS, context.lastStartLoc, 0, source[context.offset] || '');
+ }
+ endNode(node, tokenizer.currentOffset(), tokenizer.currentPosition());
+ return node;
+ }
+ return { parse };
+ }
+ function getTokenCaption(token) {
+ if (token.type === 13 /* TokenTypes.EOF */) {
+ return 'EOF';
+ }
+ const name = (token.value || '').replace(/\r?\n/gu, '\\n');
+ return name.length > 10 ? name.slice(0, 9) + '…' : name;
+ }
+
+ function createTransformer(ast, options = {} // eslint-disable-line
+ ) {
+ const _context = {
+ ast,
+ helpers: new Set()
+ };
+ const context = () => _context;
+ const helper = (name) => {
+ _context.helpers.add(name);
+ return name;
+ };
+ return { context, helper };
+ }
+ function traverseNodes(nodes, transformer) {
+ for (let i = 0; i < nodes.length; i++) {
+ traverseNode(nodes[i], transformer);
+ }
+ }
+ function traverseNode(node, transformer) {
+ // TODO: if we need pre-hook of transform, should be implemented to here
+ switch (node.type) {
+ case 1 /* NodeTypes.Plural */:
+ traverseNodes(node.cases, transformer);
+ transformer.helper("plural" /* HelperNameMap.PLURAL */);
+ break;
+ case 2 /* NodeTypes.Message */:
+ traverseNodes(node.items, transformer);
+ break;
+ case 6 /* NodeTypes.Linked */: {
+ const linked = node;
+ traverseNode(linked.key, transformer);
+ transformer.helper("linked" /* HelperNameMap.LINKED */);
+ transformer.helper("type" /* HelperNameMap.TYPE */);
+ break;
+ }
+ case 5 /* NodeTypes.List */:
+ transformer.helper("interpolate" /* HelperNameMap.INTERPOLATE */);
+ transformer.helper("list" /* HelperNameMap.LIST */);
+ break;
+ case 4 /* NodeTypes.Named */:
+ transformer.helper("interpolate" /* HelperNameMap.INTERPOLATE */);
+ transformer.helper("named" /* HelperNameMap.NAMED */);
+ break;
+ }
+ // TODO: if we need post-hook of transform, should be implemented to here
+ }
+ // transform AST
+ function transform(ast, options = {} // eslint-disable-line
+ ) {
+ const transformer = createTransformer(ast);
+ transformer.helper("normalize" /* HelperNameMap.NORMALIZE */);
+ // traverse
+ ast.body && traverseNode(ast.body, transformer);
+ // set meta information
+ const context = transformer.context();
+ ast.helpers = Array.from(context.helpers);
+ }
+
+ function optimize(ast) {
+ const body = ast.body;
+ if (body.type === 2 /* NodeTypes.Message */) {
+ optimizeMessageNode(body);
+ }
+ else {
+ body.cases.forEach(c => optimizeMessageNode(c));
+ }
+ return ast;
+ }
+ function optimizeMessageNode(message) {
+ if (message.items.length === 1) {
+ const item = message.items[0];
+ if (item.type === 3 /* NodeTypes.Text */ || item.type === 9 /* NodeTypes.Literal */) {
+ message.static = item.value;
+ delete item.value; // optimization for size
+ }
+ }
+ else {
+ const values = [];
+ for (let i = 0; i < message.items.length; i++) {
+ const item = message.items[i];
+ if (!(item.type === 3 /* NodeTypes.Text */ || item.type === 9 /* NodeTypes.Literal */)) {
+ break;
+ }
+ if (item.value == null) {
+ break;
+ }
+ values.push(item.value);
+ }
+ if (values.length === message.items.length) {
+ message.static = join(values);
+ for (let i = 0; i < message.items.length; i++) {
+ const item = message.items[i];
+ if (item.type === 3 /* NodeTypes.Text */ || item.type === 9 /* NodeTypes.Literal */) {
+ delete item.value; // optimization for size
+ }
+ }
+ }
+ }
+ }
+
+ const ERROR_DOMAIN$1 = 'minifier';
+ /* eslint-disable @typescript-eslint/no-explicit-any */
+ function minify(node) {
+ node.t = node.type;
+ switch (node.type) {
+ case 0 /* NodeTypes.Resource */: {
+ const resource = node;
+ minify(resource.body);
+ resource.b = resource.body;
+ delete resource.body;
+ break;
+ }
+ case 1 /* NodeTypes.Plural */: {
+ const plural = node;
+ const cases = plural.cases;
+ for (let i = 0; i < cases.length; i++) {
+ minify(cases[i]);
+ }
+ plural.c = cases;
+ delete plural.cases;
+ break;
+ }
+ case 2 /* NodeTypes.Message */: {
+ const message = node;
+ const items = message.items;
+ for (let i = 0; i < items.length; i++) {
+ minify(items[i]);
+ }
+ message.i = items;
+ delete message.items;
+ if (message.static) {
+ message.s = message.static;
+ delete message.static;
+ }
+ break;
+ }
+ case 3 /* NodeTypes.Text */:
+ case 9 /* NodeTypes.Literal */:
+ case 8 /* NodeTypes.LinkedModifier */:
+ case 7 /* NodeTypes.LinkedKey */: {
+ const valueNode = node;
+ if (valueNode.value) {
+ valueNode.v = valueNode.value;
+ delete valueNode.value;
+ }
+ break;
+ }
+ case 6 /* NodeTypes.Linked */: {
+ const linked = node;
+ minify(linked.key);
+ linked.k = linked.key;
+ delete linked.key;
+ if (linked.modifier) {
+ minify(linked.modifier);
+ linked.m = linked.modifier;
+ delete linked.modifier;
+ }
+ break;
+ }
+ case 5 /* NodeTypes.List */: {
+ const list = node;
+ list.i = list.index;
+ delete list.index;
+ break;
+ }
+ case 4 /* NodeTypes.Named */: {
+ const named = node;
+ named.k = named.key;
+ delete named.key;
+ break;
+ }
+ default:
+ {
+ throw createCompileError(CompileErrorCodes.UNHANDLED_MINIFIER_NODE_TYPE, null, {
+ domain: ERROR_DOMAIN$1,
+ args: [node.type]
+ });
+ }
+ }
+ delete node.type;
+ }
+ /* eslint-enable @typescript-eslint/no-explicit-any */
+
+ // eslint-disable-next-line @typescript-eslint/triple-slash-reference
+ /// <reference types="source-map-js" />
+ const ERROR_DOMAIN = 'parser';
+ function createCodeGenerator(ast, options) {
+ const { sourceMap, filename, breakLineCode, needIndent: _needIndent } = options;
+ const location = options.location !== false;
+ const _context = {
+ filename,
+ code: '',
+ column: 1,
+ line: 1,
+ offset: 0,
+ map: undefined,
+ breakLineCode,
+ needIndent: _needIndent,
+ indentLevel: 0
+ };
+ if (location && ast.loc) {
+ _context.source = ast.loc.source;
+ }
+ const context = () => _context;
+ function push(code, node) {
+ _context.code += code;
+ }
+ function _newline(n, withBreakLine = true) {
+ const _breakLineCode = withBreakLine ? breakLineCode : '';
+ push(_needIndent ? _breakLineCode + ` `.repeat(n) : _breakLineCode);
+ }
+ function indent(withNewLine = true) {
+ const level = ++_context.indentLevel;
+ withNewLine && _newline(level);
+ }
+ function deindent(withNewLine = true) {
+ const level = --_context.indentLevel;
+ withNewLine && _newline(level);
+ }
+ function newline() {
+ _newline(_context.indentLevel);
+ }
+ const helper = (key) => `_${key}`;
+ const needIndent = () => _context.needIndent;
+ return {
+ context,
+ push,
+ indent,
+ deindent,
+ newline,
+ helper,
+ needIndent
+ };
+ }
+ function generateLinkedNode(generator, node) {
+ const { helper } = generator;
+ generator.push(`${helper("linked" /* HelperNameMap.LINKED */)}(`);
+ generateNode(generator, node.key);
+ if (node.modifier) {
+ generator.push(`, `);
+ generateNode(generator, node.modifier);
+ generator.push(`, _type`);
+ }
+ else {
+ generator.push(`, undefined, _type`);
+ }
+ generator.push(`)`);
+ }
+ function generateMessageNode(generator, node) {
+ const { helper, needIndent } = generator;
+ generator.push(`${helper("normalize" /* HelperNameMap.NORMALIZE */)}([`);
+ generator.indent(needIndent());
+ const length = node.items.length;
+ for (let i = 0; i < length; i++) {
+ generateNode(generator, node.items[i]);
+ if (i === length - 1) {
+ break;
+ }
+ generator.push(', ');
+ }
+ generator.deindent(needIndent());
+ generator.push('])');
+ }
+ function generatePluralNode(generator, node) {
+ const { helper, needIndent } = generator;
+ if (node.cases.length > 1) {
+ generator.push(`${helper("plural" /* HelperNameMap.PLURAL */)}([`);
+ generator.indent(needIndent());
+ const length = node.cases.length;
+ for (let i = 0; i < length; i++) {
+ generateNode(generator, node.cases[i]);
+ if (i === length - 1) {
+ break;
+ }
+ generator.push(', ');
+ }
+ generator.deindent(needIndent());
+ generator.push(`])`);
+ }
+ }
+ function generateResource(generator, node) {
+ if (node.body) {
+ generateNode(generator, node.body);
+ }
+ else {
+ generator.push('null');
+ }
+ }
+ function generateNode(generator, node) {
+ const { helper } = generator;
+ switch (node.type) {
+ case 0 /* NodeTypes.Resource */:
+ generateResource(generator, node);
+ break;
+ case 1 /* NodeTypes.Plural */:
+ generatePluralNode(generator, node);
+ break;
+ case 2 /* NodeTypes.Message */:
+ generateMessageNode(generator, node);
+ break;
+ case 6 /* NodeTypes.Linked */:
+ generateLinkedNode(generator, node);
+ break;
+ case 8 /* NodeTypes.LinkedModifier */:
+ generator.push(JSON.stringify(node.value), node);
+ break;
+ case 7 /* NodeTypes.LinkedKey */:
+ generator.push(JSON.stringify(node.value), node);
+ break;
+ case 5 /* NodeTypes.List */:
+ generator.push(`${helper("interpolate" /* HelperNameMap.INTERPOLATE */)}(${helper("list" /* HelperNameMap.LIST */)}(${node.index}))`, node);
+ break;
+ case 4 /* NodeTypes.Named */:
+ generator.push(`${helper("interpolate" /* HelperNameMap.INTERPOLATE */)}(${helper("named" /* HelperNameMap.NAMED */)}(${JSON.stringify(node.key)}))`, node);
+ break;
+ case 9 /* NodeTypes.Literal */:
+ generator.push(JSON.stringify(node.value), node);
+ break;
+ case 3 /* NodeTypes.Text */:
+ generator.push(JSON.stringify(node.value), node);
+ break;
+ default:
+ {
+ throw createCompileError(CompileErrorCodes.UNHANDLED_CODEGEN_NODE_TYPE, null, {
+ domain: ERROR_DOMAIN,
+ args: [node.type]
+ });
+ }
+ }
+ }
+ // generate code from AST
+ const generate = (ast, options = {}) => {
+ const mode = isString(options.mode) ? options.mode : 'normal';
+ const filename = isString(options.filename)
+ ? options.filename
+ : 'message.intl';
+ const sourceMap = !!options.sourceMap;
+ // prettier-ignore
+ const breakLineCode = options.breakLineCode != null
+ ? options.breakLineCode
+ : mode === 'arrow'
+ ? ';'
+ : '\n';
+ const needIndent = options.needIndent ? options.needIndent : mode !== 'arrow';
+ const helpers = ast.helpers || [];
+ const generator = createCodeGenerator(ast, {
+ mode,
+ filename,
+ sourceMap,
+ breakLineCode,
+ needIndent
+ });
+ generator.push(mode === 'normal' ? `function __msg__ (ctx) {` : `(ctx) => {`);
+ generator.indent(needIndent);
+ if (helpers.length > 0) {
+ generator.push(`const { ${join(helpers.map(s => `${s}: _${s}`), ', ')} } = ctx`);
+ generator.newline();
+ }
+ generator.push(`return `);
+ generateNode(generator, ast);
+ generator.deindent(needIndent);
+ generator.push(`}`);
+ delete ast.helpers;
+ const { code, map } = generator.context();
+ return {
+ ast,
+ code,
+ map: map ? map.toJSON() : undefined // eslint-disable-line @typescript-eslint/no-explicit-any
+ };
+ };
+
+ function baseCompile$1(source, options = {}) {
+ const assignedOptions = assign({}, options);
+ const jit = !!assignedOptions.jit;
+ const enalbeMinify = !!assignedOptions.minify;
+ const enambeOptimize = assignedOptions.optimize == null ? true : assignedOptions.optimize;
+ // parse source codes
+ const parser = createParser(assignedOptions);
+ const ast = parser.parse(source);
+ if (!jit) {
+ // transform ASTs
+ transform(ast, assignedOptions);
+ // generate javascript codes
+ return generate(ast, assignedOptions);
+ }
+ else {
+ // optimize ASTs
+ enambeOptimize && optimize(ast);
+ // minimize ASTs
+ enalbeMinify && minify(ast);
+ // In JIT mode, no ast transform, no code generation.
+ return { ast, code: '' };
+ }
+ }
+
+ function isMessageAST(val) {
+ return (isObject(val) &&
+ resolveType(val) === 0 &&
+ (hasOwn(val, 'b') || hasOwn(val, 'body')));
+ }
+ const PROPS_BODY = ['b', 'body'];
+ function resolveBody(node) {
+ return resolveProps(node, PROPS_BODY);
+ }
+ const PROPS_CASES = ['c', 'cases'];
+ function resolveCases(node) {
+ return resolveProps(node, PROPS_CASES, []);
+ }
+ const PROPS_STATIC = ['s', 'static'];
+ function resolveStatic(node) {
+ return resolveProps(node, PROPS_STATIC);
+ }
+ const PROPS_ITEMS = ['i', 'items'];
+ function resolveItems(node) {
+ return resolveProps(node, PROPS_ITEMS, []);
+ }
+ const PROPS_TYPE = ['t', 'type'];
+ function resolveType(node) {
+ return resolveProps(node, PROPS_TYPE);
+ }
+ const PROPS_VALUE = ['v', 'value'];
+ function resolveValue$1(node, type) {
+ const resolved = resolveProps(node, PROPS_VALUE);
+ if (resolved != null) {
+ return resolved;
+ }
+ else {
+ throw createUnhandleNodeError(type);
+ }
+ }
+ const PROPS_MODIFIER = ['m', 'modifier'];
+ function resolveLinkedModifier(node) {
+ return resolveProps(node, PROPS_MODIFIER);
+ }
+ const PROPS_KEY = ['k', 'key'];
+ function resolveLinkedKey(node) {
+ const resolved = resolveProps(node, PROPS_KEY);
+ if (resolved) {
+ return resolved;
+ }
+ else {
+ throw createUnhandleNodeError(6 /* NodeTypes.Linked */);
+ }
+ }
+ function resolveProps(node, props, defaultValue) {
+ for (let i = 0; i < props.length; i++) {
+ const prop = props[i];
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
+ if (hasOwn(node, prop) && node[prop] != null) {
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
+ return node[prop];
+ }
+ }
+ return defaultValue;
+ }
+ const AST_NODE_PROPS_KEYS = [
+ ...PROPS_BODY,
+ ...PROPS_CASES,
+ ...PROPS_STATIC,
+ ...PROPS_ITEMS,
+ ...PROPS_KEY,
+ ...PROPS_MODIFIER,
+ ...PROPS_VALUE,
+ ...PROPS_TYPE
+ ];
+ function createUnhandleNodeError(type) {
+ return new Error(`unhandled node type: ${type}`);
+ }
+
+ function format(ast) {
+ const msg = (ctx) => formatParts(ctx, ast);
+ return msg;
+ }
+ function formatParts(ctx, ast) {
+ const body = resolveBody(ast);
+ if (body == null) {
+ throw createUnhandleNodeError(0 /* NodeTypes.Resource */);
+ }
+ const type = resolveType(body);
+ if (type === 1 /* NodeTypes.Plural */) {
+ const plural = body;
+ const cases = resolveCases(plural);
+ return ctx.plural(cases.reduce((messages, c) => [
+ ...messages,
+ formatMessageParts(ctx, c)
+ ], []));
+ }
+ else {
+ return formatMessageParts(ctx, body);
+ }
+ }
+ function formatMessageParts(ctx, node) {
+ const static_ = resolveStatic(node);
+ if (static_ != null) {
+ return ctx.type === 'text'
+ ? static_
+ : ctx.normalize([static_]);
+ }
+ else {
+ const messages = resolveItems(node).reduce((acm, c) => [...acm, formatMessagePart(ctx, c)], []);
+ return ctx.normalize(messages);
+ }
+ }
+ function formatMessagePart(ctx, node) {
+ const type = resolveType(node);
+ switch (type) {
+ case 3 /* NodeTypes.Text */: {
+ return resolveValue$1(node, type);
+ }
+ case 9 /* NodeTypes.Literal */: {
+ return resolveValue$1(node, type);
+ }
+ case 4 /* NodeTypes.Named */: {
+ const named = node;
+ if (hasOwn(named, 'k') && named.k) {
+ return ctx.interpolate(ctx.named(named.k));
+ }
+ if (hasOwn(named, 'key') && named.key) {
+ return ctx.interpolate(ctx.named(named.key));
+ }
+ throw createUnhandleNodeError(type);
+ }
+ case 5 /* NodeTypes.List */: {
+ const list = node;
+ if (hasOwn(list, 'i') && isNumber(list.i)) {
+ return ctx.interpolate(ctx.list(list.i));
+ }
+ if (hasOwn(list, 'index') && isNumber(list.index)) {
+ return ctx.interpolate(ctx.list(list.index));
+ }
+ throw createUnhandleNodeError(type);
+ }
+ case 6 /* NodeTypes.Linked */: {
+ const linked = node;
+ const modifier = resolveLinkedModifier(linked);
+ const key = resolveLinkedKey(linked);
+ return ctx.linked(formatMessagePart(ctx, key), modifier ? formatMessagePart(ctx, modifier) : undefined, ctx.type);
+ }
+ case 7 /* NodeTypes.LinkedKey */: {
+ return resolveValue$1(node, type);
+ }
+ case 8 /* NodeTypes.LinkedModifier */: {
+ return resolveValue$1(node, type);
+ }
+ default:
+ throw new Error(`unhandled node on format message part: ${type}`);
+ }
+ }
+
+ const WARN_MESSAGE = `Detected HTML in '{source}' message. Recommend not using HTML messages to avoid XSS.`;
+ function checkHtmlMessage(source, warnHtmlMessage) {
+ if (warnHtmlMessage && detectHtmlTag(source)) {
+ warn(format$1(WARN_MESSAGE, { source }));
+ }
+ }
+ const defaultOnCacheKey = (message) => message;
+ let compileCache = create();
+ function baseCompile(message, options = {}) {
+ // error detecting on compile
+ let detectError = false;
+ const onError = options.onError || defaultOnError;
+ options.onError = (err) => {
+ detectError = true;
+ onError(err);
+ };
+ // compile with mesasge-compiler
+ return { ...baseCompile$1(message, options), detectError };
+ }
+ /* #__NO_SIDE_EFFECTS__ */
+ function compile(message, context) {
+ if (isString(message)) {
+ // check HTML message
+ const warnHtmlMessage = isBoolean(context.warnHtmlMessage)
+ ? context.warnHtmlMessage
+ : true;
+ checkHtmlMessage(message, warnHtmlMessage);
+ // check caches
+ const onCacheKey = context.onCacheKey || defaultOnCacheKey;
+ const cacheKey = onCacheKey(message);
+ const cached = compileCache[cacheKey];
+ if (cached) {
+ return cached;
+ }
+ // compile with JIT mode
+ const { ast, detectError } = baseCompile(message, {
+ ...context,
+ location: true,
+ jit: true
+ });
+ // compose message function from AST
+ const msg = format(ast);
+ // if occurred compile error, don't cache
+ return !detectError
+ ? (compileCache[cacheKey] = msg)
+ : msg;
+ }
+ else {
+ if (!isMessageAST(message)) {
+ warn(`the message that is resolve with key '${context.key}' is not supported for jit compilation`);
+ return (() => message);
+ }
+ // AST case (passed from bundler)
+ const cacheKey = message.cacheKey;
+ if (cacheKey) {
+ const cached = compileCache[cacheKey];
+ if (cached) {
+ return cached;
+ }
+ // compose message function from message (AST)
+ return (compileCache[cacheKey] =
+ format(message));
+ }
+ else {
+ return format(message);
+ }
+ }
+ }
+
+ let devtools = null;
+ function setDevToolsHook(hook) {
+ devtools = hook;
+ }
+ function initI18nDevTools(i18n, version, meta) {
+ // TODO: queue if devtools is undefined
+ devtools &&
+ devtools.emit('i18n:init', {
+ timestamp: Date.now(),
+ i18n,
+ version,
+ meta
+ });
+ }
+ const translateDevTools =
+ /* #__PURE__*/ createDevToolsHook('function:translate');
+ function createDevToolsHook(hook) {
+ return (payloads) => devtools && devtools.emit(hook, payloads);
+ }
+
+ const CoreErrorCodes = {
+ INVALID_ARGUMENT: COMPILE_ERROR_CODES_EXTEND_POINT, // 17
+ INVALID_DATE_ARGUMENT: 18,
+ INVALID_ISO_DATE_ARGUMENT: 19,
+ NOT_SUPPORT_NON_STRING_MESSAGE: 20,
+ NOT_SUPPORT_LOCALE_PROMISE_VALUE: 21,
+ NOT_SUPPORT_LOCALE_ASYNC_FUNCTION: 22,
+ NOT_SUPPORT_LOCALE_TYPE: 23
+ };
+ const CORE_ERROR_CODES_EXTEND_POINT = 24;
+ function createCoreError(code) {
+ return createCompileError(code, null, { messages: errorMessages$1 } );
+ }
+ /** @internal */
+ const errorMessages$1 = {
+ [CoreErrorCodes.INVALID_ARGUMENT]: 'Invalid arguments',
+ [CoreErrorCodes.INVALID_DATE_ARGUMENT]: 'The date provided is an invalid Date object.' +
+ 'Make sure your Date represents a valid date.',
+ [CoreErrorCodes.INVALID_ISO_DATE_ARGUMENT]: 'The argument provided is not a valid ISO date string',
+ [CoreErrorCodes.NOT_SUPPORT_NON_STRING_MESSAGE]: 'Not support non-string message',
+ [CoreErrorCodes.NOT_SUPPORT_LOCALE_PROMISE_VALUE]: 'cannot support promise value',
+ [CoreErrorCodes.NOT_SUPPORT_LOCALE_ASYNC_FUNCTION]: 'cannot support async function',
+ [CoreErrorCodes.NOT_SUPPORT_LOCALE_TYPE]: 'cannot support locale type'
+ };
+
+ /** @internal */
+ function getLocale(context, options) {
+ return options.locale != null
+ ? resolveLocale(options.locale)
+ : resolveLocale(context.locale);
+ }
+ let _resolveLocale;
+ /** @internal */
+ function resolveLocale(locale) {
+ if (isString(locale)) {
+ return locale;
+ }
+ else {
+ if (isFunction(locale)) {
+ if (locale.resolvedOnce && _resolveLocale != null) {
+ return _resolveLocale;
+ }
+ else if (locale.constructor.name === 'Function') {
+ const resolve = locale();
+ if (isPromise(resolve)) {
+ throw createCoreError(CoreErrorCodes.NOT_SUPPORT_LOCALE_PROMISE_VALUE);
+ }
+ return (_resolveLocale = resolve);
+ }
+ else {
+ throw createCoreError(CoreErrorCodes.NOT_SUPPORT_LOCALE_ASYNC_FUNCTION);
+ }
+ }
+ else {
+ throw createCoreError(CoreErrorCodes.NOT_SUPPORT_LOCALE_TYPE);
+ }
+ }
+ }
+ /**
+ * Fallback with simple implemenation
+ *
+ * @remarks
+ * A fallback locale function implemented with a simple fallback algorithm.
+ *
+ * Basically, it returns the value as specified in the `fallbackLocale` props, and is processed with the fallback inside intlify.
+ *
+ * @param ctx - A {@link CoreContext | context}
+ * @param fallback - A {@link FallbackLocale | fallback locale}
+ * @param start - A starting {@link Locale | locale}
+ *
+ * @returns Fallback locales
+ *
+ * @VueI18nGeneral
+ */
+ function fallbackWithSimple(ctx, fallback, start) {
+ // prettier-ignore
+ return [...new Set([
+ start,
+ ...(isArray(fallback)
+ ? fallback
+ : isObject(fallback)
+ ? Object.keys(fallback)
+ : isString(fallback)
+ ? [fallback]
+ : [start])
+ ])];
+ }
+ /**
+ * Fallback with locale chain
+ *
+ * @remarks
+ * A fallback locale function implemented with a fallback chain algorithm. It's used in VueI18n as default.
+ *
+ * @param ctx - A {@link CoreContext | context}
+ * @param fallback - A {@link FallbackLocale | fallback locale}
+ * @param start - A starting {@link Locale | locale}
+ *
+ * @returns Fallback locales
+ *
+ * @VueI18nSee [Fallbacking](../guide/essentials/fallback)
+ *
+ * @VueI18nGeneral
+ */
+ function fallbackWithLocaleChain(ctx, fallback, start) {
+ const startLocale = isString(start) ? start : DEFAULT_LOCALE;
+ const context = ctx;
+ if (!context.__localeChainCache) {
+ context.__localeChainCache = new Map();
+ }
+ let chain = context.__localeChainCache.get(startLocale);
+ if (!chain) {
+ chain = [];
+ // first block defined by start
+ let block = [start];
+ // while any intervening block found
+ while (isArray(block)) {
+ block = appendBlockToChain(chain, block, fallback);
+ }
+ // prettier-ignore
+ // last block defined by default
+ const defaults = isArray(fallback) || !isPlainObject(fallback)
+ ? fallback
+ : fallback['default']
+ ? fallback['default']
+ : null;
+ // convert defaults to array
+ block = isString(defaults) ? [defaults] : defaults;
+ if (isArray(block)) {
+ appendBlockToChain(chain, block, false);
+ }
+ context.__localeChainCache.set(startLocale, chain);
+ }
+ return chain;
+ }
+ function appendBlockToChain(chain, block, blocks) {
+ let follow = true;
+ for (let i = 0; i < block.length && isBoolean(follow); i++) {
+ const locale = block[i];
+ if (isString(locale)) {
+ follow = appendLocaleToChain(chain, block[i], blocks);
+ }
+ }
+ return follow;
+ }
+ function appendLocaleToChain(chain, locale, blocks) {
+ let follow;
+ const tokens = locale.split('-');
+ do {
+ const target = tokens.join('-');
+ follow = appendItemToChain(chain, target, blocks);
+ tokens.splice(-1, 1);
+ } while (tokens.length && follow === true);
+ return follow;
+ }
+ function appendItemToChain(chain, target, blocks) {
+ let follow = false;
+ if (!chain.includes(target)) {
+ follow = true;
+ if (target) {
+ follow = target[target.length - 1] !== '!';
+ const locale = target.replace(/!/g, '');
+ chain.push(locale);
+ if ((isArray(blocks) || isPlainObject(blocks)) &&
+ blocks[locale] // eslint-disable-line @typescript-eslint/no-explicit-any
+ ) {
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
+ follow = blocks[locale];
+ }
+ }
+ }
+ return follow;
+ }
+
+ const pathStateMachine = [];
+ pathStateMachine[0 /* States.BEFORE_PATH */] = {
+ ["w" /* PathCharTypes.WORKSPACE */]: [0 /* States.BEFORE_PATH */],
+ ["i" /* PathCharTypes.IDENT */]: [3 /* States.IN_IDENT */, 0 /* Actions.APPEND */],
+ ["[" /* PathCharTypes.LEFT_BRACKET */]: [4 /* States.IN_SUB_PATH */],
+ ["o" /* PathCharTypes.END_OF_FAIL */]: [7 /* States.AFTER_PATH */]
+ };
+ pathStateMachine[1 /* States.IN_PATH */] = {
+ ["w" /* PathCharTypes.WORKSPACE */]: [1 /* States.IN_PATH */],
+ ["." /* PathCharTypes.DOT */]: [2 /* States.BEFORE_IDENT */],
+ ["[" /* PathCharTypes.LEFT_BRACKET */]: [4 /* States.IN_SUB_PATH */],
+ ["o" /* PathCharTypes.END_OF_FAIL */]: [7 /* States.AFTER_PATH */]
+ };
+ pathStateMachine[2 /* States.BEFORE_IDENT */] = {
+ ["w" /* PathCharTypes.WORKSPACE */]: [2 /* States.BEFORE_IDENT */],
+ ["i" /* PathCharTypes.IDENT */]: [3 /* States.IN_IDENT */, 0 /* Actions.APPEND */],
+ ["0" /* PathCharTypes.ZERO */]: [3 /* States.IN_IDENT */, 0 /* Actions.APPEND */]
+ };
+ pathStateMachine[3 /* States.IN_IDENT */] = {
+ ["i" /* PathCharTypes.IDENT */]: [3 /* States.IN_IDENT */, 0 /* Actions.APPEND */],
+ ["0" /* PathCharTypes.ZERO */]: [3 /* States.IN_IDENT */, 0 /* Actions.APPEND */],
+ ["w" /* PathCharTypes.WORKSPACE */]: [1 /* States.IN_PATH */, 1 /* Actions.PUSH */],
+ ["." /* PathCharTypes.DOT */]: [2 /* States.BEFORE_IDENT */, 1 /* Actions.PUSH */],
+ ["[" /* PathCharTypes.LEFT_BRACKET */]: [4 /* States.IN_SUB_PATH */, 1 /* Actions.PUSH */],
+ ["o" /* PathCharTypes.END_OF_FAIL */]: [7 /* States.AFTER_PATH */, 1 /* Actions.PUSH */]
+ };
+ pathStateMachine[4 /* States.IN_SUB_PATH */] = {
+ ["'" /* PathCharTypes.SINGLE_QUOTE */]: [5 /* States.IN_SINGLE_QUOTE */, 0 /* Actions.APPEND */],
+ ["\"" /* PathCharTypes.DOUBLE_QUOTE */]: [6 /* States.IN_DOUBLE_QUOTE */, 0 /* Actions.APPEND */],
+ ["[" /* PathCharTypes.LEFT_BRACKET */]: [
+ 4 /* States.IN_SUB_PATH */,
+ 2 /* Actions.INC_SUB_PATH_DEPTH */
+ ],
+ ["]" /* PathCharTypes.RIGHT_BRACKET */]: [1 /* States.IN_PATH */, 3 /* Actions.PUSH_SUB_PATH */],
+ ["o" /* PathCharTypes.END_OF_FAIL */]: 8 /* States.ERROR */,
+ ["l" /* PathCharTypes.ELSE */]: [4 /* States.IN_SUB_PATH */, 0 /* Actions.APPEND */]
+ };
+ pathStateMachine[5 /* States.IN_SINGLE_QUOTE */] = {
+ ["'" /* PathCharTypes.SINGLE_QUOTE */]: [4 /* States.IN_SUB_PATH */, 0 /* Actions.APPEND */],
+ ["o" /* PathCharTypes.END_OF_FAIL */]: 8 /* States.ERROR */,
+ ["l" /* PathCharTypes.ELSE */]: [5 /* States.IN_SINGLE_QUOTE */, 0 /* Actions.APPEND */]
+ };
+ pathStateMachine[6 /* States.IN_DOUBLE_QUOTE */] = {
+ ["\"" /* PathCharTypes.DOUBLE_QUOTE */]: [4 /* States.IN_SUB_PATH */, 0 /* Actions.APPEND */],
+ ["o" /* PathCharTypes.END_OF_FAIL */]: 8 /* States.ERROR */,
+ ["l" /* PathCharTypes.ELSE */]: [6 /* States.IN_DOUBLE_QUOTE */, 0 /* Actions.APPEND */]
+ };
+ /**
+ * Check if an expression is a literal value.
+ */
+ const literalValueRE = /^\s?(?:true|false|-?[\d.]+|'[^']*'|"[^"]*")\s?$/;
+ function isLiteral(exp) {
+ return literalValueRE.test(exp);
+ }
+ /**
+ * Strip quotes from a string
+ */
+ function stripQuotes(str) {
+ const a = str.charCodeAt(0);
+ const b = str.charCodeAt(str.length - 1);
+ return a === b && (a === 0x22 || a === 0x27) ? str.slice(1, -1) : str;
+ }
+ /**
+ * Determine the type of a character in a keypath.
+ */
+ function getPathCharType(ch) {
+ if (ch === undefined || ch === null) {
+ return "o" /* PathCharTypes.END_OF_FAIL */;
+ }
+ const code = ch.charCodeAt(0);
+ switch (code) {
+ case 0x5b: // [
+ case 0x5d: // ]
+ case 0x2e: // .
+ case 0x22: // "
+ case 0x27: // '
+ return ch;
+ case 0x5f: // _
+ case 0x24: // $
+ case 0x2d: // -
+ return "i" /* PathCharTypes.IDENT */;
+ case 0x09: // Tab (HT)
+ case 0x0a: // Newline (LF)
+ case 0x0d: // Return (CR)
+ case 0xa0: // No-break space (NBSP)
+ case 0xfeff: // Byte Order Mark (BOM)
+ case 0x2028: // Line Separator (LS)
+ case 0x2029: // Paragraph Separator (PS)
+ return "w" /* PathCharTypes.WORKSPACE */;
+ }
+ return "i" /* PathCharTypes.IDENT */;
+ }
+ /**
+ * Format a subPath, return its plain form if it is
+ * a literal string or number. Otherwise prepend the
+ * dynamic indicator (*).
+ */
+ function formatSubPath(path) {
+ const trimmed = path.trim();
+ // invalid leading 0
+ if (path.charAt(0) === '0' && isNaN(parseInt(path))) {
+ return false;
+ }
+ return isLiteral(trimmed)
+ ? stripQuotes(trimmed)
+ : "*" /* PathCharTypes.ASTARISK */ + trimmed;
+ }
+ /**
+ * Parse a string path into an array of segments
+ */
+ function parse(path) {
+ const keys = [];
+ let index = -1;
+ let mode = 0 /* States.BEFORE_PATH */;
+ let subPathDepth = 0;
+ let c;
+ let key; // eslint-disable-line
+ let newChar;
+ let type;
+ let transition;
+ let action;
+ let typeMap;
+ const actions = [];
+ actions[0 /* Actions.APPEND */] = () => {
+ if (key === undefined) {
+ key = newChar;
+ }
+ else {
+ key += newChar;
+ }
+ };
+ actions[1 /* Actions.PUSH */] = () => {
+ if (key !== undefined) {
+ keys.push(key);
+ key = undefined;
+ }
+ };
+ actions[2 /* Actions.INC_SUB_PATH_DEPTH */] = () => {
+ actions[0 /* Actions.APPEND */]();
+ subPathDepth++;
+ };
+ actions[3 /* Actions.PUSH_SUB_PATH */] = () => {
+ if (subPathDepth > 0) {
+ subPathDepth--;
+ mode = 4 /* States.IN_SUB_PATH */;
+ actions[0 /* Actions.APPEND */]();
+ }
+ else {
+ subPathDepth = 0;
+ if (key === undefined) {
+ return false;
+ }
+ key = formatSubPath(key);
+ if (key === false) {
+ return false;
+ }
+ else {
+ actions[1 /* Actions.PUSH */]();
+ }
+ }
+ };
+ function maybeUnescapeQuote() {
+ const nextChar = path[index + 1];
+ if ((mode === 5 /* States.IN_SINGLE_QUOTE */ &&
+ nextChar === "'" /* PathCharTypes.SINGLE_QUOTE */) ||
+ (mode === 6 /* States.IN_DOUBLE_QUOTE */ &&
+ nextChar === "\"" /* PathCharTypes.DOUBLE_QUOTE */)) {
+ index++;
+ newChar = '\\' + nextChar;
+ actions[0 /* Actions.APPEND */]();
+ return true;
+ }
+ }
+ while (mode !== null) {
+ index++;
+ c = path[index];
+ if (c === '\\' && maybeUnescapeQuote()) {
+ continue;
+ }
+ type = getPathCharType(c);
+ typeMap = pathStateMachine[mode];
+ transition = typeMap[type] || typeMap["l" /* PathCharTypes.ELSE */] || 8 /* States.ERROR */;
+ // check parse error
+ if (transition === 8 /* States.ERROR */) {
+ return;
+ }
+ mode = transition[0];
+ if (transition[1] !== undefined) {
+ action = actions[transition[1]];
+ if (action) {
+ newChar = c;
+ if (action() === false) {
+ return;
+ }
+ }
+ }
+ // check parse finish
+ if (mode === 7 /* States.AFTER_PATH */) {
+ return keys;
+ }
+ }
+ }
+ // path token cache
+ const cache = new Map();
+ /**
+ * key-value message resolver
+ *
+ * @remarks
+ * Resolves messages with the key-value structure. Note that messages with a hierarchical structure such as objects cannot be resolved
+ *
+ * @param obj - A target object to be resolved with path
+ * @param path - A {@link Path | path} to resolve the value of message
+ *
+ * @returns A resolved {@link PathValue | path value}
+ *
+ * @VueI18nGeneral
+ */
+ function resolveWithKeyValue(obj, path) {
+ return isObject(obj) ? obj[path] : null;
+ }
+ /**
+ * message resolver
+ *
+ * @remarks
+ * Resolves messages. messages with a hierarchical structure such as objects can be resolved. This resolver is used in VueI18n as default.
+ *
+ * @param obj - A target object to be resolved with path
+ * @param path - A {@link Path | path} to resolve the value of message
+ *
+ * @returns A resolved {@link PathValue | path value}
+ *
+ * @VueI18nGeneral
+ */
+ function resolveValue(obj, path) {
+ // check object
+ if (!isObject(obj)) {
+ return null;
+ }
+ // parse path
+ let hit = cache.get(path);
+ if (!hit) {
+ hit = parse(path);
+ if (hit) {
+ cache.set(path, hit);
+ }
+ }
+ // check hit
+ if (!hit) {
+ return null;
+ }
+ // resolve path value
+ const len = hit.length;
+ let last = obj;
+ let i = 0;
+ while (i < len) {
+ const key = hit[i];
+ /**
+ * NOTE:
+ * if `key` is intlify message format AST node key and `last` is intlify message format AST, skip it.
+ * because the AST node is not a key-value structure.
+ */
+ if (AST_NODE_PROPS_KEYS.includes(key) && isMessageAST(last)) {
+ return null;
+ }
+ const val = last[key];
+ if (val === undefined) {
+ return null;
+ }
+ if (isFunction(last)) {
+ return null;
+ }
+ last = val;
+ i++;
+ }
+ return last;
+ }
+
+ const CoreWarnCodes = {
+ NOT_FOUND_KEY: 1,
+ FALLBACK_TO_TRANSLATE: 2,
+ CANNOT_FORMAT_NUMBER: 3,
+ FALLBACK_TO_NUMBER_FORMAT: 4,
+ CANNOT_FORMAT_DATE: 5,
+ FALLBACK_TO_DATE_FORMAT: 6,
+ EXPERIMENTAL_CUSTOM_MESSAGE_COMPILER: 7
+ };
+ const CORE_WARN_CODES_EXTEND_POINT = 8;
+ /** @internal */
+ const warnMessages$1 = {
+ [CoreWarnCodes.NOT_FOUND_KEY]: `Not found '{key}' key in '{locale}' locale messages.`,
+ [CoreWarnCodes.FALLBACK_TO_TRANSLATE]: `Fall back to translate '{key}' key with '{target}' locale.`,
+ [CoreWarnCodes.CANNOT_FORMAT_NUMBER]: `Cannot format a number value due to not supported Intl.NumberFormat.`,
+ [CoreWarnCodes.FALLBACK_TO_NUMBER_FORMAT]: `Fall back to number format '{key}' key with '{target}' locale.`,
+ [CoreWarnCodes.CANNOT_FORMAT_DATE]: `Cannot format a date value due to not supported Intl.DateTimeFormat.`,
+ [CoreWarnCodes.FALLBACK_TO_DATE_FORMAT]: `Fall back to datetime format '{key}' key with '{target}' locale.`,
+ [CoreWarnCodes.EXPERIMENTAL_CUSTOM_MESSAGE_COMPILER]: `This project is using Custom Message Compiler, which is an experimental feature. It may receive breaking changes or be removed in the future.`
+ };
+ function getWarnMessage$1(code, ...args) {
+ return format$1(warnMessages$1[code], ...args);
+ }
+
+ /* eslint-disable @typescript-eslint/no-explicit-any */
+ /**
+ * Intlify core-base version
+ * @internal
+ */
+ const VERSION$1 = '11.1.11';
+ const NOT_REOSLVED = -1;
+ const DEFAULT_LOCALE = 'en-US';
+ const MISSING_RESOLVE_VALUE = '';
+ const capitalize = (str) => `${str.charAt(0).toLocaleUpperCase()}${str.substr(1)}`;
+ function getDefaultLinkedModifiers() {
+ return {
+ upper: (val, type) => {
+ // prettier-ignore
+ return type === 'text' && isString(val)
+ ? val.toUpperCase()
+ : type === 'vnode' && isObject(val) && '__v_isVNode' in val
+ ? val.children.toUpperCase()
+ : val;
+ },
+ lower: (val, type) => {
+ // prettier-ignore
+ return type === 'text' && isString(val)
+ ? val.toLowerCase()
+ : type === 'vnode' && isObject(val) && '__v_isVNode' in val
+ ? val.children.toLowerCase()
+ : val;
+ },
+ capitalize: (val, type) => {
+ // prettier-ignore
+ return (type === 'text' && isString(val)
+ ? capitalize(val)
+ : type === 'vnode' && isObject(val) && '__v_isVNode' in val
+ ? capitalize(val.children)
+ : val);
+ }
+ };
+ }
+ let _compiler;
+ function registerMessageCompiler(compiler) {
+ _compiler = compiler;
+ }
+ let _resolver;
+ /**
+ * Register the message resolver
+ *
+ * @param resolver - A {@link MessageResolver} function
+ *
+ * @VueI18nGeneral
+ */
+ function registerMessageResolver(resolver) {
+ _resolver = resolver;
+ }
+ let _fallbacker;
+ /**
+ * Register the locale fallbacker
+ *
+ * @param fallbacker - A {@link LocaleFallbacker} function
+ *
+ * @VueI18nGeneral
+ */
+ function registerLocaleFallbacker(fallbacker) {
+ _fallbacker = fallbacker;
+ }
+ // Additional Meta for Intlify DevTools
+ let _additionalMeta = null;
+ /* #__NO_SIDE_EFFECTS__ */
+ const setAdditionalMeta = (meta) => {
+ _additionalMeta = meta;
+ };
+ /* #__NO_SIDE_EFFECTS__ */
+ const getAdditionalMeta = () => _additionalMeta;
+ let _fallbackContext = null;
+ const setFallbackContext = (context) => {
+ _fallbackContext = context;
+ };
+ const getFallbackContext = () => _fallbackContext;
+ // ID for CoreContext
+ let _cid = 0;
+ function createCoreContext(options = {}) {
+ // setup options
+ const onWarn = isFunction(options.onWarn) ? options.onWarn : warn;
+ const version = isString(options.version) ? options.version : VERSION$1;
+ const locale = isString(options.locale) || isFunction(options.locale)
+ ? options.locale
+ : DEFAULT_LOCALE;
+ const _locale = isFunction(locale) ? DEFAULT_LOCALE : locale;
+ const fallbackLocale = isArray(options.fallbackLocale) ||
+ isPlainObject(options.fallbackLocale) ||
+ isString(options.fallbackLocale) ||
+ options.fallbackLocale === false
+ ? options.fallbackLocale
+ : _locale;
+ const messages = isPlainObject(options.messages)
+ ? options.messages
+ : createResources(_locale);
+ const datetimeFormats = isPlainObject(options.datetimeFormats)
+ ? options.datetimeFormats
+ : createResources(_locale)
+ ;
+ const numberFormats = isPlainObject(options.numberFormats)
+ ? options.numberFormats
+ : createResources(_locale)
+ ;
+ const modifiers = assign(create(), options.modifiers, getDefaultLinkedModifiers());
+ const pluralRules = options.pluralRules || create();
+ const missing = isFunction(options.missing) ? options.missing : null;
+ const missingWarn = isBoolean(options.missingWarn) || isRegExp(options.missingWarn)
+ ? options.missingWarn
+ : true;
+ const fallbackWarn = isBoolean(options.fallbackWarn) || isRegExp(options.fallbackWarn)
+ ? options.fallbackWarn
+ : true;
+ const fallbackFormat = !!options.fallbackFormat;
+ const unresolving = !!options.unresolving;
+ const postTranslation = isFunction(options.postTranslation)
+ ? options.postTranslation
+ : null;
+ const processor = isPlainObject(options.processor) ? options.processor : null;
+ const warnHtmlMessage = isBoolean(options.warnHtmlMessage)
+ ? options.warnHtmlMessage
+ : true;
+ const escapeParameter = !!options.escapeParameter;
+ const messageCompiler = isFunction(options.messageCompiler)
+ ? options.messageCompiler
+ : _compiler;
+ const messageResolver = isFunction(options.messageResolver)
+ ? options.messageResolver
+ : _resolver || resolveWithKeyValue;
+ const localeFallbacker = isFunction(options.localeFallbacker)
+ ? options.localeFallbacker
+ : _fallbacker || fallbackWithSimple;
+ const fallbackContext = isObject(options.fallbackContext)
+ ? options.fallbackContext
+ : undefined;
+ // setup internal options
+ const internalOptions = options;
+ const __datetimeFormatters = isObject(internalOptions.__datetimeFormatters)
+ ? internalOptions.__datetimeFormatters
+ : new Map()
+ ;
+ const __numberFormatters = isObject(internalOptions.__numberFormatters)
+ ? internalOptions.__numberFormatters
+ : new Map()
+ ;
+ const __meta = isObject(internalOptions.__meta) ? internalOptions.__meta : {};
+ _cid++;
+ const context = {
+ version,
+ cid: _cid,
+ locale,
+ fallbackLocale,
+ messages,
+ modifiers,
+ pluralRules,
+ missing,
+ missingWarn,
+ fallbackWarn,
+ fallbackFormat,
+ unresolving,
+ postTranslation,
+ processor,
+ warnHtmlMessage,
+ escapeParameter,
+ messageCompiler,
+ messageResolver,
+ localeFallbacker,
+ fallbackContext,
+ onWarn,
+ __meta
+ };
+ {
+ context.datetimeFormats = datetimeFormats;
+ context.numberFormats = numberFormats;
+ context.__datetimeFormatters = __datetimeFormatters;
+ context.__numberFormatters = __numberFormatters;
+ }
+ // for vue-devtools timeline event
+ {
+ context.__v_emitter =
+ internalOptions.__v_emitter != null
+ ? internalOptions.__v_emitter
+ : undefined;
+ }
+ // NOTE: experimental !!
+ {
+ initI18nDevTools(context, version, __meta);
+ }
+ return context;
+ }
+ const createResources = (locale) => ({ [locale]: create() });
+ /** @internal */
+ function isTranslateFallbackWarn(fallback, key) {
+ return fallback instanceof RegExp ? fallback.test(key) : fallback;
+ }
+ /** @internal */
+ function isTranslateMissingWarn(missing, key) {
+ return missing instanceof RegExp ? missing.test(key) : missing;
+ }
+ /** @internal */
+ function handleMissing(context, key, locale, missingWarn, type) {
+ const { missing, onWarn } = context;
+ // for vue-devtools timeline event
+ {
+ const emitter = context.__v_emitter;
+ if (emitter) {
+ emitter.emit('missing', {
+ locale,
+ key,
+ type,
+ groupId: `${type}:${key}`
+ });
+ }
+ }
+ if (missing !== null) {
+ const ret = missing(context, locale, key, type);
+ return isString(ret) ? ret : key;
+ }
+ else {
+ if (isTranslateMissingWarn(missingWarn, key)) {
+ onWarn(getWarnMessage$1(CoreWarnCodes.NOT_FOUND_KEY, { key, locale }));
+ }
+ return key;
+ }
+ }
+ /** @internal */
+ function updateFallbackLocale(ctx, locale, fallback) {
+ const context = ctx;
+ context.__localeChainCache = new Map();
+ ctx.localeFallbacker(ctx, fallback, locale);
+ }
+ /** @internal */
+ function isAlmostSameLocale(locale, compareLocale) {
+ if (locale === compareLocale)
+ return false;
+ return locale.split('-')[0] === compareLocale.split('-')[0];
+ }
+ /** @internal */
+ function isImplicitFallback(targetLocale, locales) {
+ const index = locales.indexOf(targetLocale);
+ if (index === -1) {
+ return false;
+ }
+ for (let i = index + 1; i < locales.length; i++) {
+ if (isAlmostSameLocale(targetLocale, locales[i])) {
+ return true;
+ }
+ }
+ return false;
+ }
+ /* eslint-enable @typescript-eslint/no-explicit-any */
+
+ const intlDefined = typeof Intl !== 'undefined';
+ const Availabilities = {
+ dateTimeFormat: intlDefined && typeof Intl.DateTimeFormat !== 'undefined',
+ numberFormat: intlDefined && typeof Intl.NumberFormat !== 'undefined'
+ };
+
+ // implementation of `datetime` function
+ function datetime(context, ...args) {
+ const { datetimeFormats, unresolving, fallbackLocale, onWarn, localeFallbacker } = context;
+ const { __datetimeFormatters } = context;
+ if (!Availabilities.dateTimeFormat) {
+ onWarn(getWarnMessage$1(CoreWarnCodes.CANNOT_FORMAT_DATE));
+ return MISSING_RESOLVE_VALUE;
+ }
+ const [key, value, options, overrides] = parseDateTimeArgs(...args);
+ const missingWarn = isBoolean(options.missingWarn)
+ ? options.missingWarn
+ : context.missingWarn;
+ const fallbackWarn = isBoolean(options.fallbackWarn)
+ ? options.fallbackWarn
+ : context.fallbackWarn;
+ const part = !!options.part;
+ const locale = getLocale(context, options);
+ const locales = localeFallbacker(context, // eslint-disable-line @typescript-eslint/no-explicit-any
+ fallbackLocale, locale);
+ if (!isString(key) || key === '') {
+ return new Intl.DateTimeFormat(locale, overrides).format(value);
+ }
+ // resolve format
+ let datetimeFormat = {};
+ let targetLocale;
+ let format = null;
+ let from = locale;
+ let to = null;
+ const type = 'datetime format';
+ for (let i = 0; i < locales.length; i++) {
+ targetLocale = to = locales[i];
+ if (locale !== targetLocale &&
+ isTranslateFallbackWarn(fallbackWarn, key)) {
+ onWarn(getWarnMessage$1(CoreWarnCodes.FALLBACK_TO_DATE_FORMAT, {
+ key,
+ target: targetLocale
+ }));
+ }
+ // for vue-devtools timeline event
+ if (locale !== targetLocale) {
+ const emitter = context.__v_emitter;
+ if (emitter) {
+ emitter.emit('fallback', {
+ type,
+ key,
+ from,
+ to,
+ groupId: `${type}:${key}`
+ });
+ }
+ }
+ datetimeFormat =
+ datetimeFormats[targetLocale] || {};
+ format = datetimeFormat[key];
+ if (isPlainObject(format))
+ break;
+ handleMissing(context, key, targetLocale, missingWarn, type); // eslint-disable-line @typescript-eslint/no-explicit-any
+ from = to;
+ }
+ // checking format and target locale
+ if (!isPlainObject(format) || !isString(targetLocale)) {
+ return unresolving ? NOT_REOSLVED : key;
+ }
+ let id = `${targetLocale}__${key}`;
+ if (!isEmptyObject(overrides)) {
+ id = `${id}__${JSON.stringify(overrides)}`;
+ }
+ let formatter = __datetimeFormatters.get(id);
+ if (!formatter) {
+ formatter = new Intl.DateTimeFormat(targetLocale, assign({}, format, overrides));
+ __datetimeFormatters.set(id, formatter);
+ }
+ return !part ? formatter.format(value) : formatter.formatToParts(value);
+ }
+ /** @internal */
+ const DATETIME_FORMAT_OPTIONS_KEYS = [
+ 'localeMatcher',
+ 'weekday',
+ 'era',
+ 'year',
+ 'month',
+ 'day',
+ 'hour',
+ 'minute',
+ 'second',
+ 'timeZoneName',
+ 'formatMatcher',
+ 'hour12',
+ 'timeZone',
+ 'dateStyle',
+ 'timeStyle',
+ 'calendar',
+ 'dayPeriod',
+ 'numberingSystem',
+ 'hourCycle',
+ 'fractionalSecondDigits'
+ ];
+ /** @internal */
+ function parseDateTimeArgs(...args) {
+ const [arg1, arg2, arg3, arg4] = args;
+ const options = create();
+ let overrides = create();
+ let value;
+ if (isString(arg1)) {
+ // Only allow ISO strings - other date formats are often supported,
+ // but may cause different results in different browsers.
+ const matches = arg1.match(/(\d{4}-\d{2}-\d{2})(T|\s)?(.*)/);
+ if (!matches) {
+ throw createCoreError(CoreErrorCodes.INVALID_ISO_DATE_ARGUMENT);
+ }
+ // Some browsers can not parse the iso datetime separated by space,
+ // this is a compromise solution by replace the 'T'/' ' with 'T'
+ const dateTime = matches[3]
+ ? matches[3].trim().startsWith('T')
+ ? `${matches[1].trim()}${matches[3].trim()}`
+ : `${matches[1].trim()}T${matches[3].trim()}`
+ : matches[1].trim();
+ value = new Date(dateTime);
+ try {
+ // This will fail if the date is not valid
+ value.toISOString();
+ }
+ catch {
+ throw createCoreError(CoreErrorCodes.INVALID_ISO_DATE_ARGUMENT);
+ }
+ }
+ else if (isDate(arg1)) {
+ if (isNaN(arg1.getTime())) {
+ throw createCoreError(CoreErrorCodes.INVALID_DATE_ARGUMENT);
+ }
+ value = arg1;
+ }
+ else if (isNumber(arg1)) {
+ value = arg1;
+ }
+ else {
+ throw createCoreError(CoreErrorCodes.INVALID_ARGUMENT);
+ }
+ if (isString(arg2)) {
+ options.key = arg2;
+ }
+ else if (isPlainObject(arg2)) {
+ Object.keys(arg2).forEach(key => {
+ if (DATETIME_FORMAT_OPTIONS_KEYS.includes(key)) {
+ overrides[key] = arg2[key];
+ }
+ else {
+ options[key] = arg2[key];
+ }
+ });
+ }
+ if (isString(arg3)) {
+ options.locale = arg3;
+ }
+ else if (isPlainObject(arg3)) {
+ overrides = arg3;
+ }
+ if (isPlainObject(arg4)) {
+ overrides = arg4;
+ }
+ return [options.key || '', value, options, overrides];
+ }
+ /** @internal */
+ function clearDateTimeFormat(ctx, locale, format) {
+ const context = ctx;
+ for (const key in format) {
+ const id = `${locale}__${key}`;
+ if (!context.__datetimeFormatters.has(id)) {
+ continue;
+ }
+ context.__datetimeFormatters.delete(id);
+ }
+ }
+
+ // implementation of `number` function
+ function number(context, ...args) {
+ const { numberFormats, unresolving, fallbackLocale, onWarn, localeFallbacker } = context;
+ const { __numberFormatters } = context;
+ if (!Availabilities.numberFormat) {
+ onWarn(getWarnMessage$1(CoreWarnCodes.CANNOT_FORMAT_NUMBER));
+ return MISSING_RESOLVE_VALUE;
+ }
+ const [key, value, options, overrides] = parseNumberArgs(...args);
+ const missingWarn = isBoolean(options.missingWarn)
+ ? options.missingWarn
+ : context.missingWarn;
+ const fallbackWarn = isBoolean(options.fallbackWarn)
+ ? options.fallbackWarn
+ : context.fallbackWarn;
+ const part = !!options.part;
+ const locale = getLocale(context, options);
+ const locales = localeFallbacker(context, // eslint-disable-line @typescript-eslint/no-explicit-any
+ fallbackLocale, locale);
+ if (!isString(key) || key === '') {
+ return new Intl.NumberFormat(locale, overrides).format(value);
+ }
+ // resolve format
+ let numberFormat = {};
+ let targetLocale;
+ let format = null;
+ let from = locale;
+ let to = null;
+ const type = 'number format';
+ for (let i = 0; i < locales.length; i++) {
+ targetLocale = to = locales[i];
+ if (locale !== targetLocale &&
+ isTranslateFallbackWarn(fallbackWarn, key)) {
+ onWarn(getWarnMessage$1(CoreWarnCodes.FALLBACK_TO_NUMBER_FORMAT, {
+ key,
+ target: targetLocale
+ }));
+ }
+ // for vue-devtools timeline event
+ if (locale !== targetLocale) {
+ const emitter = context.__v_emitter;
+ if (emitter) {
+ emitter.emit('fallback', {
+ type,
+ key,
+ from,
+ to,
+ groupId: `${type}:${key}`
+ });
+ }
+ }
+ numberFormat =
+ numberFormats[targetLocale] || {};
+ format = numberFormat[key];
+ if (isPlainObject(format))
+ break;
+ handleMissing(context, key, targetLocale, missingWarn, type); // eslint-disable-line @typescript-eslint/no-explicit-any
+ from = to;
+ }
+ // checking format and target locale
+ if (!isPlainObject(format) || !isString(targetLocale)) {
+ return unresolving ? NOT_REOSLVED : key;
+ }
+ let id = `${targetLocale}__${key}`;
+ if (!isEmptyObject(overrides)) {
+ id = `${id}__${JSON.stringify(overrides)}`;
+ }
+ let formatter = __numberFormatters.get(id);
+ if (!formatter) {
+ formatter = new Intl.NumberFormat(targetLocale, assign({}, format, overrides));
+ __numberFormatters.set(id, formatter);
+ }
+ return !part ? formatter.format(value) : formatter.formatToParts(value);
+ }
+ /** @internal */
+ const NUMBER_FORMAT_OPTIONS_KEYS = [
+ 'localeMatcher',
+ 'style',
+ 'currency',
+ 'currencyDisplay',
+ 'currencySign',
+ 'useGrouping',
+ 'minimumIntegerDigits',
+ 'minimumFractionDigits',
+ 'maximumFractionDigits',
+ 'minimumSignificantDigits',
+ 'maximumSignificantDigits',
+ 'compactDisplay',
+ 'notation',
+ 'signDisplay',
+ 'unit',
+ 'unitDisplay',
+ 'roundingMode',
+ 'roundingPriority',
+ 'roundingIncrement',
+ 'trailingZeroDisplay'
+ ];
+ /** @internal */
+ function parseNumberArgs(...args) {
+ const [arg1, arg2, arg3, arg4] = args;
+ const options = create();
+ let overrides = create();
+ if (!isNumber(arg1)) {
+ throw createCoreError(CoreErrorCodes.INVALID_ARGUMENT);
+ }
+ const value = arg1;
+ if (isString(arg2)) {
+ options.key = arg2;
+ }
+ else if (isPlainObject(arg2)) {
+ Object.keys(arg2).forEach(key => {
+ if (NUMBER_FORMAT_OPTIONS_KEYS.includes(key)) {
+ overrides[key] = arg2[key];
+ }
+ else {
+ options[key] = arg2[key];
+ }
+ });
+ }
+ if (isString(arg3)) {
+ options.locale = arg3;
+ }
+ else if (isPlainObject(arg3)) {
+ overrides = arg3;
+ }
+ if (isPlainObject(arg4)) {
+ overrides = arg4;
+ }
+ return [options.key || '', value, options, overrides];
+ }
+ /** @internal */
+ function clearNumberFormat(ctx, locale, format) {
+ const context = ctx;
+ for (const key in format) {
+ const id = `${locale}__${key}`;
+ if (!context.__numberFormatters.has(id)) {
+ continue;
+ }
+ context.__numberFormatters.delete(id);
+ }
+ }
+
+ const DEFAULT_MODIFIER = (str) => str;
+ const DEFAULT_MESSAGE = (ctx) => ''; // eslint-disable-line
+ const DEFAULT_MESSAGE_DATA_TYPE = 'text';
+ const DEFAULT_NORMALIZE = (values) => values.length === 0 ? '' : join(values);
+ const DEFAULT_INTERPOLATE = toDisplayString;
+ function pluralDefault(choice, choicesLength) {
+ choice = Math.abs(choice);
+ if (choicesLength === 2) {
+ // prettier-ignore
+ return choice
+ ? choice > 1
+ ? 1
+ : 0
+ : 1;
+ }
+ return choice ? Math.min(choice, 2) : 0;
+ }
+ function getPluralIndex(options) {
+ // prettier-ignore
+ const index = isNumber(options.pluralIndex)
+ ? options.pluralIndex
+ : -1;
+ // prettier-ignore
+ return options.named && (isNumber(options.named.count) || isNumber(options.named.n))
+ ? isNumber(options.named.count)
+ ? options.named.count
+ : isNumber(options.named.n)
+ ? options.named.n
+ : index
+ : index;
+ }
+ function normalizeNamed(pluralIndex, props) {
+ if (!props.count) {
+ props.count = pluralIndex;
+ }
+ if (!props.n) {
+ props.n = pluralIndex;
+ }
+ }
+ function createMessageContext(options = {}) {
+ const locale = options.locale;
+ const pluralIndex = getPluralIndex(options);
+ const pluralRule = isObject(options.pluralRules) &&
+ isString(locale) &&
+ isFunction(options.pluralRules[locale])
+ ? options.pluralRules[locale]
+ : pluralDefault;
+ const orgPluralRule = isObject(options.pluralRules) &&
+ isString(locale) &&
+ isFunction(options.pluralRules[locale])
+ ? pluralDefault
+ : undefined;
+ const plural = (messages) => {
+ return messages[pluralRule(pluralIndex, messages.length, orgPluralRule)];
+ };
+ const _list = options.list || [];
+ const list = (index) => _list[index];
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
+ const _named = options.named || create();
+ isNumber(options.pluralIndex) && normalizeNamed(pluralIndex, _named);
+ const named = (key) => _named[key];
+ function message(key, useLinked) {
+ // prettier-ignore
+ const msg = isFunction(options.messages)
+ ? options.messages(key, !!useLinked)
+ : isObject(options.messages)
+ ? options.messages[key]
+ : false;
+ return !msg
+ ? options.parent
+ ? options.parent.message(key) // resolve from parent messages
+ : DEFAULT_MESSAGE
+ : msg;
+ }
+ const _modifier = (name) => options.modifiers
+ ? options.modifiers[name]
+ : DEFAULT_MODIFIER;
+ const normalize = isPlainObject(options.processor) && isFunction(options.processor.normalize)
+ ? options.processor.normalize
+ : DEFAULT_NORMALIZE;
+ const interpolate = isPlainObject(options.processor) &&
+ isFunction(options.processor.interpolate)
+ ? options.processor.interpolate
+ : DEFAULT_INTERPOLATE;
+ const type = isPlainObject(options.processor) && isString(options.processor.type)
+ ? options.processor.type
+ : DEFAULT_MESSAGE_DATA_TYPE;
+ const linked = (key, ...args) => {
+ const [arg1, arg2] = args;
+ let type = 'text';
+ let modifier = '';
+ if (args.length === 1) {
+ if (isObject(arg1)) {
+ modifier = arg1.modifier || modifier;
+ type = arg1.type || type;
+ }
+ else if (isString(arg1)) {
+ modifier = arg1 || modifier;
+ }
+ }
+ else if (args.length === 2) {
+ if (isString(arg1)) {
+ modifier = arg1 || modifier;
+ }
+ if (isString(arg2)) {
+ type = arg2 || type;
+ }
+ }
+ const ret = message(key, true)(ctx);
+ const msg =
+ // The message in vnode resolved with linked are returned as an array by processor.nomalize
+ type === 'vnode' && isArray(ret) && modifier
+ ? ret[0]
+ : ret;
+ return modifier ? _modifier(modifier)(msg, type) : msg;
+ };
+ const ctx = {
+ ["list" /* HelperNameMap.LIST */]: list,
+ ["named" /* HelperNameMap.NAMED */]: named,
+ ["plural" /* HelperNameMap.PLURAL */]: plural,
+ ["linked" /* HelperNameMap.LINKED */]: linked,
+ ["message" /* HelperNameMap.MESSAGE */]: message,
+ ["type" /* HelperNameMap.TYPE */]: type,
+ ["interpolate" /* HelperNameMap.INTERPOLATE */]: interpolate,
+ ["normalize" /* HelperNameMap.NORMALIZE */]: normalize,
+ ["values" /* HelperNameMap.VALUES */]: assign(create(), _list, _named)
+ };
+ return ctx;
+ }
+
+ const NOOP_MESSAGE_FUNCTION = () => '';
+ const isMessageFunction = (val) => isFunction(val);
+ // implementation of `translate` function
+ function translate(context, ...args) {
+ const { fallbackFormat, postTranslation, unresolving, messageCompiler, fallbackLocale, messages } = context;
+ const [key, options] = parseTranslateArgs(...args);
+ const missingWarn = isBoolean(options.missingWarn)
+ ? options.missingWarn
+ : context.missingWarn;
+ const fallbackWarn = isBoolean(options.fallbackWarn)
+ ? options.fallbackWarn
+ : context.fallbackWarn;
+ const escapeParameter = isBoolean(options.escapeParameter)
+ ? options.escapeParameter
+ : context.escapeParameter;
+ const resolvedMessage = !!options.resolvedMessage;
+ // prettier-ignore
+ const defaultMsgOrKey = isString(options.default) || isBoolean(options.default) // default by function option
+ ? !isBoolean(options.default)
+ ? options.default
+ : (!messageCompiler ? () => key : key)
+ : fallbackFormat // default by `fallbackFormat` option
+ ? (!messageCompiler ? () => key : key)
+ : null;
+ const enableDefaultMsg = fallbackFormat ||
+ (defaultMsgOrKey != null &&
+ (isString(defaultMsgOrKey) || isFunction(defaultMsgOrKey)));
+ const locale = getLocale(context, options);
+ // escape params
+ escapeParameter && escapeParams(options);
+ // resolve message format
+ // eslint-disable-next-line prefer-const
+ let [formatScope, targetLocale, message] = !resolvedMessage
+ ? resolveMessageFormat(context, key, locale, fallbackLocale, fallbackWarn, missingWarn)
+ : [
+ key,
+ locale,
+ messages[locale] || create()
+ ];
+ // NOTE:
+ // Fix to work around `ssrTransfrom` bug in Vite.
+ // https://github.com/vitejs/vite/issues/4306
+ // To get around this, use temporary variables.
+ // https://github.com/nuxt/framework/issues/1461#issuecomment-954606243
+ let format = formatScope;
+ // if you use default message, set it as message format!
+ let cacheBaseKey = key;
+ if (!resolvedMessage &&
+ !(isString(format) ||
+ isMessageAST(format) ||
+ isMessageFunction(format))) {
+ if (enableDefaultMsg) {
+ format = defaultMsgOrKey;
+ cacheBaseKey = format;
+ }
+ }
+ // checking message format and target locale
+ if (!resolvedMessage &&
+ (!(isString(format) ||
+ isMessageAST(format) ||
+ isMessageFunction(format)) ||
+ !isString(targetLocale))) {
+ return unresolving ? NOT_REOSLVED : key;
+ }
+ // TODO: refactor
+ if (isString(format) && context.messageCompiler == null) {
+ warn(`The message format compilation is not supported in this build. ` +
+ `Because message compiler isn't included. ` +
+ `You need to pre-compilation all message format. ` +
+ `So translate function return '${key}'.`);
+ return key;
+ }
+ // setup compile error detecting
+ let occurred = false;
+ const onError = () => {
+ occurred = true;
+ };
+ // compile message format
+ const msg = !isMessageFunction(format)
+ ? compileMessageFormat(context, key, targetLocale, format, cacheBaseKey, onError)
+ : format;
+ // if occurred compile error, return the message format
+ if (occurred) {
+ return format;
+ }
+ // evaluate message with context
+ const ctxOptions = getMessageContextOptions(context, targetLocale, message, options);
+ const msgContext = createMessageContext(ctxOptions);
+ const messaged = evaluateMessage(context, msg, msgContext);
+ // if use post translation option, proceed it with handler
+ let ret = postTranslation
+ ? postTranslation(messaged, key)
+ : messaged;
+ // apply HTML sanitization for security
+ if (escapeParameter && isString(ret)) {
+ ret = sanitizeTranslatedHtml(ret);
+ }
+ // NOTE: experimental !!
+ {
+ // prettier-ignore
+ const payloads = {
+ timestamp: Date.now(),
+ key: isString(key)
+ ? key
+ : isMessageFunction(format)
+ ? format.key
+ : '',
+ locale: targetLocale || (isMessageFunction(format)
+ ? format.locale
+ : ''),
+ format: isString(format)
+ ? format
+ : isMessageFunction(format)
+ ? format.source
+ : '',
+ message: ret
+ };
+ payloads.meta = assign({}, context.__meta, getAdditionalMeta() || {});
+ translateDevTools(payloads);
+ }
+ return ret;
+ }
+ function escapeParams(options) {
+ if (isArray(options.list)) {
+ options.list = options.list.map(item => isString(item) ? escapeHtml(item) : item);
+ }
+ else if (isObject(options.named)) {
+ Object.keys(options.named).forEach(key => {
+ if (isString(options.named[key])) {
+ options.named[key] = escapeHtml(options.named[key]);
+ }
+ });
+ }
+ }
+ function resolveMessageFormat(context, key, locale, fallbackLocale, fallbackWarn, missingWarn) {
+ const { messages, onWarn, messageResolver: resolveValue, localeFallbacker } = context;
+ const locales = localeFallbacker(context, fallbackLocale, locale); // eslint-disable-line @typescript-eslint/no-explicit-any
+ let message = create();
+ let targetLocale;
+ let format = null;
+ let from = locale;
+ let to = null;
+ const type = 'translate';
+ for (let i = 0; i < locales.length; i++) {
+ targetLocale = to = locales[i];
+ if (locale !== targetLocale &&
+ !isAlmostSameLocale(locale, targetLocale) &&
+ isTranslateFallbackWarn(fallbackWarn, key)) {
+ onWarn(getWarnMessage$1(CoreWarnCodes.FALLBACK_TO_TRANSLATE, {
+ key,
+ target: targetLocale
+ }));
+ }
+ // for vue-devtools timeline event
+ if (locale !== targetLocale) {
+ const emitter = context.__v_emitter;
+ if (emitter) {
+ emitter.emit('fallback', {
+ type,
+ key,
+ from,
+ to,
+ groupId: `${type}:${key}`
+ });
+ }
+ }
+ message =
+ messages[targetLocale] || create();
+ // for vue-devtools timeline event
+ let start = null;
+ let startTag;
+ let endTag;
+ if (inBrowser) {
+ start = window.performance.now();
+ startTag = 'intlify-message-resolve-start';
+ endTag = 'intlify-message-resolve-end';
+ mark && mark(startTag);
+ }
+ if ((format = resolveValue(message, key)) === null) {
+ // if null, resolve with object key path
+ format = message[key]; // eslint-disable-line @typescript-eslint/no-explicit-any
+ }
+ // for vue-devtools timeline event
+ if (inBrowser) {
+ const end = window.performance.now();
+ const emitter = context.__v_emitter;
+ if (emitter && start && format) {
+ emitter.emit('message-resolve', {
+ type: 'message-resolve',
+ key,
+ message: format,
+ time: end - start,
+ groupId: `${type}:${key}`
+ });
+ }
+ if (startTag && endTag && mark && measure) {
+ mark(endTag);
+ measure('intlify message resolve', startTag, endTag);
+ }
+ }
+ if (isString(format) || isMessageAST(format) || isMessageFunction(format)) {
+ break;
+ }
+ if (!isImplicitFallback(targetLocale, locales)) {
+ const missingRet = handleMissing(context, // eslint-disable-line @typescript-eslint/no-explicit-any
+ key, targetLocale, missingWarn, type);
+ if (missingRet !== key) {
+ format = missingRet;
+ }
+ }
+ from = to;
+ }
+ return [format, targetLocale, message];
+ }
+ function compileMessageFormat(context, key, targetLocale, format, cacheBaseKey, onError) {
+ const { messageCompiler, warnHtmlMessage } = context;
+ if (isMessageFunction(format)) {
+ const msg = format;
+ msg.locale = msg.locale || targetLocale;
+ msg.key = msg.key || key;
+ return msg;
+ }
+ if (messageCompiler == null) {
+ const msg = (() => format);
+ msg.locale = targetLocale;
+ msg.key = key;
+ return msg;
+ }
+ // for vue-devtools timeline event
+ let start = null;
+ let startTag;
+ let endTag;
+ if (inBrowser) {
+ start = window.performance.now();
+ startTag = 'intlify-message-compilation-start';
+ endTag = 'intlify-message-compilation-end';
+ mark && mark(startTag);
+ }
+ const msg = messageCompiler(format, getCompileContext(context, targetLocale, cacheBaseKey, format, warnHtmlMessage, onError));
+ // for vue-devtools timeline event
+ if (inBrowser) {
+ const end = window.performance.now();
+ const emitter = context.__v_emitter;
+ if (emitter && start) {
+ emitter.emit('message-compilation', {
+ type: 'message-compilation',
+ message: format,
+ time: end - start,
+ groupId: `${'translate'}:${key}`
+ });
+ }
+ if (startTag && endTag && mark && measure) {
+ mark(endTag);
+ measure('intlify message compilation', startTag, endTag);
+ }
+ }
+ msg.locale = targetLocale;
+ msg.key = key;
+ msg.source = format;
+ return msg;
+ }
+ function evaluateMessage(context, msg, msgCtx) {
+ // for vue-devtools timeline event
+ let start = null;
+ let startTag;
+ let endTag;
+ if (inBrowser) {
+ start = window.performance.now();
+ startTag = 'intlify-message-evaluation-start';
+ endTag = 'intlify-message-evaluation-end';
+ mark && mark(startTag);
+ }
+ const messaged = msg(msgCtx);
+ // for vue-devtools timeline event
+ if (inBrowser) {
+ const end = window.performance.now();
+ const emitter = context.__v_emitter;
+ if (emitter && start) {
+ emitter.emit('message-evaluation', {
+ type: 'message-evaluation',
+ value: messaged,
+ time: end - start,
+ groupId: `${'translate'}:${msg.key}`
+ });
+ }
+ if (startTag && endTag && mark && measure) {
+ mark(endTag);
+ measure('intlify message evaluation', startTag, endTag);
+ }
+ }
+ return messaged;
+ }
+ /** @internal */
+ function parseTranslateArgs(...args) {
+ const [arg1, arg2, arg3] = args;
+ const options = create();
+ if (!isString(arg1) &&
+ !isNumber(arg1) &&
+ !isMessageFunction(arg1) &&
+ !isMessageAST(arg1)) {
+ throw createCoreError(CoreErrorCodes.INVALID_ARGUMENT);
+ }
+ // prettier-ignore
+ const key = isNumber(arg1)
+ ? String(arg1)
+ : isMessageFunction(arg1)
+ ? arg1
+ : arg1;
+ if (isNumber(arg2)) {
+ options.plural = arg2;
+ }
+ else if (isString(arg2)) {
+ options.default = arg2;
+ }
+ else if (isPlainObject(arg2) && !isEmptyObject(arg2)) {
+ options.named = arg2;
+ }
+ else if (isArray(arg2)) {
+ options.list = arg2;
+ }
+ if (isNumber(arg3)) {
+ options.plural = arg3;
+ }
+ else if (isString(arg3)) {
+ options.default = arg3;
+ }
+ else if (isPlainObject(arg3)) {
+ assign(options, arg3);
+ }
+ return [key, options];
+ }
+ function getCompileContext(context, locale, key, source, warnHtmlMessage, onError) {
+ return {
+ locale,
+ key,
+ warnHtmlMessage,
+ onError: (err) => {
+ onError && onError(err);
+ {
+ const _source = getSourceForCodeFrame(source);
+ const message = `Message compilation error: ${err.message}`;
+ const codeFrame = err.location &&
+ _source &&
+ generateCodeFrame(_source, err.location.start.offset, err.location.end.offset);
+ const emitter = context.__v_emitter;
+ if (emitter && _source) {
+ emitter.emit('compile-error', {
+ message: _source,
+ error: err.message,
+ start: err.location && err.location.start.offset,
+ end: err.location && err.location.end.offset,
+ groupId: `${'translate'}:${key}`
+ });
+ }
+ console.error(codeFrame ? `${message}\n${codeFrame}` : message);
+ }
+ },
+ onCacheKey: (source) => generateFormatCacheKey(locale, key, source)
+ };
+ }
+ function getSourceForCodeFrame(source) {
+ if (isString(source)) {
+ return source;
+ }
+ else {
+ if (source.loc && source.loc.source) {
+ return source.loc.source;
+ }
+ }
+ }
+ function getMessageContextOptions(context, locale, message, options) {
+ const { modifiers, pluralRules, messageResolver: resolveValue, fallbackLocale, fallbackWarn, missingWarn, fallbackContext } = context;
+ const resolveMessage = (key, useLinked) => {
+ let val = resolveValue(message, key);
+ // fallback
+ if (val == null && (fallbackContext || useLinked)) {
+ const [, , message] = resolveMessageFormat(fallbackContext || context, // NOTE: if has fallbackContext, fallback to root, else if use linked, fallback to local context
+ key, locale, fallbackLocale, fallbackWarn, missingWarn);
+ val = resolveValue(message, key);
+ }
+ if (isString(val) || isMessageAST(val)) {
+ let occurred = false;
+ const onError = () => {
+ occurred = true;
+ };
+ const msg = compileMessageFormat(context, key, locale, val, key, onError);
+ return !occurred
+ ? msg
+ : NOOP_MESSAGE_FUNCTION;
+ }
+ else if (isMessageFunction(val)) {
+ return val;
+ }
+ else {
+ // TODO: should be implemented warning message
+ return NOOP_MESSAGE_FUNCTION;
+ }
+ };
+ const ctxOptions = {
+ locale,
+ modifiers,
+ pluralRules,
+ messages: resolveMessage
+ };
+ if (context.processor) {
+ ctxOptions.processor = context.processor;
+ }
+ if (options.list) {
+ ctxOptions.list = options.list;
+ }
+ if (options.named) {
+ ctxOptions.named = options.named;
+ }
+ if (isNumber(options.plural)) {
+ ctxOptions.pluralIndex = options.plural;
+ }
+ return ctxOptions;
+ }
+
+ /**
+ * Vue I18n Version
+ *
+ * @remarks
+ * Semver format. Same format as the package.json `version` field.
+ *
+ * @VueI18nGeneral
+ */
+ const VERSION = '11.1.11';
+ /**
+ * This is only called development env
+ * istanbul-ignore-next
+ */
+ function initDev() {
+ {
+ {
+ console.info(`You are running a development build of vue-i18n.\n` +
+ `Make sure to use the production build (*.prod.js) when deploying for production.`);
+ }
+ }
+ }
+
+ const I18nErrorCodes = {
+ // composer module errors
+ UNEXPECTED_RETURN_TYPE: CORE_ERROR_CODES_EXTEND_POINT, // 24
+ // legacy module errors
+ INVALID_ARGUMENT: 25,
+ // i18n module errors
+ MUST_BE_CALL_SETUP_TOP: 26,
+ NOT_INSTALLED: 27,
+ // directive module errors
+ REQUIRED_VALUE: 28,
+ INVALID_VALUE: 29,
+ // vue-devtools errors
+ CANNOT_SETUP_VUE_DEVTOOLS_PLUGIN: 30,
+ NOT_INSTALLED_WITH_PROVIDE: 31,
+ // unexpected error
+ UNEXPECTED_ERROR: 32,
+ // not compatible legacy vue-i18n constructor
+ NOT_COMPATIBLE_LEGACY_VUE_I18N: 33,
+ // Not available Compostion API in Legacy API mode. Please make sure that the legacy API mode is working properly
+ NOT_AVAILABLE_COMPOSITION_IN_LEGACY: 34
+ };
+ function createI18nError(code, ...args) {
+ return createCompileError(code, null, { messages: errorMessages, args } );
+ }
+ const errorMessages = {
+ [I18nErrorCodes.UNEXPECTED_RETURN_TYPE]: 'Unexpected return type in composer',
+ [I18nErrorCodes.INVALID_ARGUMENT]: 'Invalid argument',
+ [I18nErrorCodes.MUST_BE_CALL_SETUP_TOP]: 'Must be called at the top of a `setup` function',
+ [I18nErrorCodes.NOT_INSTALLED]: 'Need to install with `app.use` function',
+ [I18nErrorCodes.UNEXPECTED_ERROR]: 'Unexpected error',
+ [I18nErrorCodes.REQUIRED_VALUE]: `Required in value: {0}`,
+ [I18nErrorCodes.INVALID_VALUE]: `Invalid value`,
+ [I18nErrorCodes.CANNOT_SETUP_VUE_DEVTOOLS_PLUGIN]: `Cannot setup vue-devtools plugin`,
+ [I18nErrorCodes.NOT_INSTALLED_WITH_PROVIDE]: 'Need to install with `provide` function',
+ [I18nErrorCodes.NOT_COMPATIBLE_LEGACY_VUE_I18N]: 'Not compatible legacy VueI18n.',
+ [I18nErrorCodes.NOT_AVAILABLE_COMPOSITION_IN_LEGACY]: 'Not available Compostion API in Legacy API mode. Please make sure that the legacy API mode is working properly'
+ };
+
+ const TranslateVNodeSymbol =
+ /* #__PURE__*/ makeSymbol('__translateVNode');
+ const DatetimePartsSymbol = /* #__PURE__*/ makeSymbol('__datetimeParts');
+ const NumberPartsSymbol = /* #__PURE__*/ makeSymbol('__numberParts');
+ const EnableEmitter = /* #__PURE__*/ makeSymbol('__enableEmitter');
+ const DisableEmitter = /* #__PURE__*/ makeSymbol('__disableEmitter');
+ const SetPluralRulesSymbol = makeSymbol('__setPluralRules');
+ const InejctWithOptionSymbol =
+ /* #__PURE__*/ makeSymbol('__injectWithOption');
+ const DisposeSymbol = /* #__PURE__*/ makeSymbol('__dispose');
+
+ const I18nWarnCodes = {
+ FALLBACK_TO_ROOT: CORE_WARN_CODES_EXTEND_POINT, // 8
+ NOT_FOUND_PARENT_SCOPE: 9,
+ IGNORE_OBJ_FLATTEN: 10,
+ /**
+ * @deprecated will be removed at vue-i18n v12
+ */
+ DEPRECATE_LEGACY_MODE: 11,
+ /**
+ * @deprecated will be removed at vue-i18n v12
+ */
+ DEPRECATE_TRANSLATE_CUSTOME_DIRECTIVE: 12,
+ // duplicate `useI18n` calling
+ DUPLICATE_USE_I18N_CALLING: 13
+ };
+ const warnMessages = {
+ [I18nWarnCodes.FALLBACK_TO_ROOT]: `Fall back to {type} '{key}' with root locale.`,
+ [I18nWarnCodes.NOT_FOUND_PARENT_SCOPE]: `Not found parent scope. use the global scope.`,
+ [I18nWarnCodes.IGNORE_OBJ_FLATTEN]: `Ignore object flatten: '{key}' key has an string value`,
+ /**
+ * @deprecated will be removed at vue-i18n v12
+ */
+ [I18nWarnCodes.DEPRECATE_LEGACY_MODE]: `Legacy API mode has been deprecated in v11. Use Composition API mode instead.\nAbout how to use the Composition API mode, see https://vue-i18n.intlify.dev/guide/advanced/composition.html`,
+ /**
+ * @deprecated will be removed at vue-i18n v12
+ */
+ [I18nWarnCodes.DEPRECATE_TRANSLATE_CUSTOME_DIRECTIVE]: `'v-t' has been deprecated in v11. Use translate APIs ('t' or '$t') instead.`,
+ [I18nWarnCodes.DUPLICATE_USE_I18N_CALLING]: "Duplicate `useI18n` calling by local scope. Please don't call it on local scope, due to it does not work properly in component."
+ };
+ function getWarnMessage(code, ...args) {
+ return format$1(warnMessages[code], ...args);
+ }
+
+ /* eslint-disable @typescript-eslint/no-explicit-any */
+ /**
+ * Transform flat json in obj to normal json in obj
+ */
+ function handleFlatJson(obj) {
+ // check obj
+ if (!isObject(obj)) {
+ return obj;
+ }
+ if (isMessageAST(obj)) {
+ return obj;
+ }
+ for (const key in obj) {
+ // check key
+ if (!hasOwn(obj, key)) {
+ continue;
+ }
+ // handle for normal json
+ if (!key.includes('.')) {
+ // recursive process value if value is also a object
+ if (isObject(obj[key])) {
+ handleFlatJson(obj[key]);
+ }
+ }
+ // handle for flat json, transform to normal json
+ else {
+ // go to the last object
+ const subKeys = key.split('.');
+ const lastIndex = subKeys.length - 1;
+ let currentObj = obj;
+ let hasStringValue = false;
+ for (let i = 0; i < lastIndex; i++) {
+ if (subKeys[i] === '__proto__') {
+ throw new Error(`unsafe key: ${subKeys[i]}`);
+ }
+ if (!(subKeys[i] in currentObj)) {
+ currentObj[subKeys[i]] = create();
+ }
+ if (!isObject(currentObj[subKeys[i]])) {
+ warn(getWarnMessage(I18nWarnCodes.IGNORE_OBJ_FLATTEN, {
+ key: subKeys[i]
+ }));
+ hasStringValue = true;
+ break;
+ }
+ currentObj = currentObj[subKeys[i]];
+ }
+ // update last object value, delete old property
+ if (!hasStringValue) {
+ if (!isMessageAST(currentObj)) {
+ currentObj[subKeys[lastIndex]] = obj[key];
+ delete obj[key];
+ }
+ else {
+ /**
+ * NOTE:
+ * if the last object is a message AST and subKeys[lastIndex] has message AST prop key, ignore to copy and key deletion
+ */
+ if (!AST_NODE_PROPS_KEYS.includes(subKeys[lastIndex])) {
+ delete obj[key];
+ }
+ }
+ }
+ // recursive process value if value is also a object
+ if (!isMessageAST(currentObj)) {
+ const target = currentObj[subKeys[lastIndex]];
+ if (isObject(target)) {
+ handleFlatJson(target);
+ }
+ }
+ }
+ }
+ return obj;
+ }
+ function getLocaleMessages(locale, options) {
+ const { messages, __i18n, messageResolver, flatJson } = options;
+ // prettier-ignore
+ const ret = (isPlainObject(messages)
+ ? messages
+ : isArray(__i18n)
+ ? create()
+ : { [locale]: create() });
+ // merge locale messages of i18n custom block
+ if (isArray(__i18n)) {
+ __i18n.forEach(custom => {
+ if ('locale' in custom && 'resource' in custom) {
+ const { locale, resource } = custom;
+ if (locale) {
+ ret[locale] = ret[locale] || create();
+ deepCopy(resource, ret[locale]);
+ }
+ else {
+ deepCopy(resource, ret);
+ }
+ }
+ else {
+ isString(custom) && deepCopy(JSON.parse(custom), ret);
+ }
+ });
+ }
+ // handle messages for flat json
+ if (messageResolver == null && flatJson) {
+ for (const key in ret) {
+ if (hasOwn(ret, key)) {
+ handleFlatJson(ret[key]);
+ }
+ }
+ }
+ return ret;
+ }
+ function getComponentOptions(instance) {
+ return instance.type;
+ }
+ function adjustI18nResources(gl, options, componentOptions) {
+ // prettier-ignore
+ let messages = isObject(options.messages)
+ ? options.messages
+ : create();
+ if ('__i18nGlobal' in componentOptions) {
+ messages = getLocaleMessages(gl.locale.value, {
+ messages,
+ __i18n: componentOptions.__i18nGlobal
+ });
+ }
+ // merge locale messages
+ const locales = Object.keys(messages);
+ if (locales.length) {
+ locales.forEach(locale => {
+ gl.mergeLocaleMessage(locale, messages[locale]);
+ });
+ }
+ {
+ // merge datetime formats
+ if (isObject(options.datetimeFormats)) {
+ const locales = Object.keys(options.datetimeFormats);
+ if (locales.length) {
+ locales.forEach(locale => {
+ gl.mergeDateTimeFormat(locale, options.datetimeFormats[locale]);
+ });
+ }
+ }
+ // merge number formats
+ if (isObject(options.numberFormats)) {
+ const locales = Object.keys(options.numberFormats);
+ if (locales.length) {
+ locales.forEach(locale => {
+ gl.mergeNumberFormat(locale, options.numberFormats[locale]);
+ });
+ }
+ }
+ }
+ }
+ function createTextNode(key) {
+ return vue.createVNode(vue.Text, null, key, 0);
+ }
+
+ /* eslint-disable @typescript-eslint/no-explicit-any */
+ // extend VNode interface
+ const DEVTOOLS_META = '__INTLIFY_META__';
+ const NOOP_RETURN_ARRAY = () => [];
+ const NOOP_RETURN_FALSE = () => false;
+ let composerID = 0;
+ function defineCoreMissingHandler(missing) {
+ return ((ctx, locale, key, type) => {
+ return missing(locale, key, vue.getCurrentInstance() || undefined, type);
+ });
+ }
+ // for Intlify DevTools
+ /* #__NO_SIDE_EFFECTS__ */
+ const getMetaInfo = () => {
+ const instance = vue.getCurrentInstance();
+ let meta = null;
+ return instance && (meta = getComponentOptions(instance)[DEVTOOLS_META])
+ ? { [DEVTOOLS_META]: meta }
+ : null;
+ };
+ /**
+ * Create composer interface factory
+ *
+ * @internal
+ */
+ function createComposer(options = {}) {
+ const { __root, __injectWithOption } = options;
+ const _isGlobal = __root === undefined;
+ const flatJson = options.flatJson;
+ const _ref = inBrowser ? vue.ref : vue.shallowRef;
+ let _inheritLocale = isBoolean(options.inheritLocale)
+ ? options.inheritLocale
+ : true;
+ const _locale = _ref(
+ // prettier-ignore
+ __root && _inheritLocale
+ ? __root.locale.value
+ : isString(options.locale)
+ ? options.locale
+ : DEFAULT_LOCALE);
+ const _fallbackLocale = _ref(
+ // prettier-ignore
+ __root && _inheritLocale
+ ? __root.fallbackLocale.value
+ : isString(options.fallbackLocale) ||
+ isArray(options.fallbackLocale) ||
+ isPlainObject(options.fallbackLocale) ||
+ options.fallbackLocale === false
+ ? options.fallbackLocale
+ : _locale.value);
+ const _messages = _ref(getLocaleMessages(_locale.value, options));
+ // prettier-ignore
+ const _datetimeFormats = _ref(isPlainObject(options.datetimeFormats)
+ ? options.datetimeFormats
+ : { [_locale.value]: {} })
+ ;
+ // prettier-ignore
+ const _numberFormats = _ref(isPlainObject(options.numberFormats)
+ ? options.numberFormats
+ : { [_locale.value]: {} })
+ ;
+ // warning suppress options
+ // prettier-ignore
+ let _missingWarn = __root
+ ? __root.missingWarn
+ : isBoolean(options.missingWarn) || isRegExp(options.missingWarn)
+ ? options.missingWarn
+ : true;
+ // prettier-ignore
+ let _fallbackWarn = __root
+ ? __root.fallbackWarn
+ : isBoolean(options.fallbackWarn) || isRegExp(options.fallbackWarn)
+ ? options.fallbackWarn
+ : true;
+ // prettier-ignore
+ let _fallbackRoot = __root
+ ? __root.fallbackRoot
+ : isBoolean(options.fallbackRoot)
+ ? options.fallbackRoot
+ : true;
+ // configure fall back to root
+ let _fallbackFormat = !!options.fallbackFormat;
+ // runtime missing
+ let _missing = isFunction(options.missing) ? options.missing : null;
+ let _runtimeMissing = isFunction(options.missing)
+ ? defineCoreMissingHandler(options.missing)
+ : null;
+ // postTranslation handler
+ let _postTranslation = isFunction(options.postTranslation)
+ ? options.postTranslation
+ : null;
+ // prettier-ignore
+ let _warnHtmlMessage = __root
+ ? __root.warnHtmlMessage
+ : isBoolean(options.warnHtmlMessage)
+ ? options.warnHtmlMessage
+ : true;
+ let _escapeParameter = !!options.escapeParameter;
+ // custom linked modifiers
+ // prettier-ignore
+ const _modifiers = __root
+ ? __root.modifiers
+ : isPlainObject(options.modifiers)
+ ? options.modifiers
+ : {};
+ // pluralRules
+ let _pluralRules = options.pluralRules || (__root && __root.pluralRules);
+ // runtime context
+ // eslint-disable-next-line prefer-const
+ let _context;
+ const getCoreContext = () => {
+ _isGlobal && setFallbackContext(null);
+ const ctxOptions = {
+ version: VERSION,
+ locale: _locale.value,
+ fallbackLocale: _fallbackLocale.value,
+ messages: _messages.value,
+ modifiers: _modifiers,
+ pluralRules: _pluralRules,
+ missing: _runtimeMissing === null ? undefined : _runtimeMissing,
+ missingWarn: _missingWarn,
+ fallbackWarn: _fallbackWarn,
+ fallbackFormat: _fallbackFormat,
+ unresolving: true,
+ postTranslation: _postTranslation === null ? undefined : _postTranslation,
+ warnHtmlMessage: _warnHtmlMessage,
+ escapeParameter: _escapeParameter,
+ messageResolver: options.messageResolver,
+ messageCompiler: options.messageCompiler,
+ __meta: { framework: 'vue' }
+ };
+ {
+ ctxOptions.datetimeFormats = _datetimeFormats.value;
+ ctxOptions.numberFormats = _numberFormats.value;
+ ctxOptions.__datetimeFormatters = isPlainObject(_context)
+ ? _context.__datetimeFormatters
+ : undefined;
+ ctxOptions.__numberFormatters = isPlainObject(_context)
+ ? _context.__numberFormatters
+ : undefined;
+ }
+ {
+ ctxOptions.__v_emitter = isPlainObject(_context)
+ ? _context.__v_emitter
+ : undefined;
+ }
+ const ctx = createCoreContext(ctxOptions);
+ _isGlobal && setFallbackContext(ctx);
+ return ctx;
+ };
+ _context = getCoreContext();
+ updateFallbackLocale(_context, _locale.value, _fallbackLocale.value);
+ // track reactivity
+ function trackReactivityValues() {
+ return [
+ _locale.value,
+ _fallbackLocale.value,
+ _messages.value,
+ _datetimeFormats.value,
+ _numberFormats.value
+ ]
+ ;
+ }
+ // locale
+ const locale = vue.computed({
+ get: () => _locale.value,
+ set: val => {
+ _context.locale = val;
+ _locale.value = val;
+ }
+ });
+ // fallbackLocale
+ const fallbackLocale = vue.computed({
+ get: () => _fallbackLocale.value,
+ set: val => {
+ _context.fallbackLocale = val;
+ _fallbackLocale.value = val;
+ updateFallbackLocale(_context, _locale.value, val);
+ }
+ });
+ // messages
+ const messages = vue.computed(() => _messages.value);
+ // datetimeFormats
+ const datetimeFormats = /* #__PURE__*/ vue.computed(() => _datetimeFormats.value);
+ // numberFormats
+ const numberFormats = /* #__PURE__*/ vue.computed(() => _numberFormats.value);
+ // getPostTranslationHandler
+ function getPostTranslationHandler() {
+ return isFunction(_postTranslation) ? _postTranslation : null;
+ }
+ // setPostTranslationHandler
+ function setPostTranslationHandler(handler) {
+ _postTranslation = handler;
+ _context.postTranslation = handler;
+ }
+ // getMissingHandler
+ function getMissingHandler() {
+ return _missing;
+ }
+ // setMissingHandler
+ function setMissingHandler(handler) {
+ if (handler !== null) {
+ _runtimeMissing = defineCoreMissingHandler(handler);
+ }
+ _missing = handler;
+ _context.missing = _runtimeMissing;
+ }
+ function isResolvedTranslateMessage(type, arg) {
+ return type !== 'translate' || !arg.resolvedMessage;
+ }
+ const wrapWithDeps = (fn, argumentParser, warnType, fallbackSuccess, fallbackFail, successCondition) => {
+ trackReactivityValues(); // track reactive dependency
+ // NOTE: experimental !!
+ let ret;
+ try {
+ if (true || false) {
+ setAdditionalMeta(getMetaInfo());
+ }
+ if (!_isGlobal) {
+ _context.fallbackContext = __root
+ ? getFallbackContext()
+ : undefined;
+ }
+ ret = fn(_context);
+ }
+ finally {
+ if (!_isGlobal) {
+ _context.fallbackContext = undefined;
+ }
+ }
+ if ((warnType !== 'translate exists' && // for not `te` (e.g `t`)
+ isNumber(ret) &&
+ ret === NOT_REOSLVED) ||
+ (warnType === 'translate exists' && !ret) // for `te`
+ ) {
+ const [key, arg2] = argumentParser();
+ if (__root &&
+ isString(key) &&
+ isResolvedTranslateMessage(warnType, arg2)) {
+ if (_fallbackRoot &&
+ (isTranslateFallbackWarn(_fallbackWarn, key) ||
+ isTranslateMissingWarn(_missingWarn, key))) {
+ warn(getWarnMessage(I18nWarnCodes.FALLBACK_TO_ROOT, {
+ key,
+ type: warnType
+ }));
+ }
+ // for vue-devtools timeline event
+ {
+ const { __v_emitter: emitter } = _context;
+ if (emitter && _fallbackRoot) {
+ emitter.emit('fallback', {
+ type: warnType,
+ key,
+ to: 'global',
+ groupId: `${warnType}:${key}`
+ });
+ }
+ }
+ }
+ return __root && _fallbackRoot
+ ? fallbackSuccess(__root)
+ : fallbackFail(key);
+ }
+ else if (successCondition(ret)) {
+ return ret;
+ }
+ else {
+ /* istanbul ignore next */
+ throw createI18nError(I18nErrorCodes.UNEXPECTED_RETURN_TYPE);
+ }
+ };
+ // t
+ function t(...args) {
+ return wrapWithDeps(context => Reflect.apply(translate, null, [context, ...args]), () => parseTranslateArgs(...args), 'translate', root => Reflect.apply(root.t, root, [...args]), key => key, val => isString(val));
+ }
+ // rt
+ function rt(...args) {
+ const [arg1, arg2, arg3] = args;
+ if (arg3 && !isObject(arg3)) {
+ throw createI18nError(I18nErrorCodes.INVALID_ARGUMENT);
+ }
+ return t(...[arg1, arg2, assign({ resolvedMessage: true }, arg3 || {})]);
+ }
+ // d
+ function d(...args) {
+ return wrapWithDeps(context => Reflect.apply(datetime, null, [context, ...args]), () => parseDateTimeArgs(...args), 'datetime format', root => Reflect.apply(root.d, root, [...args]), () => MISSING_RESOLVE_VALUE, val => isString(val) || isArray(val));
+ }
+ // n
+ function n(...args) {
+ return wrapWithDeps(context => Reflect.apply(number, null, [context, ...args]), () => parseNumberArgs(...args), 'number format', root => Reflect.apply(root.n, root, [...args]), () => MISSING_RESOLVE_VALUE, val => isString(val) || isArray(val));
+ }
+ // for custom processor
+ function normalize(values) {
+ return values.map(val => isString(val) || isNumber(val) || isBoolean(val)
+ ? createTextNode(String(val))
+ : val);
+ }
+ const interpolate = (val) => val;
+ const processor = {
+ normalize,
+ interpolate,
+ type: 'vnode'
+ };
+ // translateVNode, using for `i18n-t` component
+ function translateVNode(...args) {
+ return wrapWithDeps(context => {
+ let ret;
+ const _context = context;
+ try {
+ _context.processor = processor;
+ ret = Reflect.apply(translate, null, [_context, ...args]);
+ }
+ finally {
+ _context.processor = null;
+ }
+ return ret;
+ }, () => parseTranslateArgs(...args), 'translate', root => root[TranslateVNodeSymbol](...args), key => [createTextNode(key)], val => isArray(val));
+ }
+ // numberParts, using for `i18n-n` component
+ function numberParts(...args) {
+ return wrapWithDeps(context => Reflect.apply(number, null, [context, ...args]), () => parseNumberArgs(...args), 'number format', root => root[NumberPartsSymbol](...args), NOOP_RETURN_ARRAY, val => isString(val) || isArray(val));
+ }
+ // datetimeParts, using for `i18n-d` component
+ function datetimeParts(...args) {
+ return wrapWithDeps(context => Reflect.apply(datetime, null, [context, ...args]), () => parseDateTimeArgs(...args), 'datetime format', root => root[DatetimePartsSymbol](...args), NOOP_RETURN_ARRAY, val => isString(val) || isArray(val));
+ }
+ function setPluralRules(rules) {
+ _pluralRules = rules;
+ _context.pluralRules = _pluralRules;
+ }
+ // te
+ function te(key, locale) {
+ return wrapWithDeps(() => {
+ if (!key) {
+ return false;
+ }
+ const targetLocale = isString(locale) ? locale : _locale.value;
+ const message = getLocaleMessage(targetLocale);
+ const resolved = _context.messageResolver(message, key);
+ return (isMessageAST(resolved) ||
+ isMessageFunction(resolved) ||
+ isString(resolved));
+ }, () => [key], 'translate exists', root => {
+ return Reflect.apply(root.te, root, [key, locale]);
+ }, NOOP_RETURN_FALSE, val => isBoolean(val));
+ }
+ function resolveMessages(key) {
+ let messages = null;
+ const locales = fallbackWithLocaleChain(_context, _fallbackLocale.value, _locale.value);
+ for (let i = 0; i < locales.length; i++) {
+ const targetLocaleMessages = _messages.value[locales[i]] || {};
+ const messageValue = _context.messageResolver(targetLocaleMessages, key);
+ if (messageValue != null) {
+ messages = messageValue;
+ break;
+ }
+ }
+ return messages;
+ }
+ // tm
+ function tm(key) {
+ const messages = resolveMessages(key);
+ // prettier-ignore
+ return messages != null
+ ? messages
+ : __root
+ ? __root.tm(key) || {}
+ : {};
+ }
+ // getLocaleMessage
+ function getLocaleMessage(locale) {
+ return (_messages.value[locale] || {});
+ }
+ // setLocaleMessage
+ function setLocaleMessage(locale, message) {
+ if (flatJson) {
+ const _message = { [locale]: message };
+ for (const key in _message) {
+ if (hasOwn(_message, key)) {
+ handleFlatJson(_message[key]);
+ }
+ }
+ message = _message[locale];
+ }
+ _messages.value[locale] = message;
+ _context.messages = _messages.value;
+ }
+ // mergeLocaleMessage
+ function mergeLocaleMessage(locale, message) {
+ _messages.value[locale] = _messages.value[locale] || {};
+ const _message = { [locale]: message };
+ if (flatJson) {
+ for (const key in _message) {
+ if (hasOwn(_message, key)) {
+ handleFlatJson(_message[key]);
+ }
+ }
+ }
+ message = _message[locale];
+ deepCopy(message, _messages.value[locale]);
+ _context.messages = _messages.value;
+ }
+ // getDateTimeFormat
+ function getDateTimeFormat(locale) {
+ return _datetimeFormats.value[locale] || {};
+ }
+ // setDateTimeFormat
+ function setDateTimeFormat(locale, format) {
+ _datetimeFormats.value[locale] = format;
+ _context.datetimeFormats = _datetimeFormats.value;
+ clearDateTimeFormat(_context, locale, format);
+ }
+ // mergeDateTimeFormat
+ function mergeDateTimeFormat(locale, format) {
+ _datetimeFormats.value[locale] = assign(_datetimeFormats.value[locale] || {}, format);
+ _context.datetimeFormats = _datetimeFormats.value;
+ clearDateTimeFormat(_context, locale, format);
+ }
+ // getNumberFormat
+ function getNumberFormat(locale) {
+ return _numberFormats.value[locale] || {};
+ }
+ // setNumberFormat
+ function setNumberFormat(locale, format) {
+ _numberFormats.value[locale] = format;
+ _context.numberFormats = _numberFormats.value;
+ clearNumberFormat(_context, locale, format);
+ }
+ // mergeNumberFormat
+ function mergeNumberFormat(locale, format) {
+ _numberFormats.value[locale] = assign(_numberFormats.value[locale] || {}, format);
+ _context.numberFormats = _numberFormats.value;
+ clearNumberFormat(_context, locale, format);
+ }
+ // for debug
+ composerID++;
+ // watch root locale & fallbackLocale
+ if (__root && inBrowser) {
+ vue.watch(__root.locale, (val) => {
+ if (_inheritLocale) {
+ _locale.value = val;
+ _context.locale = val;
+ updateFallbackLocale(_context, _locale.value, _fallbackLocale.value);
+ }
+ });
+ vue.watch(__root.fallbackLocale, (val) => {
+ if (_inheritLocale) {
+ _fallbackLocale.value = val;
+ _context.fallbackLocale = val;
+ updateFallbackLocale(_context, _locale.value, _fallbackLocale.value);
+ }
+ });
+ }
+ // define basic composition API!
+ const composer = {
+ id: composerID,
+ locale,
+ fallbackLocale,
+ get inheritLocale() {
+ return _inheritLocale;
+ },
+ set inheritLocale(val) {
+ _inheritLocale = val;
+ if (val && __root) {
+ _locale.value = __root.locale.value;
+ _fallbackLocale.value = __root.fallbackLocale.value;
+ updateFallbackLocale(_context, _locale.value, _fallbackLocale.value);
+ }
+ },
+ get availableLocales() {
+ return Object.keys(_messages.value).sort();
+ },
+ messages,
+ get modifiers() {
+ return _modifiers;
+ },
+ get pluralRules() {
+ return _pluralRules || {};
+ },
+ get isGlobal() {
+ return _isGlobal;
+ },
+ get missingWarn() {
+ return _missingWarn;
+ },
+ set missingWarn(val) {
+ _missingWarn = val;
+ _context.missingWarn = _missingWarn;
+ },
+ get fallbackWarn() {
+ return _fallbackWarn;
+ },
+ set fallbackWarn(val) {
+ _fallbackWarn = val;
+ _context.fallbackWarn = _fallbackWarn;
+ },
+ get fallbackRoot() {
+ return _fallbackRoot;
+ },
+ set fallbackRoot(val) {
+ _fallbackRoot = val;
+ },
+ get fallbackFormat() {
+ return _fallbackFormat;
+ },
+ set fallbackFormat(val) {
+ _fallbackFormat = val;
+ _context.fallbackFormat = _fallbackFormat;
+ },
+ get warnHtmlMessage() {
+ return _warnHtmlMessage;
+ },
+ set warnHtmlMessage(val) {
+ _warnHtmlMessage = val;
+ _context.warnHtmlMessage = val;
+ },
+ get escapeParameter() {
+ return _escapeParameter;
+ },
+ set escapeParameter(val) {
+ _escapeParameter = val;
+ _context.escapeParameter = val;
+ },
+ t,
+ getLocaleMessage,
+ setLocaleMessage,
+ mergeLocaleMessage,
+ getPostTranslationHandler,
+ setPostTranslationHandler,
+ getMissingHandler,
+ setMissingHandler,
+ [SetPluralRulesSymbol]: setPluralRules
+ };
+ {
+ composer.datetimeFormats = datetimeFormats;
+ composer.numberFormats = numberFormats;
+ composer.rt = rt;
+ composer.te = te;
+ composer.tm = tm;
+ composer.d = d;
+ composer.n = n;
+ composer.getDateTimeFormat = getDateTimeFormat;
+ composer.setDateTimeFormat = setDateTimeFormat;
+ composer.mergeDateTimeFormat = mergeDateTimeFormat;
+ composer.getNumberFormat = getNumberFormat;
+ composer.setNumberFormat = setNumberFormat;
+ composer.mergeNumberFormat = mergeNumberFormat;
+ composer[InejctWithOptionSymbol] = __injectWithOption;
+ composer[TranslateVNodeSymbol] = translateVNode;
+ composer[DatetimePartsSymbol] = datetimeParts;
+ composer[NumberPartsSymbol] = numberParts;
+ }
+ // for vue-devtools timeline event
+ {
+ composer[EnableEmitter] = (emitter) => {
+ _context.__v_emitter = emitter;
+ };
+ composer[DisableEmitter] = () => {
+ _context.__v_emitter = undefined;
+ };
+ }
+ return composer;
+ }
+ /* eslint-enable @typescript-eslint/no-explicit-any */
+
+ var global$1 = (typeof global !== "undefined" ? global :
+ typeof self !== "undefined" ? self :
+ typeof window !== "undefined" ? window : {});
+
+ function getDevtoolsGlobalHook() {
+ return getTarget().__VUE_DEVTOOLS_GLOBAL_HOOK__;
+ }
+ function getTarget() {
+ // @ts-ignore
+ return (typeof navigator !== 'undefined' && typeof window !== 'undefined')
+ ? window
+ : typeof global$1 !== 'undefined'
+ ? global$1
+ : {};
+ }
+ const isProxyAvailable = typeof Proxy === 'function';
+
+ const HOOK_SETUP = 'devtools-plugin:setup';
+ const HOOK_PLUGIN_SETTINGS_SET = 'plugin:settings:set';
+
+ let supported;
+ let perf;
+ function isPerformanceSupported() {
+ var _a;
+ if (supported !== undefined) {
+ return supported;
+ }
+ if (typeof window !== 'undefined' && window.performance) {
+ supported = true;
+ perf = window.performance;
+ }
+ else if (typeof global$1 !== 'undefined' && ((_a = global$1.perf_hooks) === null || _a === void 0 ? void 0 : _a.performance)) {
+ supported = true;
+ perf = global$1.perf_hooks.performance;
+ }
+ else {
+ supported = false;
+ }
+ return supported;
+ }
+ function now() {
+ return isPerformanceSupported() ? perf.now() : Date.now();
+ }
+
+ class ApiProxy {
+ constructor(plugin, hook) {
+ this.target = null;
+ this.targetQueue = [];
+ this.onQueue = [];
+ this.plugin = plugin;
+ this.hook = hook;
+ const defaultSettings = {};
+ if (plugin.settings) {
+ for (const id in plugin.settings) {
+ const item = plugin.settings[id];
+ defaultSettings[id] = item.defaultValue;
+ }
+ }
+ const localSettingsSaveId = `__vue-devtools-plugin-settings__${plugin.id}`;
+ let currentSettings = Object.assign({}, defaultSettings);
+ try {
+ const raw = localStorage.getItem(localSettingsSaveId);
+ const data = JSON.parse(raw);
+ Object.assign(currentSettings, data);
+ }
+ catch (e) {
+ // noop
+ }
+ this.fallbacks = {
+ getSettings() {
+ return currentSettings;
+ },
+ setSettings(value) {
+ try {
+ localStorage.setItem(localSettingsSaveId, JSON.stringify(value));
+ }
+ catch (e) {
+ // noop
+ }
+ currentSettings = value;
+ },
+ now() {
+ return now();
+ },
+ };
+ if (hook) {
+ hook.on(HOOK_PLUGIN_SETTINGS_SET, (pluginId, value) => {
+ if (pluginId === this.plugin.id) {
+ this.fallbacks.setSettings(value);
+ }
+ });
+ }
+ this.proxiedOn = new Proxy({}, {
+ get: (_target, prop) => {
+ if (this.target) {
+ return this.target.on[prop];
+ }
+ else {
+ return (...args) => {
+ this.onQueue.push({
+ method: prop,
+ args,
+ });
+ };
+ }
+ },
+ });
+ this.proxiedTarget = new Proxy({}, {
+ get: (_target, prop) => {
+ if (this.target) {
+ return this.target[prop];
+ }
+ else if (prop === 'on') {
+ return this.proxiedOn;
+ }
+ else if (Object.keys(this.fallbacks).includes(prop)) {
+ return (...args) => {
+ this.targetQueue.push({
+ method: prop,
+ args,
+ resolve: () => { },
+ });
+ return this.fallbacks[prop](...args);
+ };
+ }
+ else {
+ return (...args) => {
+ return new Promise(resolve => {
+ this.targetQueue.push({
+ method: prop,
+ args,
+ resolve,
+ });
+ });
+ };
+ }
+ },
+ });
+ }
+ async setRealTarget(target) {
+ this.target = target;
+ for (const item of this.onQueue) {
+ this.target.on[item.method](...item.args);
+ }
+ for (const item of this.targetQueue) {
+ item.resolve(await this.target[item.method](...item.args));
+ }
+ }
+ }
+
+ function setupDevtoolsPlugin(pluginDescriptor, setupFn) {
+ const descriptor = pluginDescriptor;
+ const target = getTarget();
+ const hook = getDevtoolsGlobalHook();
+ const enableProxy = isProxyAvailable && descriptor.enableEarlyProxy;
+ if (hook && (target.__VUE_DEVTOOLS_PLUGIN_API_AVAILABLE__ || !enableProxy)) {
+ hook.emit(HOOK_SETUP, pluginDescriptor, setupFn);
+ }
+ else {
+ const proxy = enableProxy ? new ApiProxy(descriptor, hook) : null;
+ const list = target.__VUE_DEVTOOLS_PLUGINS__ = target.__VUE_DEVTOOLS_PLUGINS__ || [];
+ list.push({
+ pluginDescriptor: descriptor,
+ setupFn,
+ proxy,
+ });
+ if (proxy)
+ setupFn(proxy.proxiedTarget);
+ }
+ }
+
+ const VUE_I18N_COMPONENT_TYPES = 'vue-i18n: composer properties';
+ const VueDevToolsLabels = {
+ 'vue-devtools-plugin-vue-i18n': 'Vue I18n DevTools',
+ 'vue-i18n-resource-inspector': 'Vue I18n DevTools',
+ 'vue-i18n-timeline': 'Vue I18n'
+ };
+ const VueDevToolsPlaceholders = {
+ 'vue-i18n-resource-inspector': 'Search for scopes ...'
+ };
+ const VueDevToolsTimelineColors = {
+ 'vue-i18n-timeline': 0xffcd19
+ };
+ let devtoolsApi;
+ async function enableDevTools(app, i18n) {
+ return new Promise((resolve, reject) => {
+ try {
+ setupDevtoolsPlugin({
+ id: 'vue-devtools-plugin-vue-i18n',
+ label: VueDevToolsLabels['vue-devtools-plugin-vue-i18n'],
+ packageName: 'vue-i18n',
+ homepage: 'https://vue-i18n.intlify.dev',
+ logo: 'https://vue-i18n.intlify.dev/vue-i18n-devtools-logo.png',
+ componentStateTypes: [VUE_I18N_COMPONENT_TYPES],
+ app: app // eslint-disable-line @typescript-eslint/no-explicit-any
+ }, api => {
+ devtoolsApi = api;
+ api.on.visitComponentTree(({ componentInstance, treeNode }) => {
+ updateComponentTreeTags(componentInstance, treeNode, i18n);
+ });
+ api.on.inspectComponent(({ componentInstance, instanceData }) => {
+ if (componentInstance.vnode.el &&
+ componentInstance.vnode.el.__VUE_I18N__ &&
+ instanceData) {
+ if (i18n.mode === 'legacy') {
+ // ignore global scope on legacy mode
+ if (componentInstance.vnode.el.__VUE_I18N__ !==
+ i18n.global.__composer) {
+ inspectComposer(instanceData, componentInstance.vnode.el.__VUE_I18N__);
+ }
+ }
+ else {
+ inspectComposer(instanceData, componentInstance.vnode.el.__VUE_I18N__);
+ }
+ }
+ });
+ api.addInspector({
+ id: 'vue-i18n-resource-inspector',
+ label: VueDevToolsLabels['vue-i18n-resource-inspector'],
+ icon: 'language',
+ treeFilterPlaceholder: VueDevToolsPlaceholders['vue-i18n-resource-inspector']
+ });
+ api.on.getInspectorTree(payload => {
+ if (payload.app === app &&
+ payload.inspectorId === 'vue-i18n-resource-inspector') {
+ registerScope(payload, i18n);
+ }
+ });
+ const roots = new Map();
+ api.on.getInspectorState(async (payload) => {
+ if (payload.app === app &&
+ payload.inspectorId === 'vue-i18n-resource-inspector') {
+ api.unhighlightElement();
+ inspectScope(payload, i18n);
+ if (payload.nodeId === 'global') {
+ if (!roots.has(payload.app)) {
+ const [root] = await api.getComponentInstances(payload.app);
+ roots.set(payload.app, root);
+ }
+ api.highlightElement(roots.get(payload.app));
+ }
+ else {
+ const instance = getComponentInstance(payload.nodeId, i18n);
+ instance && api.highlightElement(instance);
+ }
+ }
+ });
+ api.on.editInspectorState(payload => {
+ if (payload.app === app &&
+ payload.inspectorId === 'vue-i18n-resource-inspector') {
+ editScope(payload, i18n);
+ }
+ });
+ api.addTimelineLayer({
+ id: 'vue-i18n-timeline',
+ label: VueDevToolsLabels['vue-i18n-timeline'],
+ color: VueDevToolsTimelineColors['vue-i18n-timeline']
+ });
+ resolve(true);
+ });
+ }
+ catch (e) {
+ console.error(e);
+ // eslint-disable-next-line @typescript-eslint/prefer-promise-reject-errors
+ reject(false);
+ }
+ });
+ }
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
+ function getI18nScopeLable(instance) {
+ return (instance.type.name ||
+ instance.type.displayName ||
+ instance.type.__file ||
+ 'Anonymous');
+ }
+ function updateComponentTreeTags(instance, // eslint-disable-line @typescript-eslint/no-explicit-any
+ treeNode, i18n) {
+ // prettier-ignore
+ const global = i18n.mode === 'composition'
+ ? i18n.global
+ : i18n.global.__composer;
+ if (instance && instance.vnode.el && instance.vnode.el.__VUE_I18N__) {
+ // add custom tags local scope only
+ if (instance.vnode.el.__VUE_I18N__ !== global) {
+ const tag = {
+ label: `i18n (${getI18nScopeLable(instance)} Scope)`,
+ textColor: 0x000000,
+ backgroundColor: 0xffcd19
+ };
+ treeNode.tags.push(tag);
+ }
+ }
+ }
+ function inspectComposer(instanceData, composer) {
+ const type = VUE_I18N_COMPONENT_TYPES;
+ instanceData.state.push({
+ type,
+ key: 'locale',
+ editable: true,
+ value: composer.locale.value
+ });
+ instanceData.state.push({
+ type,
+ key: 'availableLocales',
+ editable: false,
+ value: composer.availableLocales
+ });
+ instanceData.state.push({
+ type,
+ key: 'fallbackLocale',
+ editable: true,
+ value: composer.fallbackLocale.value
+ });
+ instanceData.state.push({
+ type,
+ key: 'inheritLocale',
+ editable: true,
+ value: composer.inheritLocale
+ });
+ instanceData.state.push({
+ type,
+ key: 'messages',
+ editable: false,
+ value: getLocaleMessageValue(composer.messages.value)
+ });
+ {
+ instanceData.state.push({
+ type,
+ key: 'datetimeFormats',
+ editable: false,
+ value: composer.datetimeFormats.value
+ });
+ instanceData.state.push({
+ type,
+ key: 'numberFormats',
+ editable: false,
+ value: composer.numberFormats.value
+ });
+ }
+ }
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
+ function getLocaleMessageValue(messages) {
+ const value = {};
+ Object.keys(messages).forEach((key) => {
+ const v = messages[key];
+ if (isFunction(v) && 'source' in v) {
+ value[key] = getMessageFunctionDetails(v);
+ }
+ else if (isMessageAST(v) && v.loc && v.loc.source) {
+ value[key] = v.loc.source;
+ }
+ else if (isObject(v)) {
+ value[key] = getLocaleMessageValue(v);
+ }
+ else {
+ value[key] = v;
+ }
+ });
+ return value;
+ }
+ const ESC = {
+ '<': '<',
+ '>': '>',
+ '"': '"',
+ '&': '&'
+ };
+ function escape(s) {
+ return s.replace(/[<>"&]/g, escapeChar);
+ }
+ function escapeChar(a) {
+ return ESC[a] || a;
+ }
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
+ function getMessageFunctionDetails(func) {
+ const argString = func.source ? `("${escape(func.source)}")` : `(?)`;
+ return {
+ _custom: {
+ type: 'function',
+ display: `<span>ƒ</span> ${argString}`
+ }
+ };
+ }
+ function registerScope(payload, i18n) {
+ payload.rootNodes.push({
+ id: 'global',
+ label: 'Global Scope'
+ });
+ // prettier-ignore
+ const global = i18n.mode === 'composition'
+ ? i18n.global
+ : i18n.global.__composer;
+ for (const [keyInstance, instance] of i18n.__instances) {
+ // prettier-ignore
+ const composer = i18n.mode === 'composition'
+ ? instance
+ : instance.__composer;
+ if (global === composer) {
+ continue;
+ }
+ payload.rootNodes.push({
+ id: composer.id.toString(),
+ label: `${getI18nScopeLable(keyInstance)} Scope`
+ });
+ }
+ }
+ function getComponentInstance(nodeId, i18n) {
+ let instance = null;
+ if (nodeId !== 'global') {
+ for (const [component, composer] of i18n.__instances.entries()) {
+ if (composer.id.toString() === nodeId) {
+ instance = component;
+ break;
+ }
+ }
+ }
+ return instance;
+ }
+ function getComposer$2(nodeId, i18n) {
+ if (nodeId === 'global') {
+ return i18n.mode === 'composition'
+ ? i18n.global
+ : i18n.global.__composer;
+ }
+ else {
+ const instance = Array.from(i18n.__instances.values()).find(item => item.id.toString() === nodeId);
+ if (instance) {
+ return i18n.mode === 'composition'
+ ? instance
+ : instance.__composer;
+ }
+ else {
+ return null;
+ }
+ }
+ }
+ function inspectScope(payload, i18n
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
+ ) {
+ const composer = getComposer$2(payload.nodeId, i18n);
+ if (composer) {
+ // TODO:
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
+ payload.state = makeScopeInspectState(composer);
+ }
+ return null;
+ }
+ function makeScopeInspectState(composer) {
+ const state = {};
+ const localeType = 'Locale related info';
+ const localeStates = [
+ {
+ type: localeType,
+ key: 'locale',
+ editable: true,
+ value: composer.locale.value
+ },
+ {
+ type: localeType,
+ key: 'fallbackLocale',
+ editable: true,
+ value: composer.fallbackLocale.value
+ },
+ {
+ type: localeType,
+ key: 'availableLocales',
+ editable: false,
+ value: composer.availableLocales
+ },
+ {
+ type: localeType,
+ key: 'inheritLocale',
+ editable: true,
+ value: composer.inheritLocale
+ }
+ ];
+ state[localeType] = localeStates;
+ const localeMessagesType = 'Locale messages info';
+ const localeMessagesStates = [
+ {
+ type: localeMessagesType,
+ key: 'messages',
+ editable: false,
+ value: getLocaleMessageValue(composer.messages.value)
+ }
+ ];
+ state[localeMessagesType] = localeMessagesStates;
+ {
+ const datetimeFormatsType = 'Datetime formats info';
+ const datetimeFormatsStates = [
+ {
+ type: datetimeFormatsType,
+ key: 'datetimeFormats',
+ editable: false,
+ value: composer.datetimeFormats.value
+ }
+ ];
+ state[datetimeFormatsType] = datetimeFormatsStates;
+ const numberFormatsType = 'Datetime formats info';
+ const numberFormatsStates = [
+ {
+ type: numberFormatsType,
+ key: 'numberFormats',
+ editable: false,
+ value: composer.numberFormats.value
+ }
+ ];
+ state[numberFormatsType] = numberFormatsStates;
+ }
+ return state;
+ }
+ function addTimelineEvent(event, payload) {
+ if (devtoolsApi) {
+ let groupId;
+ if (payload && 'groupId' in payload) {
+ groupId = payload.groupId;
+ delete payload.groupId;
+ }
+ devtoolsApi.addTimelineEvent({
+ layerId: 'vue-i18n-timeline',
+ event: {
+ title: event,
+ groupId,
+ time: Date.now(),
+ meta: {},
+ data: payload || {},
+ logType: event === 'compile-error'
+ ? 'error'
+ : event === 'fallback' || event === 'missing'
+ ? 'warning'
+ : 'default'
+ }
+ });
+ }
+ }
+ function editScope(payload, i18n) {
+ const composer = getComposer$2(payload.nodeId, i18n);
+ if (composer) {
+ const [field] = payload.path;
+ if (field === 'locale' && isString(payload.state.value)) {
+ composer.locale.value = payload.state.value;
+ }
+ else if (field === 'fallbackLocale' &&
+ (isString(payload.state.value) ||
+ isArray(payload.state.value) ||
+ isObject(payload.state.value))) {
+ composer.fallbackLocale.value = payload.state.value;
+ }
+ else if (field === 'inheritLocale' && isBoolean(payload.state.value)) {
+ composer.inheritLocale = payload.state.value;
+ }
+ }
+ }
+
+ /* eslint-disable @typescript-eslint/no-explicit-any */
+ /**
+ * Convert to I18n Composer Options from VueI18n Options
+ *
+ * @internal
+ */
+ function convertComposerOptions(options) {
+ const locale = isString(options.locale) ? options.locale : DEFAULT_LOCALE;
+ const fallbackLocale = isString(options.fallbackLocale) ||
+ isArray(options.fallbackLocale) ||
+ isPlainObject(options.fallbackLocale) ||
+ options.fallbackLocale === false
+ ? options.fallbackLocale
+ : locale;
+ const missing = isFunction(options.missing) ? options.missing : undefined;
+ const missingWarn = isBoolean(options.silentTranslationWarn) ||
+ isRegExp(options.silentTranslationWarn)
+ ? !options.silentTranslationWarn
+ : true;
+ const fallbackWarn = isBoolean(options.silentFallbackWarn) ||
+ isRegExp(options.silentFallbackWarn)
+ ? !options.silentFallbackWarn
+ : true;
+ const fallbackRoot = isBoolean(options.fallbackRoot)
+ ? options.fallbackRoot
+ : true;
+ const fallbackFormat = !!options.formatFallbackMessages;
+ const modifiers = isPlainObject(options.modifiers) ? options.modifiers : {};
+ const pluralizationRules = options.pluralizationRules;
+ const postTranslation = isFunction(options.postTranslation)
+ ? options.postTranslation
+ : undefined;
+ const warnHtmlMessage = isString(options.warnHtmlInMessage)
+ ? options.warnHtmlInMessage !== 'off'
+ : true;
+ const escapeParameter = !!options.escapeParameterHtml;
+ const inheritLocale = isBoolean(options.sync) ? options.sync : true;
+ let messages = options.messages;
+ if (isPlainObject(options.sharedMessages)) {
+ const sharedMessages = options.sharedMessages;
+ const locales = Object.keys(sharedMessages);
+ messages = locales.reduce((messages, locale) => {
+ const message = messages[locale] || (messages[locale] = {});
+ assign(message, sharedMessages[locale]);
+ return messages;
+ }, (messages || {}));
+ }
+ const { __i18n, __root, __injectWithOption } = options;
+ const datetimeFormats = options.datetimeFormats;
+ const numberFormats = options.numberFormats;
+ const flatJson = options.flatJson;
+ return {
+ locale,
+ fallbackLocale,
+ messages,
+ flatJson,
+ datetimeFormats,
+ numberFormats,
+ missing,
+ missingWarn,
+ fallbackWarn,
+ fallbackRoot,
+ fallbackFormat,
+ modifiers,
+ pluralRules: pluralizationRules,
+ postTranslation,
+ warnHtmlMessage,
+ escapeParameter,
+ messageResolver: options.messageResolver,
+ inheritLocale,
+ __i18n,
+ __root,
+ __injectWithOption
+ };
+ }
+ /**
+ * create VueI18n interface factory
+ *
+ * @internal
+ *
+ * @deprecated will be removed at vue-i18n v12
+ */
+ function createVueI18n(options = {}) {
+ const composer = createComposer(convertComposerOptions(options));
+ const { __extender } = options;
+ // defines VueI18n
+ const vueI18n = {
+ // id
+ id: composer.id,
+ // locale
+ get locale() {
+ return composer.locale.value;
+ },
+ set locale(val) {
+ composer.locale.value = val;
+ },
+ // fallbackLocale
+ get fallbackLocale() {
+ return composer.fallbackLocale.value;
+ },
+ set fallbackLocale(val) {
+ composer.fallbackLocale.value = val;
+ },
+ // messages
+ get messages() {
+ return composer.messages.value;
+ },
+ // datetimeFormats
+ get datetimeFormats() {
+ return composer.datetimeFormats.value;
+ },
+ // numberFormats
+ get numberFormats() {
+ return composer.numberFormats.value;
+ },
+ // availableLocales
+ get availableLocales() {
+ return composer.availableLocales;
+ },
+ // missing
+ get missing() {
+ return composer.getMissingHandler();
+ },
+ set missing(handler) {
+ composer.setMissingHandler(handler);
+ },
+ // silentTranslationWarn
+ get silentTranslationWarn() {
+ return isBoolean(composer.missingWarn)
+ ? !composer.missingWarn
+ : composer.missingWarn;
+ },
+ set silentTranslationWarn(val) {
+ composer.missingWarn = isBoolean(val) ? !val : val;
+ },
+ // silentFallbackWarn
+ get silentFallbackWarn() {
+ return isBoolean(composer.fallbackWarn)
+ ? !composer.fallbackWarn
+ : composer.fallbackWarn;
+ },
+ set silentFallbackWarn(val) {
+ composer.fallbackWarn = isBoolean(val) ? !val : val;
+ },
+ // modifiers
+ get modifiers() {
+ return composer.modifiers;
+ },
+ // formatFallbackMessages
+ get formatFallbackMessages() {
+ return composer.fallbackFormat;
+ },
+ set formatFallbackMessages(val) {
+ composer.fallbackFormat = val;
+ },
+ // postTranslation
+ get postTranslation() {
+ return composer.getPostTranslationHandler();
+ },
+ set postTranslation(handler) {
+ composer.setPostTranslationHandler(handler);
+ },
+ // sync
+ get sync() {
+ return composer.inheritLocale;
+ },
+ set sync(val) {
+ composer.inheritLocale = val;
+ },
+ // warnInHtmlMessage
+ get warnHtmlInMessage() {
+ return composer.warnHtmlMessage ? 'warn' : 'off';
+ },
+ set warnHtmlInMessage(val) {
+ composer.warnHtmlMessage = val !== 'off';
+ },
+ // escapeParameterHtml
+ get escapeParameterHtml() {
+ return composer.escapeParameter;
+ },
+ set escapeParameterHtml(val) {
+ composer.escapeParameter = val;
+ },
+ // pluralizationRules
+ get pluralizationRules() {
+ return composer.pluralRules || {};
+ },
+ // for internal
+ __composer: composer,
+ // t
+ t(...args) {
+ return Reflect.apply(composer.t, composer, [...args]);
+ },
+ // rt
+ rt(...args) {
+ return Reflect.apply(composer.rt, composer, [...args]);
+ },
+ // te
+ te(key, locale) {
+ return composer.te(key, locale);
+ },
+ // tm
+ tm(key) {
+ return composer.tm(key);
+ },
+ // getLocaleMessage
+ getLocaleMessage(locale) {
+ return composer.getLocaleMessage(locale);
+ },
+ // setLocaleMessage
+ setLocaleMessage(locale, message) {
+ composer.setLocaleMessage(locale, message);
+ },
+ // mergeLocaleMessage
+ mergeLocaleMessage(locale, message) {
+ composer.mergeLocaleMessage(locale, message);
+ },
+ // d
+ d(...args) {
+ return Reflect.apply(composer.d, composer, [...args]);
+ },
+ // getDateTimeFormat
+ getDateTimeFormat(locale) {
+ return composer.getDateTimeFormat(locale);
+ },
+ // setDateTimeFormat
+ setDateTimeFormat(locale, format) {
+ composer.setDateTimeFormat(locale, format);
+ },
+ // mergeDateTimeFormat
+ mergeDateTimeFormat(locale, format) {
+ composer.mergeDateTimeFormat(locale, format);
+ },
+ // n
+ n(...args) {
+ return Reflect.apply(composer.n, composer, [...args]);
+ },
+ // getNumberFormat
+ getNumberFormat(locale) {
+ return composer.getNumberFormat(locale);
+ },
+ // setNumberFormat
+ setNumberFormat(locale, format) {
+ composer.setNumberFormat(locale, format);
+ },
+ // mergeNumberFormat
+ mergeNumberFormat(locale, format) {
+ composer.mergeNumberFormat(locale, format);
+ }
+ };
+ vueI18n.__extender = __extender;
+ // for vue-devtools timeline event
+ {
+ vueI18n.__enableEmitter = (emitter) => {
+ const __composer = composer;
+ __composer[EnableEmitter] && __composer[EnableEmitter](emitter);
+ };
+ vueI18n.__disableEmitter = () => {
+ const __composer = composer;
+ __composer[DisableEmitter] && __composer[DisableEmitter]();
+ };
+ }
+ return vueI18n;
+ }
+ /* eslint-enable @typescript-eslint/no-explicit-any */
+
+ /**
+ * Supports compatibility for legacy vue-i18n APIs
+ * This mixin is used when we use vue-i18n@v9.x or later
+ */
+ function defineMixin(vuei18n, composer, i18n) {
+ return {
+ beforeCreate() {
+ const instance = vue.getCurrentInstance();
+ /* istanbul ignore if */
+ if (!instance) {
+ throw createI18nError(I18nErrorCodes.UNEXPECTED_ERROR);
+ }
+ const options = this.$options;
+ if (options.i18n) {
+ const optionsI18n = options.i18n;
+ if (options.__i18n) {
+ optionsI18n.__i18n = options.__i18n;
+ }
+ optionsI18n.__root = composer;
+ if (this === this.$root) {
+ // merge option and gttach global
+ this.$i18n = mergeToGlobal(vuei18n, optionsI18n);
+ }
+ else {
+ optionsI18n.__injectWithOption = true;
+ optionsI18n.__extender = i18n.__vueI18nExtend;
+ // atttach local VueI18n instance
+ this.$i18n = createVueI18n(optionsI18n);
+ // extend VueI18n instance
+ const _vueI18n = this.$i18n;
+ if (_vueI18n.__extender) {
+ _vueI18n.__disposer = _vueI18n.__extender(this.$i18n);
+ }
+ }
+ }
+ else if (options.__i18n) {
+ if (this === this.$root) {
+ // merge option and gttach global
+ this.$i18n = mergeToGlobal(vuei18n, options);
+ }
+ else {
+ // atttach local VueI18n instance
+ this.$i18n = createVueI18n({
+ __i18n: options.__i18n,
+ __injectWithOption: true,
+ __extender: i18n.__vueI18nExtend,
+ __root: composer
+ });
+ // extend VueI18n instance
+ const _vueI18n = this.$i18n;
+ if (_vueI18n.__extender) {
+ _vueI18n.__disposer = _vueI18n.__extender(this.$i18n);
+ }
+ }
+ }
+ else {
+ // attach global VueI18n instance
+ this.$i18n = vuei18n;
+ }
+ if (options.__i18nGlobal) {
+ adjustI18nResources(composer, options, options);
+ }
+ // defines vue-i18n legacy APIs
+ this.$t = (...args) => this.$i18n.t(...args);
+ this.$rt = (...args) => this.$i18n.rt(...args);
+ this.$te = (key, locale) => this.$i18n.te(key, locale);
+ this.$d = (...args) => this.$i18n.d(...args);
+ this.$n = (...args) => this.$i18n.n(...args);
+ this.$tm = (key) => this.$i18n.tm(key);
+ i18n.__setInstance(instance, this.$i18n);
+ },
+ mounted() {
+ /* istanbul ignore if */
+ if (this.$el &&
+ this.$i18n) {
+ const _vueI18n = this.$i18n;
+ this.$el.__VUE_I18N__ = _vueI18n.__composer;
+ const emitter = (this.__v_emitter =
+ createEmitter());
+ _vueI18n.__enableEmitter && _vueI18n.__enableEmitter(emitter);
+ emitter.on('*', addTimelineEvent);
+ }
+ },
+ unmounted() {
+ const instance = vue.getCurrentInstance();
+ /* istanbul ignore if */
+ if (!instance) {
+ throw createI18nError(I18nErrorCodes.UNEXPECTED_ERROR);
+ }
+ const _vueI18n = this.$i18n;
+ /* istanbul ignore if */
+ if (this.$el &&
+ this.$el.__VUE_I18N__) {
+ if (this.__v_emitter) {
+ this.__v_emitter.off('*', addTimelineEvent);
+ delete this.__v_emitter;
+ }
+ if (this.$i18n) {
+ _vueI18n.__disableEmitter && _vueI18n.__disableEmitter();
+ delete this.$el.__VUE_I18N__;
+ }
+ }
+ delete this.$t;
+ delete this.$rt;
+ delete this.$te;
+ delete this.$d;
+ delete this.$n;
+ delete this.$tm;
+ if (_vueI18n.__disposer) {
+ _vueI18n.__disposer();
+ delete _vueI18n.__disposer;
+ delete _vueI18n.__extender;
+ }
+ i18n.__deleteInstance(instance);
+ delete this.$i18n;
+ }
+ };
+ }
+ function mergeToGlobal(g, options) {
+ g.locale = options.locale || g.locale;
+ g.fallbackLocale = options.fallbackLocale || g.fallbackLocale;
+ g.missing = options.missing || g.missing;
+ g.silentTranslationWarn =
+ options.silentTranslationWarn || g.silentFallbackWarn;
+ g.silentFallbackWarn = options.silentFallbackWarn || g.silentFallbackWarn;
+ g.formatFallbackMessages =
+ options.formatFallbackMessages || g.formatFallbackMessages;
+ g.postTranslation = options.postTranslation || g.postTranslation;
+ g.warnHtmlInMessage = options.warnHtmlInMessage || g.warnHtmlInMessage;
+ g.escapeParameterHtml = options.escapeParameterHtml || g.escapeParameterHtml;
+ g.sync = options.sync || g.sync;
+ g.__composer[SetPluralRulesSymbol](options.pluralizationRules || g.pluralizationRules);
+ const messages = getLocaleMessages(g.locale, {
+ messages: options.messages,
+ __i18n: options.__i18n
+ });
+ Object.keys(messages).forEach(locale => g.mergeLocaleMessage(locale, messages[locale]));
+ if (options.datetimeFormats) {
+ Object.keys(options.datetimeFormats).forEach(locale => g.mergeDateTimeFormat(locale, options.datetimeFormats[locale]));
+ }
+ if (options.numberFormats) {
+ Object.keys(options.numberFormats).forEach(locale => g.mergeNumberFormat(locale, options.numberFormats[locale]));
+ }
+ return g;
+ }
+
+ const baseFormatProps = {
+ tag: {
+ type: [String, Object]
+ },
+ locale: {
+ type: String
+ },
+ scope: {
+ type: String,
+ // NOTE: avoid https://github.com/microsoft/rushstack/issues/1050
+ validator: (val /* ComponentI18nScope */) => val === 'parent' || val === 'global',
+ default: 'parent' /* ComponentI18nScope */
+ },
+ i18n: {
+ type: Object
+ }
+ };
+
+ function getInterpolateArg(
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
+ { slots }, // SetupContext,
+ keys) {
+ if (keys.length === 1 && keys[0] === 'default') {
+ // default slot with list
+ const ret = slots.default ? slots.default() : [];
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
+ return ret.reduce((slot, current) => {
+ return [
+ ...slot,
+ // prettier-ignore
+ ...(current.type === vue.Fragment ? current.children : [current])
+ ];
+ }, []);
+ }
+ else {
+ // named slots
+ return keys.reduce((arg, key) => {
+ const slot = slots[key];
+ if (slot) {
+ arg[key] = slot();
+ }
+ return arg;
+ }, create());
+ }
+ }
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
+ function getFragmentableTag() {
+ return vue.Fragment;
+ }
+
+ const TranslationImpl = /*#__PURE__*/ vue.defineComponent({
+ /* eslint-disable */
+ name: 'i18n-t',
+ props: assign({
+ keypath: {
+ type: String,
+ required: true
+ },
+ plural: {
+ type: [Number, String],
+ validator: (val) => isNumber(val) || !isNaN(val)
+ }
+ }, baseFormatProps),
+ /* eslint-enable */
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
+ setup(props, context) {
+ const { slots, attrs } = context;
+ // NOTE: avoid https://github.com/microsoft/rushstack/issues/1050
+ const i18n = props.i18n ||
+ useI18n({
+ useScope: props.scope,
+ __useComponent: true
+ });
+ return () => {
+ const keys = Object.keys(slots).filter(key => key[0] !== '_');
+ const options = create();
+ if (props.locale) {
+ options.locale = props.locale;
+ }
+ if (props.plural !== undefined) {
+ options.plural = isString(props.plural) ? +props.plural : props.plural;
+ }
+ const arg = getInterpolateArg(context, keys);
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
+ const children = i18n[TranslateVNodeSymbol](props.keypath, arg, options);
+ const assignedAttrs = assign(create(), attrs);
+ const tag = isString(props.tag) || isObject(props.tag)
+ ? props.tag
+ : getFragmentableTag();
+ return vue.h(tag, assignedAttrs, children);
+ };
+ }
+ });
+ /**
+ * export the public type for h/tsx inference
+ * also to avoid inline import() in generated d.ts files
+ */
+ /**
+ * Translation Component
+ *
+ * @remarks
+ * See the following items for property about details
+ *
+ * @VueI18nSee [TranslationProps](component#translationprops)
+ * @VueI18nSee [BaseFormatProps](component#baseformatprops)
+ * @VueI18nSee [Component Interpolation](../guide/advanced/component)
+ *
+ * @example
+ * ```html
+ * <div id="app">
+ * <!-- ... -->
+ * <i18n keypath="term" tag="label" for="tos">
+ * <a :href="url" target="_blank">{{ $t('tos') }}</a>
+ * </i18n>
+ * <!-- ... -->
+ * </div>
+ * ```
+ * ```js
+ * import { createApp } from 'vue'
+ * import { createI18n } from 'vue-i18n'
+ *
+ * const messages = {
+ * en: {
+ * tos: 'Term of Service',
+ * term: 'I accept xxx {0}.'
+ * },
+ * ja: {
+ * tos: '利用規約',
+ * term: '私は xxx の{0}に同意します。'
+ * }
+ * }
+ *
+ * const i18n = createI18n({
+ * locale: 'en',
+ * messages
+ * })
+ *
+ * const app = createApp({
+ * data: {
+ * url: '/term'
+ * }
+ * }).use(i18n).mount('#app')
+ * ```
+ *
+ * @VueI18nComponent
+ */
+ const Translation = TranslationImpl;
+ const I18nT = Translation;
+
+ function isVNode(target) {
+ return isArray(target) && !isString(target[0]);
+ }
+ function renderFormatter(props, context, slotKeys, partFormatter) {
+ const { slots, attrs } = context;
+ return () => {
+ const options = { part: true };
+ let overrides = create();
+ if (props.locale) {
+ options.locale = props.locale;
+ }
+ if (isString(props.format)) {
+ options.key = props.format;
+ }
+ else if (isObject(props.format)) {
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
+ if (isString(props.format.key)) {
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
+ options.key = props.format.key;
+ }
+ // Filter out number format options only
+ overrides = Object.keys(props.format).reduce((options, prop) => {
+ return slotKeys.includes(prop)
+ ? assign(create(), options, { [prop]: props.format[prop] }) // eslint-disable-line @typescript-eslint/no-explicit-any
+ : options;
+ }, create());
+ }
+ const parts = partFormatter(...[props.value, options, overrides]);
+ let children = [options.key];
+ if (isArray(parts)) {
+ children = parts.map((part, index) => {
+ const slot = slots[part.type];
+ const node = slot
+ ? slot({ [part.type]: part.value, index, parts })
+ : [part.value];
+ if (isVNode(node)) {
+ node[0].key = `${part.type}-${index}`;
+ }
+ return node;
+ });
+ }
+ else if (isString(parts)) {
+ children = [parts];
+ }
+ const assignedAttrs = assign(create(), attrs);
+ const tag = isString(props.tag) || isObject(props.tag)
+ ? props.tag
+ : getFragmentableTag();
+ return vue.h(tag, assignedAttrs, children);
+ };
+ }
+
+ const NumberFormatImpl = /*#__PURE__*/ vue.defineComponent({
+ /* eslint-disable */
+ name: 'i18n-n',
+ props: assign({
+ value: {
+ type: Number,
+ required: true
+ },
+ format: {
+ type: [String, Object]
+ }
+ }, baseFormatProps),
+ /* eslint-enable */
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
+ setup(props, context) {
+ const i18n = props.i18n ||
+ useI18n({
+ useScope: props.scope,
+ __useComponent: true
+ });
+ return renderFormatter(props, context, NUMBER_FORMAT_OPTIONS_KEYS, (...args) =>
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
+ i18n[NumberPartsSymbol](...args));
+ }
+ });
+ /**
+ * export the public type for h/tsx inference
+ * also to avoid inline import() in generated d.ts files
+ */
+ /**
+ * Number Format Component
+ *
+ * @remarks
+ * See the following items for property about details
+ *
+ * @VueI18nSee [FormattableProps](component#formattableprops)
+ * @VueI18nSee [BaseFormatProps](component#baseformatprops)
+ * @VueI18nSee [Custom Formatting](../guide/essentials/number#custom-formatting)
+ *
+ * @VueI18nDanger
+ * Not supported IE, due to no support `Intl.NumberFormat#formatToParts` in [IE](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/NumberFormat/formatToParts)
+ *
+ * If you want to use it, you need to use [polyfill](https://github.com/formatjs/formatjs/tree/main/packages/intl-numberformat)
+ *
+ * @VueI18nComponent
+ */
+ const NumberFormat = NumberFormatImpl;
+ const I18nN = NumberFormat;
+
+ function getComposer$1(i18n, instance) {
+ const i18nInternal = i18n;
+ if (i18n.mode === 'composition') {
+ return (i18nInternal.__getInstance(instance) || i18n.global);
+ }
+ else {
+ const vueI18n = i18nInternal.__getInstance(instance);
+ return vueI18n != null
+ ? vueI18n.__composer
+ : i18n.global.__composer;
+ }
+ }
+ /**
+ * @deprecated will be removed at vue-i18n v12
+ */
+ function vTDirective(i18n) {
+ const _process = (binding) => {
+ {
+ warnOnce(getWarnMessage(I18nWarnCodes.DEPRECATE_TRANSLATE_CUSTOME_DIRECTIVE));
+ }
+ const { instance, value } = binding;
+ /* istanbul ignore if */
+ if (!instance || !instance.$) {
+ throw createI18nError(I18nErrorCodes.UNEXPECTED_ERROR);
+ }
+ const composer = getComposer$1(i18n, instance.$);
+ const parsedValue = parseValue(value);
+ return [
+ Reflect.apply(composer.t, composer, [...makeParams(parsedValue)]),
+ composer
+ ];
+ };
+ const register = (el, binding) => {
+ const [textContent, composer] = _process(binding);
+ if (inBrowser && i18n.global === composer) {
+ // global scope only
+ el.__i18nWatcher = vue.watch(composer.locale, () => {
+ binding.instance && binding.instance.$forceUpdate();
+ });
+ }
+ el.__composer = composer;
+ el.textContent = textContent;
+ };
+ const unregister = (el) => {
+ if (inBrowser && el.__i18nWatcher) {
+ el.__i18nWatcher();
+ el.__i18nWatcher = undefined;
+ delete el.__i18nWatcher;
+ }
+ if (el.__composer) {
+ el.__composer = undefined;
+ delete el.__composer;
+ }
+ };
+ const update = (el, { value }) => {
+ if (el.__composer) {
+ const composer = el.__composer;
+ const parsedValue = parseValue(value);
+ el.textContent = Reflect.apply(composer.t, composer, [
+ ...makeParams(parsedValue)
+ ]);
+ }
+ };
+ const getSSRProps = (binding) => {
+ const [textContent] = _process(binding);
+ return { textContent };
+ };
+ return {
+ created: register,
+ unmounted: unregister,
+ beforeUpdate: update,
+ getSSRProps
+ };
+ }
+ function parseValue(value) {
+ if (isString(value)) {
+ return { path: value };
+ }
+ else if (isPlainObject(value)) {
+ if (!('path' in value)) {
+ throw createI18nError(I18nErrorCodes.REQUIRED_VALUE, 'path');
+ }
+ return value;
+ }
+ else {
+ throw createI18nError(I18nErrorCodes.INVALID_VALUE);
+ }
+ }
+ function makeParams(value) {
+ const { path, locale, args, choice, plural } = value;
+ const options = {};
+ const named = args || {};
+ if (isString(locale)) {
+ options.locale = locale;
+ }
+ if (isNumber(choice)) {
+ options.plural = choice;
+ }
+ if (isNumber(plural)) {
+ options.plural = plural;
+ }
+ return [path, named, options];
+ }
+
+ function apply(app, i18n, ...options) {
+ const pluginOptions = isPlainObject(options[0])
+ ? options[0]
+ : {};
+ const globalInstall = isBoolean(pluginOptions.globalInstall)
+ ? pluginOptions.globalInstall
+ : true;
+ if (globalInstall) {
+ [Translation.name, 'I18nT'].forEach(name => app.component(name, Translation));
+ [NumberFormat.name, 'I18nN'].forEach(name => app.component(name, NumberFormat));
+ [DatetimeFormat.name, 'I18nD'].forEach(name => app.component(name, DatetimeFormat));
+ }
+ // install directive
+ {
+ app.directive('t', vTDirective(i18n));
+ }
+ }
+
+ /**
+ * Injection key for {@link useI18n}
+ *
+ * @remarks
+ * The global injection key for I18n instances with `useI18n`. this injection key is used in Web Components.
+ * Specify the i18n instance created by {@link createI18n} together with `provide` function.
+ *
+ * @VueI18nGeneral
+ */
+ const I18nInjectionKey =
+ /* #__PURE__*/ makeSymbol('global-vue-i18n');
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
+ function createI18n(options = {}) {
+ // prettier-ignore
+ const __legacyMode = isBoolean(options.legacy)
+ ? options.legacy
+ : true;
+ if (__legacyMode) {
+ warnOnce(getWarnMessage(I18nWarnCodes.DEPRECATE_LEGACY_MODE));
+ }
+ // prettier-ignore
+ const __globalInjection = isBoolean(options.globalInjection)
+ ? options.globalInjection
+ : true;
+ const __instances = new Map();
+ const [globalScope, __global] = createGlobal(options, __legacyMode);
+ const symbol = /* #__PURE__*/ makeSymbol('vue-i18n' );
+ function __getInstance(component) {
+ return __instances.get(component) || null;
+ }
+ function __setInstance(component, instance) {
+ __instances.set(component, instance);
+ }
+ function __deleteInstance(component) {
+ __instances.delete(component);
+ }
+ const i18n = {
+ // mode
+ get mode() {
+ return __legacyMode
+ ? 'legacy'
+ : 'composition';
+ },
+ // install plugin
+ async install(app, ...options) {
+ {
+ app.__VUE_I18N__ = i18n;
+ }
+ // setup global provider
+ app.__VUE_I18N_SYMBOL__ = symbol;
+ app.provide(app.__VUE_I18N_SYMBOL__, i18n);
+ // set composer & vuei18n extend hook options from plugin options
+ if (isPlainObject(options[0])) {
+ const opts = options[0];
+ i18n.__composerExtend =
+ opts.__composerExtend;
+ i18n.__vueI18nExtend =
+ opts.__vueI18nExtend;
+ }
+ // global method and properties injection for Composition API
+ let globalReleaseHandler = null;
+ if (!__legacyMode && __globalInjection) {
+ globalReleaseHandler = injectGlobalFields(app, i18n.global);
+ }
+ // install built-in components and directive
+ {
+ apply(app, i18n, ...options);
+ }
+ // setup mixin for Legacy API
+ if (__legacyMode) {
+ app.mixin(defineMixin(__global, __global.__composer, i18n));
+ }
+ // release global scope
+ const unmountApp = app.unmount;
+ app.unmount = () => {
+ globalReleaseHandler && globalReleaseHandler();
+ i18n.dispose();
+ unmountApp();
+ };
+ // setup vue-devtools plugin
+ {
+ const ret = await enableDevTools(app, i18n);
+ if (!ret) {
+ throw createI18nError(I18nErrorCodes.CANNOT_SETUP_VUE_DEVTOOLS_PLUGIN);
+ }
+ const emitter = createEmitter();
+ if (__legacyMode) {
+ const _vueI18n = __global;
+ _vueI18n.__enableEmitter && _vueI18n.__enableEmitter(emitter);
+ }
+ else {
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
+ const _composer = __global;
+ _composer[EnableEmitter] && _composer[EnableEmitter](emitter);
+ }
+ emitter.on('*', addTimelineEvent);
+ }
+ },
+ // global accessor
+ get global() {
+ return __global;
+ },
+ dispose() {
+ globalScope.stop();
+ },
+ // @internal
+ __instances,
+ // @internal
+ __getInstance,
+ // @internal
+ __setInstance,
+ // @internal
+ __deleteInstance
+ };
+ return i18n;
+ }
+ function useI18n(options = {}) {
+ const instance = vue.getCurrentInstance();
+ if (instance == null) {
+ throw createI18nError(I18nErrorCodes.MUST_BE_CALL_SETUP_TOP);
+ }
+ if (!instance.isCE &&
+ instance.appContext.app != null &&
+ !instance.appContext.app.__VUE_I18N_SYMBOL__) {
+ throw createI18nError(I18nErrorCodes.NOT_INSTALLED);
+ }
+ const i18n = getI18nInstance(instance);
+ const gl = getGlobalComposer(i18n);
+ const componentOptions = getComponentOptions(instance);
+ const scope = getScope(options, componentOptions);
+ if (scope === 'global') {
+ adjustI18nResources(gl, options, componentOptions);
+ return gl;
+ }
+ if (scope === 'parent') {
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
+ let composer = getComposer(i18n, instance, options.__useComponent);
+ if (composer == null) {
+ {
+ warn(getWarnMessage(I18nWarnCodes.NOT_FOUND_PARENT_SCOPE));
+ }
+ composer = gl;
+ }
+ return composer;
+ }
+ const i18nInternal = i18n;
+ let composer = i18nInternal.__getInstance(instance);
+ if (composer == null) {
+ const composerOptions = assign({}, options);
+ if ('__i18n' in componentOptions) {
+ composerOptions.__i18n = componentOptions.__i18n;
+ }
+ if (gl) {
+ composerOptions.__root = gl;
+ }
+ composer = createComposer(composerOptions);
+ if (i18nInternal.__composerExtend) {
+ composer[DisposeSymbol] =
+ i18nInternal.__composerExtend(composer);
+ }
+ setupLifeCycle(i18nInternal, instance, composer);
+ i18nInternal.__setInstance(instance, composer);
+ }
+ else {
+ if (scope === 'local') {
+ warn(getWarnMessage(I18nWarnCodes.DUPLICATE_USE_I18N_CALLING));
+ }
+ }
+ return composer;
+ }
+ function createGlobal(options, legacyMode) {
+ const scope = vue.effectScope();
+ const obj = legacyMode
+ ? scope.run(() => createVueI18n(options))
+ : scope.run(() => createComposer(options));
+ if (obj == null) {
+ throw createI18nError(I18nErrorCodes.UNEXPECTED_ERROR);
+ }
+ return [scope, obj];
+ }
+ function getI18nInstance(instance) {
+ const i18n = vue.inject(!instance.isCE
+ ? instance.appContext.app.__VUE_I18N_SYMBOL__
+ : I18nInjectionKey);
+ /* istanbul ignore if */
+ if (!i18n) {
+ throw createI18nError(!instance.isCE
+ ? I18nErrorCodes.UNEXPECTED_ERROR
+ : I18nErrorCodes.NOT_INSTALLED_WITH_PROVIDE);
+ }
+ return i18n;
+ }
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
+ function getScope(options, componentOptions) {
+ // prettier-ignore
+ return isEmptyObject(options)
+ ? ('__i18n' in componentOptions)
+ ? 'local'
+ : 'global'
+ : !options.useScope
+ ? 'local'
+ : options.useScope;
+ }
+ function getGlobalComposer(i18n) {
+ // prettier-ignore
+ return i18n.mode === 'composition'
+ ? i18n.global
+ : i18n.global.__composer;
+ }
+ function getComposer(i18n, target, useComponent = false) {
+ let composer = null;
+ const root = target.root;
+ let current = getParentComponentInstance(target, useComponent);
+ while (current != null) {
+ const i18nInternal = i18n;
+ if (i18n.mode === 'composition') {
+ composer = i18nInternal.__getInstance(current);
+ }
+ else {
+ {
+ const vueI18n = i18nInternal.__getInstance(current);
+ if (vueI18n != null) {
+ composer = vueI18n
+ .__composer;
+ if (useComponent &&
+ composer &&
+ !composer[InejctWithOptionSymbol] // eslint-disable-line @typescript-eslint/no-explicit-any
+ ) {
+ composer = null;
+ }
+ }
+ }
+ }
+ if (composer != null) {
+ break;
+ }
+ if (root === current) {
+ break;
+ }
+ current = current.parent;
+ }
+ return composer;
+ }
+ function getParentComponentInstance(target, useComponent = false) {
+ if (target == null) {
+ return null;
+ }
+ // if `useComponent: true` will be specified, we get lexical scope owner instance for use-case slots
+ return !useComponent
+ ? target.parent
+ : target.vnode.ctx || target.parent; // eslint-disable-line @typescript-eslint/no-explicit-any
+ }
+ function setupLifeCycle(i18n, target, composer) {
+ let emitter = null;
+ vue.onMounted(() => {
+ // inject composer instance to DOM for intlify-devtools
+ if (target.vnode.el) {
+ target.vnode.el.__VUE_I18N__ = composer;
+ emitter = createEmitter();
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
+ const _composer = composer;
+ _composer[EnableEmitter] && _composer[EnableEmitter](emitter);
+ emitter.on('*', addTimelineEvent);
+ }
+ }, target);
+ vue.onUnmounted(() => {
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
+ const _composer = composer;
+ // remove composer instance from DOM for intlify-devtools
+ if (target.vnode.el &&
+ target.vnode.el.__VUE_I18N__) {
+ emitter && emitter.off('*', addTimelineEvent);
+ _composer[DisableEmitter] && _composer[DisableEmitter]();
+ delete target.vnode.el.__VUE_I18N__;
+ }
+ i18n.__deleteInstance(target);
+ // dispose extended resources
+ const dispose = _composer[DisposeSymbol];
+ if (dispose) {
+ dispose();
+ delete _composer[DisposeSymbol];
+ }
+ }, target);
+ }
+ const globalExportProps = [
+ 'locale',
+ 'fallbackLocale',
+ 'availableLocales'
+ ];
+ const globalExportMethods = ['t', 'rt', 'd', 'n', 'tm', 'te']
+ ;
+ function injectGlobalFields(app, composer) {
+ const i18n = Object.create(null);
+ globalExportProps.forEach(prop => {
+ const desc = Object.getOwnPropertyDescriptor(composer, prop);
+ if (!desc) {
+ throw createI18nError(I18nErrorCodes.UNEXPECTED_ERROR);
+ }
+ const wrap = vue.isRef(desc.value) // check computed props
+ ? {
+ get() {
+ return desc.value.value;
+ },
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
+ set(val) {
+ desc.value.value = val;
+ }
+ }
+ : {
+ get() {
+ return desc.get && desc.get();
+ }
+ };
+ Object.defineProperty(i18n, prop, wrap);
+ });
+ app.config.globalProperties.$i18n = i18n;
+ globalExportMethods.forEach(method => {
+ const desc = Object.getOwnPropertyDescriptor(composer, method);
+ if (!desc || !desc.value) {
+ throw createI18nError(I18nErrorCodes.UNEXPECTED_ERROR);
+ }
+ Object.defineProperty(app.config.globalProperties, `$${method}`, desc);
+ });
+ const dispose = () => {
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
+ delete app.config.globalProperties.$i18n;
+ globalExportMethods.forEach(method => {
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
+ delete app.config.globalProperties[`$${method}`];
+ });
+ };
+ return dispose;
+ }
+
+ const DatetimeFormatImpl = /* #__PURE__*/ vue.defineComponent({
+ /* eslint-disable */
+ name: 'i18n-d',
+ props: assign({
+ value: {
+ type: [Number, Date],
+ required: true
+ },
+ format: {
+ type: [String, Object]
+ }
+ }, baseFormatProps),
+ /* eslint-enable */
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
+ setup(props, context) {
+ const i18n = props.i18n ||
+ useI18n({
+ useScope: props.scope,
+ __useComponent: true
+ });
+ return renderFormatter(props, context, DATETIME_FORMAT_OPTIONS_KEYS, (...args) =>
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
+ i18n[DatetimePartsSymbol](...args));
+ }
+ });
+ /**
+ * Datetime Format Component
+ *
+ * @remarks
+ * See the following items for property about details
+ *
+ * @VueI18nSee [FormattableProps](component#formattableprops)
+ * @VueI18nSee [BaseFormatProps](component#baseformatprops)
+ * @VueI18nSee [Custom Formatting](../guide/essentials/datetime#custom-formatting)
+ *
+ * @VueI18nDanger
+ * Not supported IE, due to no support `Intl.DateTimeFormat#formatToParts` in [IE](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/DateTimeFormat/formatToParts)
+ *
+ * If you want to use it, you need to use [polyfill](https://github.com/formatjs/formatjs/tree/main/packages/intl-datetimeformat)
+ *
+ * @VueI18nComponent
+ */
+ const DatetimeFormat = DatetimeFormatImpl;
+ const I18nD = DatetimeFormat;
+
+ // register message compiler at vue-i18n
+ registerMessageCompiler(compile);
+ // register message resolver at vue-i18n
+ registerMessageResolver(resolveValue);
+ // register fallback locale at vue-i18n
+ registerLocaleFallbacker(fallbackWithLocaleChain);
+ // NOTE: experimental !!
+ {
+ const target = getGlobalThis();
+ target.__INTLIFY__ = true;
+ setDevToolsHook(target.__INTLIFY_DEVTOOLS_GLOBAL_HOOK__);
+ }
+ {
+ initDev();
+ }
+
+ exports.DatetimeFormat = DatetimeFormat;
+ exports.I18nD = I18nD;
+ exports.I18nInjectionKey = I18nInjectionKey;
+ exports.I18nN = I18nN;
+ exports.I18nT = I18nT;
+ exports.NumberFormat = NumberFormat;
+ exports.Translation = Translation;
+ exports.VERSION = VERSION;
+ exports.createI18n = createI18n;
+ exports.useI18n = useI18n;
+ exports.vTDirective = vTDirective;
+
+ return exports;
+
+})({}, Vue);
--
Gitblit v1.9.0