/**
 * Swiper 3.2.7
 * Most modern mobile touch slider and framework with hardware accelerated transitions
 * 
 * http://www.idangero.us/swiper/
 * 
 * Copyright 2015, Vladimir Kharlampidi
 * The iDangero.us
 * http://www.idangero.us/
 * 
 * Licensed under MIT
 * 
 * Released on: December 7, 2015
 */
.swiper-container {
  margin: 0 auto;
  position: relative;
  overflow: hidden;
  /* Fix of Webkit flickering */
  z-index: 1;
}
.swiper-container-no-flexbox .swiper-slide {
  float: left;
}
.swiper-container-vertical > .swiper-wrapper {
  -webkit-box-orient: vertical;
  -moz-box-orient: vertical;
  -ms-flex-direction: column;
  -webkit-flex-direction: column;
  flex-direction: column;
}
.swiper-wrapper {
  position: relative;
  width: 100%;
  height: 100%;
  z-index: 1;
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  -webkit-transition-property: -webkit-transform;
  -moz-transition-property: -moz-transform;
  -o-transition-property: -o-transform;
  -ms-transition-property: -ms-transform;
  transition-property: transform;
  -webkit-box-sizing: content-box;
  -moz-box-sizing: content-box;
  box-sizing: content-box;
}
.swiper-container-android .swiper-slide,
.swiper-wrapper {
  -webkit-transform: translate3d(0px, 0, 0);
  -moz-transform: translate3d(0px, 0, 0);
  -o-transform: translate(0px, 0px);
  -ms-transform: translate3d(0px, 0, 0);
  transform: translate3d(0px, 0, 0);
}
.swiper-container-multirow > .swiper-wrapper {
  -webkit-box-lines: multiple;
  -moz-box-lines: multiple;
  -ms-flex-wrap: wrap;
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
}
.swiper-container-free-mode > .swiper-wrapper {
  -webkit-transition-timing-function: ease-out;
  -moz-transition-timing-function: ease-out;
  -ms-transition-timing-function: ease-out;
  -o-transition-timing-function: ease-out;
  transition-timing-function: ease-out;
  margin: 0 auto;
}
.swiper-slide {
  -webkit-flex-shrink: 0;
  -ms-flex: 0 0 auto;
  flex-shrink: 0;
  width: 100%;
  height: 100%;
  position: relative;
}
/* Auto Height */
.swiper-container-autoheight,
.swiper-container-autoheight .swiper-slide {
  height: auto;
}
.swiper-container-autoheight .swiper-wrapper {
  -webkit-box-align: start;
  -ms-flex-align: start;
  -webkit-align-items: flex-start;
  align-items: flex-start;
  -webkit-transition-property: -webkit-transform, height;
  -moz-transition-property: -moz-transform;
  -o-transition-property: -o-transform;
  -ms-transition-property: -ms-transform;
  transition-property: transform, height;
}
/* a11y */
.swiper-container .swiper-notification {
  position: absolute;
  left: 0;
  top: 0;
  pointer-events: none;
  opacity: 0;
  z-index: -1000;
}
/* IE10 Windows Phone 8 Fixes */
.swiper-wp8-horizontal {
  -ms-touch-action: pan-y;
  touch-action: pan-y;
}
.swiper-wp8-vertical {
  -ms-touch-action: pan-x;
  touch-action: pan-x;
}
/* Arrows */
.swiper-button-prev,
.swiper-button-next {
  position: absolute;
  top: 50%;
  width: 40px;
  height: 40px;
  margin-top: -20px;
  z-index: 10;
  cursor: pointer;
  -moz-background-size: 40px 40px;
  -webkit-background-size: 40px 40px;
  background-size: 40px 40px;
  background-position: center;
  background-repeat: no-repeat;
}
.swiper-button-prev.swiper-button-disabled,
.swiper-button-next.swiper-button-disabled {
  opacity: 0.35;
  cursor: auto;
  pointer-events: none;
}

.swiper-button-prev,
.swiper-container-rtl .swiper-button-next {
  background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20viewBox%3D'0%200%2027%2044'%3E%3Cpath%20d%3D'M0%2C22L22%2C0l2.1%2C2.1L4.2%2C22l19.9%2C19.9L22%2C44L0%2C22L0%2C22L0%2C22z'%20fill%3D'%23007aff'%2F%3E%3C%2Fsvg%3E");
  left: 10px;
  right: auto;
}

.swiper-button-prev.swiper-button-black,
.swiper-container-rtl .swiper-button-next.swiper-button-black {
  background-image:url("data:image/svg+xml;charset=utf-8;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iaXNvLTg4NTktMSI/Pgo8IS0tIEdlbmVyYXRvcjogQWRvYmUgSWxsdXN0cmF0b3IgMTguMC4wLCBTVkcgRXhwb3J0IFBsdWctSW4gLiBTVkcgVmVyc2lvbjogNi4wMCBCdWlsZCAwKSAgLS0+CjwhRE9DVFlQRSBzdmcgUFVCTElDICItLy9XM0MvL0RURCBTVkcgMS4xLy9FTiIgImh0dHA6Ly93d3cudzMub3JnL0dyYXBoaWNzL1NWRy8xLjEvRFREL3N2ZzExLmR0ZCI+CjxzdmcgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB4bWxuczp4bGluaz0iaHR0cDovL3d3dy53My5vcmcvMTk5OS94bGluayIgdmVyc2lvbj0iMS4xIiBpZD0iQ2FwYV8xIiB4PSIwcHgiIHk9IjBweCIgdmlld0JveD0iMCAwIDU5LjQxNCA1OS40MTQiIHN0eWxlPSJlbmFibGUtYmFja2dyb3VuZDpuZXcgMCAwIDU5LjQxNCA1OS40MTQ7IiB4bWw6c3BhY2U9InByZXNlcnZlIiB3aWR0aD0iNjRweCIgaGVpZ2h0PSI2NHB4Ij4KPHBvbHlnb24gcG9pbnRzPSI0NS4yNjgsMS40MTQgNDMuODU0LDAgMTQuMTQ2LDI5LjcwNyA0My44NTQsNTkuNDE0IDQ1LjI2OCw1OCAxNi45NzUsMjkuNzA3ICIgZmlsbD0iIzAwMDAwMCIvPgo8Zz4KPC9nPgo8Zz4KPC9nPgo8Zz4KPC9nPgo8Zz4KPC9nPgo8Zz4KPC9nPgo8Zz4KPC9nPgo8Zz4KPC9nPgo8Zz4KPC9nPgo8Zz4KPC9nPgo8Zz4KPC9nPgo8Zz4KPC9nPgo8Zz4KPC9nPgo8Zz4KPC9nPgo8Zz4KPC9nPgo8Zz4KPC9nPgo8L3N2Zz4K");
}

.swiper-button-prev.swiper-button-white,
.swiper-container-rtl .swiper-button-next.swiper-button-white {
  background-image:url("data:image/svg+xml;charset=utf-8;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iaXNvLTg4NTktMSI/Pgo8IS0tIEdlbmVyYXRvcjogQWRvYmUgSWxsdXN0cmF0b3IgMTguMC4wLCBTVkcgRXhwb3J0IFBsdWctSW4gLiBTVkcgVmVyc2lvbjogNi4wMCBCdWlsZCAwKSAgLS0+CjwhRE9DVFlQRSBzdmcgUFVCTElDICItLy9XM0MvL0RURCBTVkcgMS4xLy9FTiIgImh0dHA6Ly93d3cudzMub3JnL0dyYXBoaWNzL1NWRy8xLjEvRFREL3N2ZzExLmR0ZCI+CjxzdmcgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB4bWxuczp4bGluaz0iaHR0cDovL3d3dy53My5vcmcvMTk5OS94bGluayIgdmVyc2lvbj0iMS4xIiBpZD0iQ2FwYV8xIiB4PSIwcHgiIHk9IjBweCIgdmlld0JveD0iMCAwIDU5LjQxNCA1OS40MTQiIHN0eWxlPSJlbmFibGUtYmFja2dyb3VuZDpuZXcgMCAwIDU5LjQxNCA1OS40MTQ7IiB4bWw6c3BhY2U9InByZXNlcnZlIiB3aWR0aD0iNjRweCIgaGVpZ2h0PSI2NHB4Ij4KPHBvbHlnb24gcG9pbnRzPSI0NS4yNjgsMS40MTQgNDMuODU0LDAgMTQuMTQ2LDI5LjcwNyA0My44NTQsNTkuNDE0IDQ1LjI2OCw1OCAxNi45NzUsMjkuNzA3ICIgZmlsbD0iI0ZGRkZGRiIvPgo8Zz4KPC9nPgo8Zz4KPC9nPgo8Zz4KPC9nPgo8Zz4KPC9nPgo8Zz4KPC9nPgo8Zz4KPC9nPgo8Zz4KPC9nPgo8Zz4KPC9nPgo8Zz4KPC9nPgo8Zz4KPC9nPgo8Zz4KPC9nPgo8Zz4KPC9nPgo8Zz4KPC9nPgo8Zz4KPC9nPgo8Zz4KPC9nPgo8L3N2Zz4K");
}

.swiper-button-prev.swiper-button-green,
.swiper-container-rtl .swiper-button-next.swiper-button-green {
  background-image:url("data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiIHN0YW5kYWxvbmU9Im5vIj8+CjwhLS0gQ3JlYXRlZCB3aXRoIEtleXNoYXBlIC0tPgo8c3ZnIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgaWQ9IkNhcGFfMSIgdmlld0JveD0iMCAwIDU5LjQxNCA1OS40MTQiIHdpZHRoPSI2NHB4IiBoZWlnaHQ9IjY0cHgiIHN0eWxlPSJ3aGl0ZS1zcGFjZTogcHJlc2VydmUtc3BhY2VzOyI+CiAgICA8cGF0aCBmaWxsPSIjN2VjNTNjIiBkPSJNMTUuNTYxLDBMMTQuMTQ2LDEuNDE0TDQyLjQzOSwyOS43MDdMMTQuMTQ2LDU4TDE1LjU2MSw1OS40MTRMNDUuMjY4LDI5LjcwN1oiIHRyYW5zZm9ybT0idHJhbnNsYXRlKDI5LjcwNywyOS43MDcpIHNjYWxlKC0xLDEpIHRyYW5zbGF0ZSgtMjkuNzA3LC0yOS43MDcpIi8+CiAgICA8Zy8+CiAgICA8Zy8+CiAgICA8Zy8+CiAgICA8Zy8+CiAgICA8Zy8+CiAgICA8Zy8+CiAgICA8Zy8+CiAgICA8Zy8+CiAgICA8Zy8+CiAgICA8Zy8+CiAgICA8Zy8+CiAgICA8Zy8+CiAgICA8Zy8+CiAgICA8Zy8+CiAgICA8Zy8+CiAgICA8c2NyaXB0PjwhW0NEQVRBWy8qCiBLZXlzaGFwZUpTIHYxLjEuMCAoYykgMjAxOC0yMDE5IFBpeG9maWVsZCBMdGQgfCBwaXhvZmllbGQuY29tL2tleXNoYXBlanMvbWl0LWxpY2Vuc2UgKi8Kd2luZG93LktleXNoYXBlSlM9ZnVuY3Rpb24oKXtmdW5jdGlvbiB0KGEpe3JldHVybiJ1bmRlZmluZWQiIT09dHlwZW9mIGF9ZnVuY3Rpb24geChhLGIpe3JldHVybiBhJiYwPT1hLmluZGV4T2YoYil9ZnVuY3Rpb24gSChhKXtpZighaXNGaW5pdGUoYSkpdGhyb3cgRXJyb3IoIk5vbi1maW5pdGUgdmFsdWUiKTt9ZnVuY3Rpb24gUihhKXtpZigxND49YSlyZXR1cm4gMTY7dmFyIGI9U1thXTtifHwoYj10KGNhW2FdKT8wfChhLnRvTG93ZXJDYXNlKCkuaW5kZXhPZigiY29sb3IiKT09YS5sZW5ndGgtNT80ODowKToxKTtyZXR1cm4gYn1mdW5jdGlvbiBLKGEpe3JldHVybiAwPD1hP01hdGgucG93KGEsMS8zKTotTWF0aC5wb3coLWEsMS8zKX1mdW5jdGlvbiBkYShhLGIsYyxkKXtpZigwPT1hKXJldHVybiAwPT1iP2I9LWQvYzooYT1NYXRoLnNxcnQoYypjLTQqYipkKSxkPSgtYythKS8oMipiKSwwPD1kJiYxPj1kP2I9ZDooZD0oLWMtYSkvKDIqYiksYj0wPD1kJiYxPj1kP2Q6MCkpLGI7CnZhciBlPWMvYS1iKmIvKGEqYSkvMztjPWIqYipiLyhhKmEqYSkvMTMuNS1iKmMvKGEqYSkvMytkL2E7dmFyIG49YypjLzQrZSplKmUvMjc7Yj0tYi8oMyphKTtpZigwPj1uKXtpZigwPT1lJiYwPT1jKXJldHVybi1LKGQvYSk7YT1NYXRoLnNxcnQoYypjLzQtbik7ZD1NYXRoLmFjb3MoLWMvMi9hKTtjPU1hdGguY29zKGQvMyk7ZD1NYXRoLnNxcnQoMykqTWF0aC5zaW4oZC8zKTthPUsoYSk7ZT0yKmEqYytiO2lmKDA8PWUmJjE+PWUpcmV0dXJuIGU7ZT0tYSooYytkKStiO2lmKDA8PWUmJjE+PWUpcmV0dXJuIGU7ZT1hKihkLWMpK2I7aWYoMDw9ZSYmMT49ZSlyZXR1cm4gZX1lbHNle2E9SygtYy8yK01hdGguc3FydChuKSk7Yz1LKC1jLzItTWF0aC5zcXJ0KG4pKTtkPWErYytiO2lmKDA8PWQmJjE+PWQpcmV0dXJuIGQ7ZD0tKGErYykvMitiO2lmKDA8PWQmJjE+PWQpcmV0dXJuIGR9cmV0dXJuIDB9ZnVuY3Rpb24gZWEoYSxiKXtpZig0OD09YSYmIm51bWJlciI9PT10eXBlb2YgYilyZXR1cm4icmdiYSgiKwooYj4+PjI0KSsiLCIrKGI+Pj4xNiYyNTUpKyIsIisoYj4+PjgmMjU1KSsiLCIrKGImMjU1KS8yNTUrIikiO2lmKDY0PT1hKXJldHVybiBiPWIubWFwKGZ1bmN0aW9uKGEpe3JldHVybiBhKyJweCJ9KSxiLmpvaW4oIiwiKTtpZig5Nj09YSl7YT0iIjtmb3IodmFyIGM9Yi5sZW5ndGgsZD0wO2Q8YztkKz0yKWErPWJbZF0sYSs9YltkKzFdLmpvaW4oIiwiKTtyZXR1cm4gYX1pZig4MD09YSl7aWYoMD09YlswXSlyZXR1cm4ibm9uZSI7YT0iIjtjPWIubGVuZ3RoO2ZvcihkPTA7ZDxjOylhKz1UW2JbZF1dLDE9PWJbZF0/YSs9IigiK2JbZCsxXSsiKSAiOjU9PWJbZF0/KGErPSIoIitiW2QrMV0rInB4ICIrYltkKzJdKyJweCAiK2JbZCszXSsicHggcmdiYSgiKyhiW2QrNF0+Pj4yNCkrIiwiKyhiW2QrNF0+PjE2JjI1NSkrIiwiKyhiW2QrNF0+PjgmMjU1KSsiLCIrKGJbZCs0XSYyNTUpLzI1NSsiKSkgIixkKz0zKTphPTI9PWJbZF0/YSsoIigiK2JbZCsxXSsicHgpICIpOjc9PWJbZF0/YSsKKCIoIitiW2QrMV0rImRlZykgIik6YSsoIigiKygwPmJbZCsxXT8wOmJbZCsxXSkrIikgIiksZCs9MjtyZXR1cm4gYX1yZXR1cm4gMzI9PWE/YisicHgiOmJ9ZnVuY3Rpb24geShhKXtyZXR1cm4gMD49YT8wOjI1NTw9YT8yNTU6YX1mdW5jdGlvbiBmYShhLGIsYyxkKXtpZigxNj09YXx8MzI9PWEpcmV0dXJuKGMtYikqZCtiO2lmKDA9PWEpcmV0dXJuLjU+ZD9iOmM7aWYoNDg9PWEpe2lmKCJudW1iZXIiPT09dHlwZW9mIGImJiJudW1iZXIiPT09dHlwZW9mIGMpe3ZhciBlPTEtZDtyZXR1cm4oeShlKihiPj4+MjQpK2QqKGM+Pj4yNCkpPDwyNHx5KGUqKGI+Pj4xNiYyNTUpK2QqKGM+Pj4xNiYyNTUpKTw8MTZ8eShlKihiPj4+OCYyNTUpK2QqKGM+Pj44JjI1NSkpPDw4fHkoZSooYiYyNTUpK2QqKGMmMjU1KSkpPj4+MH1yZXR1cm4uNT5kP2I6Y31pZig2ND09YSl7MD09Yi5sZW5ndGgmJihiPVswXSk7MD09Yy5sZW5ndGgmJihjPVswXSk7dmFyIG49Yi5sZW5ndGg7Yi5sZW5ndGghPWMubGVuZ3RoJiYKKG49Yi5sZW5ndGgqYy5sZW5ndGgpO3ZhciBsPVtdO2ZvcihhPTA7YTxuOysrYSl7dmFyIGY9YlthJWIubGVuZ3RoXTt2YXIgaD0oY1thJWMubGVuZ3RoXS1mKSpkK2Y7MD5oJiYoaD0wKTtsLnB1c2goaCl9cmV0dXJuIGx9aWYoOTY9PWEpe2lmKGIubGVuZ3RoIT1jLmxlbmd0aClyZXR1cm4uNT5kP2I6YztuPWIubGVuZ3RoO2w9W107Zm9yKGE9MDthPG47YSs9Mil7aWYoYlthXSE9PWNbYV0pcmV0dXJuLjU+ZD9iOmM7bFthXT1iW2FdO2xbYSsxXT1bXTtmb3IoZj0wO2Y8YlthKzFdLmxlbmd0aDsrK2YpbFthKzFdLnB1c2goKGNbYSsxXVtmXS1iW2ErMV1bZl0pKmQrYlthKzFdW2ZdKX1yZXR1cm4gbH1pZig4MD09YSl7bj1iLmxlbmd0aDtpZihuIT1jLmxlbmd0aClyZXR1cm4uNT5kP2I6YztsPVtdO2ZvcihhPTA7YTxuOyl7aWYoYlthXSE9Y1thXXx8MT09YlthXSlyZXR1cm4uNT5kP2I6YztsW2FdPWJbYV07bFthKzFdPShjW2ErMV0tYlthKzFdKSpkK2JbYSsxXTtpZig1PT1iW2FdKXtsW2ErCjJdPShjW2ErMl0tYlthKzJdKSpkK2JbYSsyXTtsW2ErM109KGNbYSszXS1iW2ErM10pKmQrYlthKzNdO2U9MS1kO3ZhciBnPWJbYSs0XSxxPWNbYSs0XTtoPWUqKGc+Pj4yNCkrZCoocT4+PjI0KTt2YXIgbT1lKihnPj4xNiYyNTUpK2QqKHE+PjE2JjI1NSk7Zj1lKihnPj44JjI1NSkrZCoocT4+OCYyNTUpO2U9ZSooZyYyNTUpK2QqKHEmMjU1KTtsW2ErNF09KHkobSk8PDE2fHkoZik8PDh8eShlKSkrMTY3NzcyMTYqKHkoaCl8MCk7YSs9M31hKz0yfXJldHVybiBsfXJldHVybiAwfWZ1bmN0aW9uIFUoYSxiKXthOnt2YXIgYz1hK2JbMl07dmFyIGQ9Yls0XS5sZW5ndGg7Zm9yKHZhciBlPTA7ZTxkOysrZSlpZihjPGJbNF1bZV0pe2M9ZTticmVhayBhfWM9ZC0xfWQ9YlsyXTtlPWJbNF1bYy0xXS1kO2E9KGEtZSkvKGJbNF1bY10tZC1lKTtpZihiWzZdJiZiWzZdLmxlbmd0aD5jLTEpaWYoZD1iWzZdW2MtMV0sMT09ZFswXSlpZigwPj1hKWE9MDtlbHNlIGlmKDE8PWEpYT0xO2Vsc2V7ZT0KZFsxXTt2YXIgbj1kWzNdO2E9ZGEoMyplLTMqbisxLC02KmUrMypuLDMqZSwtYSk7YT0zKmEqKDEtYSkqKDEtYSkqZFsyXSszKmEqYSooMS1hKSpkWzRdK2EqYSphfWVsc2UgMj09ZFswXT8oZD1kWzFdLGE9TWF0aC5jZWlsKGEqZCkvZCk6Mz09ZFswXSYmKGQ9ZFsxXSxhPU1hdGguZmxvb3IoYSpkKS9kKTtyZXR1cm4gZmEoYlsxXSYyNDAsYls1XVtjLTFdLGJbNV1bY10sYSl9ZnVuY3Rpb24gTCgpe3V8fCh2PShuZXcgRGF0ZSkuZ2V0VGltZSgpK1YpfWZ1bmN0aW9uIE8oYSl7aWYoYXx8IUUpe2Zvcih2YXIgYj0hMSxjPTA7Yzx3Lmxlbmd0aDsrK2Mpd1tjXS5KKGEpJiYoYj0hMCk7aWYoYSlmb3IoOzA8SS5sZW5ndGg7KWlmKGE9SS5zaGlmdCgpLGM9YVswXSwxPT1hWzFdKWMub25maW5pc2gmJihjLm9uZmluaXNoKCksYj0hMCksYy5JKCk7ZWxzZSBpZigyPT1hWzFdJiZjLm9ubG9vcCljLm9ubG9vcCgpO3JldHVybiBifX1mdW5jdGlvbiBXKCl7TCgpO08oITApJiYhdT8oRT0hMCxNKFcpKToKRT0hMX1mdW5jdGlvbiBOKCl7RXx8KEU9ITAsTShXKSl9ZnVuY3Rpb24gWChhLGIpe3ZhciBjPVtdO2Euc3BsaXQoYikuZm9yRWFjaChmdW5jdGlvbihhKXtjLnB1c2gocGFyc2VGbG9hdChhKSl9KTtyZXR1cm4gY31mdW5jdGlvbiBBKGEpey0xPT1hLmluZGV4T2YoIiwiKSYmKGE9YS5yZXBsYWNlKCIgIiwiLCIpKTtyZXR1cm4gWChhLCIsIil9ZnVuY3Rpb24gWShhKXthLl9rc3x8KGEuX2tzPXt9KTtpZighYS5fa3MudHJhbnNmb3JtKXtmb3IodmFyIGI9YS5fa3MudHJhbnNmb3JtPVtdLGM9MDsxND49YzsrK2MpYltjXT0wO2JbMTBdPTE7YlsxMV09MTtpZihhPWEuZ2V0QXR0cmlidXRlKCJ0cmFuc2Zvcm0iKSl7YT1hLnRyaW0oKS5zcGxpdCgiKSAiKTtmb3IoYz1hLmxlbmd0aC0yOzA8PWM7LS1jKWlmKHgoYVtjXSwidHJhbnNsYXRlKCIpKXtmb3IodmFyIGQ9MDtkPGM7ZCsrKWEuc2hpZnQoKTticmVha31jPWEuc2hpZnQoKTt4KGMsInRyYW5zbGF0ZSgiKSYmKGM9QShjLnN1YnN0cmluZygxMCkpLApiWzFdPWNbMF0sYlsyXT10KGNbMV0pP2NbMV06MCxjPWEuc2hpZnQoKSk7eChjLCJyb3RhdGUoIikmJihjPUEoYy5zdWJzdHJpbmcoNykpLGJbNl09Y1swXSxjPWEuc2hpZnQoKSk7eChjLCJza2V3WCgiKSYmKGM9QShjLnN1YnN0cmluZyg2KSksYls3XT1jWzBdLGM9YS5zaGlmdCgpKTt4KGMsInNrZXdZKCIpJiYoYz1BKGMuc3Vic3RyaW5nKDYpKSxiWzhdPWNbMF0sYz1hLnNoaWZ0KCkpO3goYywic2NhbGUoIikmJihjPUEoYy5zdWJzdHJpbmcoNikpLGJbMTBdPWNbMF0sYlsxMV09dChjWzFdKT9jWzFdOmNbMF0sYz1hLnNoaWZ0KCkpO3goYywidHJhbnNsYXRlKCIpJiYoYz1BKGMuc3Vic3RyaW5nKDEwKSksYlsxM109Y1swXSxiWzE0XT10KGNbMV0pP2NbMV06MCl9fX1mdW5jdGlvbiBaKGEpe3RoaXMubD1hO3RoaXMuQT1bXTt0aGlzLkM9W107dGhpcy52PTA7dGhpcy5zPXRoaXMuYT10aGlzLmM9bnVsbDt0aGlzLmg9dGhpcy5mPXRoaXMuZz0wO3RoaXMuYj0xO3RoaXMuaT10aGlzLkY9CnRoaXMubz0hMX1mdW5jdGlvbiBKKGEsYixjKXtiPWFbYl07dm9pZCAwPT09YiYmKGI9YVtjXSk7cmV0dXJuIGJ9ZnVuY3Rpb24gaGEoYSl7cmV0dXJuIEFycmF5LmlzQXJyYXkoYSk/YTp4KGEsImN1YmljLWJlemllcigiKT8oYT1hLnN1YnN0cmluZygxMyxhLmxlbmd0aC0xKS5zcGxpdCgiLCIpLFsxLHBhcnNlRmxvYXQoYVswXSkscGFyc2VGbG9hdChhWzFdKSxwYXJzZUZsb2F0KGFbMl0pLHBhcnNlRmxvYXQoYVszXSldKTp4KGEsInN0ZXBzKCIpPyhhPWEuc3Vic3RyaW5nKDYsYS5sZW5ndGgtMSkuc3BsaXQoIiwiKSxbYVsxXSYmInN0YXJ0Ij09YVsxXS50cmltKCk/MjozLHBhcnNlRmxvYXQoYVswXSldKTpbMF19ZnVuY3Rpb24gaWEoYSl7YT1hLnRyaW0oKTtyZXR1cm4geChhLCIjIik/KHBhcnNlSW50KGEuc3Vic3RyaW5nKDEpLDE2KTw8OCkrMjU1OngoYSwicmdiYSgiKT8oYT1hLnN1YnN0cmluZyg1LGEubGVuZ3RoLTEpLGE9YS5zcGxpdCgiLCIpLChwYXJzZUludChhWzBdLAoxMCk8PDI0KSsocGFyc2VJbnQoYVsxXSwxMCk8PDE2KSsocGFyc2VJbnQoYVsyXSwxMCk8PDgpKzI1NSpwYXJzZUZsb2F0KGFbM10pPDwwKTphfWZ1bmN0aW9uIGFhKGEpeyExPT09YS5pJiYody5wdXNoKGEpLGEuaT0hMCwhMSE9PWEubC5hdXRvcGxheSYmYS5wbGF5KCkpO3JldHVybiB0aGlzfWZ1bmN0aW9uIFAoYSl7aWYoITA9PT1hLmkpe2EuX2NhbmNlbCgpO3ZhciBiPXcuaW5kZXhPZihhKTstMTxiJiZ3LnNwbGljZShiLDEpO2I9SS5pbmRleE9mKGEpOy0xPGImJkkuc3BsaWNlKGIsMSk7YS5pPSExfXJldHVybiB0aGlzfXZhciBRPUVycm9yKCJOb3QgaW4gdGltZWxpbmUgbGlzdCIpLGJhPSJtcGF0aCBwb3NYIHBvc1kgICAgcm90YXRlIHNrZXdYIHNrZXdZICBzY2FsZVggc2NhbGVZICBhbmNob3JYIGFuY2hvclkiLnNwbGl0KCIgIiksamE9IiB0cmFuc2xhdGUgdHJhbnNsYXRlICAgIHJvdGF0ZSBza2V3WCBza2V3WSAgc2NhbGUgc2NhbGUgIHRyYW5zbGF0ZSB0cmFuc2xhdGUiLnNwbGl0KCIgIiksClQ9Im5vbmUgdXJsIGJsdXIgYnJpZ2h0bmVzcyBjb250cmFzdCBkcm9wLXNoYWRvdyBncmF5c2NhbGUgaHVlLXJvdGF0ZSBpbnZlcnQgb3BhY2l0eSBzYXR1cmF0ZSBzZXBpYSIuc3BsaXQoIiAiKSxNPXdpbmRvdy5yZXF1ZXN0QW5pbWF0aW9uRnJhbWV8fHdpbmRvdy53ZWJraXRSZXF1ZXN0QW5pbWF0aW9uRnJhbWV8fHdpbmRvdy5tb3pSZXF1ZXN0QW5pbWF0aW9uRnJhbWV8fHdpbmRvdy5vUmVxdWVzdEFuaW1hdGlvbkZyYW1lfHx3aW5kb3cubXNSZXF1ZXN0QW5pbWF0aW9uRnJhbWV8fG51bGw7TXx8KE09ZnVuY3Rpb24oYSl7d2luZG93LnNldFRpbWVvdXQoYSwxNil9KTt2YXIgUz17ZDo5NyxmaWxsOjQ4LGZpbGxPcGFjaXR5OjE2LGZpbHRlcjo4MCxoZWlnaHQ6MzMsb3BhY2l0eToxNixvZmZzZXREaXN0YW5jZTozMyxzdHJva2U6NDgsc3Ryb2tlRGFzaGFycmF5OjY0LHN0cm9rZURhc2hvZmZzZXQ6MzIsc3Ryb2tlT3BhY2l0eToxNixzdHJva2VXaWR0aDozMix0cmFuc2Zvcm06MSwKd2lkdGg6MzN9LGNhPXdpbmRvdy5nZXRDb21wdXRlZFN0eWxlKGRvY3VtZW50LmRvY3VtZW50RWxlbWVudCksRT0hMSx2PShuZXcgRGF0ZSkuZ2V0VGltZSgpLHUsVj0wLHc9W10sST1bXTtaLnByb3RvdHlwZT17QjpmdW5jdGlvbihhKXt2YXIgYj0wO2lmKG51bGwhPT10aGlzLmMpe3ZhciBjPXRoaXMuaigpOzA8dGhpcy5iJiZudWxsIT09YyYmYz49dGhpcy5mP3RoaXMuaD8odGhpcy5jPXYtdGhpcy5nL3RoaXMuYix0aGlzLmgtLSxiPTIpOihiPTEsYT90aGlzLmE9Yzp0aGlzLmE9dGhpcy5zP01hdGgubWF4KHRoaXMucyx0aGlzLmYpOnRoaXMuZik6MD50aGlzLmImJm51bGwhPT1jJiZjPD10aGlzLmc/dGhpcy5oJiZJbmZpbml0eSE9dGhpcy5mPyh0aGlzLmM9di10aGlzLmYvdGhpcy5iLHRoaXMuaC0tLGI9Mik6KHRoaXMuaD0wLGI9MSxhP3RoaXMuYT1jOnRoaXMuYT10aGlzLnM/TWF0aC5taW4odGhpcy5zLHRoaXMuZyk6dGhpcy5nKTpudWxsIT09YyYmMCE9dGhpcy5iJiYoYSYmCm51bGwhPT10aGlzLmEmJih0aGlzLmM9di10aGlzLmEvdGhpcy5iKSx0aGlzLmE9bnVsbCl9dGhpcy5zPXRoaXMuaigpO3JldHVybiBifSxKOmZ1bmN0aW9uKGEpe2EmJih0aGlzLm8mJih0aGlzLm89ITEsbnVsbD09PXRoaXMuYyYmKDAhPXRoaXMuYiYmbnVsbCE9PXRoaXMuYT8odGhpcy5jPXYtdGhpcy5hL3RoaXMuYix0aGlzLmE9bnVsbCk6dGhpcy5jPXYpKSxudWxsPT09dGhpcy5hJiZudWxsIT09dGhpcy5jJiYoYT10aGlzLkIoITEpLDAhPWEmJkkucHVzaChbdGhpcyxhXSkpKTthPXRoaXMuaigpO2lmKG51bGw9PT1hKXJldHVybiExO2Zvcih2YXIgYj10aGlzLkEsYz10aGlzLkMsZD0wO2Q8Yi5sZW5ndGg7KytkKXtmb3IodmFyIGU9YltkXSxuPSExLGw9MDtsPGNbZF0ubGVuZ3RoOysrbCl7dmFyIGY9Y1tkXVtsXSxoPWZbMF07aWYobnVsbCE9PWgpe3ZhciBnPWZbMl07dmFyIHE9Zls0XS5sZW5ndGgsbT1mWzRdW3EtMV0tZztnPTA9PW0/Zls1XVtxLTFdOmE8PWc/Zls1XVswXToKYT49ZytmWzNdPzA9PWZbM10lbT9mWzVdW3EtMV06VShmWzNdJW0sZik6VSgoYS1nKSVtLGYpOzA9PWg/KGUuX2tzLm1wYXRoPWZbOF0sZS5fa3MudHJhbnNmb3JtW2hdPWcsbj0hMCk6MTQ+PWg/KGUuX2tzLnRyYW5zZm9ybVtoXT1nLG49ITApOihnPWVhKGZbMV0mMjQwLGcpLGZbMV0mMT9lLnNldEF0dHJpYnV0ZShoLGcpOmUuc3R5bGVbaF09Zyl9fWlmKG4pe1koZSk7bj1lLl9rcy50cmFuc2Zvcm07bD0iIjtpZihmPWUuX2tzLm1wYXRoKWc9blswXSwwPmcmJihnPTApLDEwMDxnJiYoZz0xMDApLGc9ZypmWzJdLzEwMCxoPWZbMV0uZ2V0UG9pbnRBdExlbmd0aChnKSxsPSJ0cmFuc2xhdGUoIitoLngrIiwiK2gueSsiKSAiLGZbMF0mJiguNT5nPyhnPWgsaD1mWzFdLmdldFBvaW50QXRMZW5ndGgoLjUpKTpnPWZbMV0uZ2V0UG9pbnRBdExlbmd0aChnLS41KSxsKz0icm90YXRlKCIrMTgwKk1hdGguYXRhbjIoaC55LWcueSxoLngtZy54KS9NYXRoLlBJKyIpICIpO2ZvcihmPTE7ZjxuLmxlbmd0aDsrK2YpaD0KbltmXSxoIT0oMTA9PWZ8fDExPT1mPzE6MCkmJihsKz0iICIramFbZl0rIigiLGw9Mj49Zj9sKygxPT1mP2grIiwwIjoiMCwiK2gpOjEzPD1mP2wrKDEzPT1mP2grIiwwIjoiMCwiK2gpOjEwPD1mP2wrKDEwPT1mP2grIiwxIjoiMSwiK2gpOmwraCxsKz0iKSIpO2Uuc2V0QXR0cmlidXRlKCJ0cmFuc2Zvcm0iLGwpfX1yZXR1cm4icnVubmluZyI9PXRoaXMubSgpfSxJOmZ1bmN0aW9uKCl7ITEhPT10aGlzLmwuYXV0b3JlbW92ZSYmImZpbmlzaGVkIj09dGhpcy5tKCkmJlAodGhpcyl9LEQ6ZnVuY3Rpb24oKXtpZighdGhpcy5GKXt0aGlzLkY9ITA7Zm9yKHZhciBhPXRoaXMuQSxiPXRoaXMuQyxjPTA7YzxhLmxlbmd0aDsrK2MpZm9yKHZhciBkPWFbY10sZT0wO2U8YltjXS5sZW5ndGg7KytlKTE0Pj1iW2NdW2VdWzBdJiZZKGQpfX0sdTpmdW5jdGlvbihhKXtpZigibnVtYmVyIj09dHlwZW9mIGEpcmV0dXJuIGE7aWYoIXQodGhpcy5sLm1hcmtlcnMpfHwhdCh0aGlzLmwubWFya2Vyc1thXSkpdGhyb3cgRXJyb3IoIkludmFsaWQgbWFya2VyOiAiKwphKTtyZXR1cm4rdGhpcy5sLm1hcmtlcnNbYV19LHBsYXk6ZnVuY3Rpb24oYSl7dChhKSYmbnVsbCE9PWEmJihhPXRoaXMudShhKSxIKGEpLDA+dGhpcy5iJiZhPHRoaXMuZyYmKGE9dGhpcy5nKSwwPHRoaXMuYiYmYT50aGlzLmYmJihhPXRoaXMuZiksdGhpcy53KGEsITApKTtpZighdGhpcy5pKXRocm93IFE7YT10aGlzLmooKTtpZigwPHRoaXMuYiYmKG51bGw9PT1hfHxhPj10aGlzLmYpKXRoaXMuYT10aGlzLmc7ZWxzZSBpZigwPnRoaXMuYiYmKG51bGw9PT1hfHxhPD10aGlzLmcpKXtpZihJbmZpbml0eT09dGhpcy5mKXRocm93IEVycm9yKCJDYW5ub3Qgc2VlayB0byBJbmZpbml0eSIpO3RoaXMuYT10aGlzLmZ9ZWxzZSAwPT10aGlzLmImJm51bGw9PT1hJiYodGhpcy5hPXRoaXMuZyk7aWYobnVsbD09PXRoaXMuYSlyZXR1cm4gdGhpczt0aGlzLmM9bnVsbDt0aGlzLm89ITA7dGhpcy5EKCk7TigpO3JldHVybiB0aGlzfSxwYXVzZTpmdW5jdGlvbihhKXtpZighdGhpcy5pKXRocm93IFE7CnQoYSkmJihhPXRoaXMudShhKSxIKGEpKTtpZigicGF1c2VkIiE9dGhpcy5tKCkpe0woKTt2YXIgYj10aGlzLmooKTtpZihudWxsPT09YilpZigwPD10aGlzLmIpdGhpcy5hPXRoaXMuZztlbHNle2lmKEluZmluaXR5PT10aGlzLmYpdGhyb3cgRXJyb3IoIkNhbm5vdCBzZWVrIHRvIEluZmluaXR5Iik7dGhpcy5hPXRoaXMuZn1udWxsIT09dGhpcy5jJiZudWxsPT09dGhpcy5hJiYodGhpcy5hPWIpO3RoaXMuYz1udWxsO3RoaXMubz0hMTt0aGlzLkIoITEpO3RoaXMuRCgpO04oKX10KGEpJiZ0aGlzLncoYSwhMCk7cmV0dXJuIHRoaXN9LHJhbmdlOmZ1bmN0aW9uKGEsYil7aWYoMD09YXJndW1lbnRzLmxlbmd0aClyZXR1cm57ImluIjp0aGlzLmcsb3V0OnRoaXMuZn07dmFyIGM9dGhpcy51KGEpLGQ9dGhpcy52O3QoYikmJihkPXRoaXMudShiKSk7SChjKTtpZigwPmN8fDA+ZHx8Yz49ZHx8aXNOYU4oZCkpdGhyb3cgRXJyb3IoIkludmFsaWQgcmFuZ2UiKTt2YXIgZT10aGlzLm0oKTt0aGlzLmc9CmM7dGhpcy5mPWQ7ImZpbmlzaGVkIj09ZSYmInJ1bm5pbmciPT10aGlzLm0oKSYmdGhpcy5wbGF5KCk7cmV0dXJuIHRoaXN9LGxvb3A6ZnVuY3Rpb24oYSl7aWYoIXQoYSkpcmV0dXJue2NvdW50OnRoaXMuaH07dGhpcy5oPSEwPT09YT9JbmZpbml0eTpNYXRoLmZsb29yKGEpO2lmKDA+dGhpcy5ofHxpc05hTih0aGlzLmgpKXRoaXMuaD0wO3JldHVybiB0aGlzfSxqOmZ1bmN0aW9uKCl7cmV0dXJuIG51bGwhPT10aGlzLmE/dGhpcy5hOm51bGw9PT10aGlzLmM/bnVsbDoodi10aGlzLmMpKnRoaXMuYn0sdzpmdW5jdGlvbihhLGIpe2ImJkwoKTtudWxsIT09YSYmKHRoaXMuRCgpLG51bGwhPT10aGlzLmF8fG51bGw9PT10aGlzLmN8fDA9PXRoaXMuYj8odGhpcy5hPWEsTyghMSkpOnRoaXMuYz12LWEvdGhpcy5iLHRoaXMuaXx8KHRoaXMuYz1udWxsKSx0aGlzLnM9bnVsbCx0aGlzLkIoITApLE4oKSl9LEc6ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5qKCl9LHRpbWU6ZnVuY3Rpb24oYSl7aWYodChhKSl7aWYoIXRoaXMuaSl0aHJvdyBROwphPXRoaXMudShhKTtIKGEpO3RoaXMudyhhLCEwKTtyZXR1cm4gdGhpc31yZXR1cm4gdGhpcy5HKCl9LG06ZnVuY3Rpb24oKXt2YXIgYT10aGlzLmooKTtyZXR1cm4gdGhpcy5vPyJydW5uaW5nIjpudWxsPT09YT8iaWRsZSI6bnVsbD09PXRoaXMuYz8icGF1c2VkIjowPHRoaXMuYiYmYT49dGhpcy5mfHwwPnRoaXMuYiYmYTw9dGhpcy5nPyJmaW5pc2hlZCI6InJ1bm5pbmcifSxzdGF0ZTpmdW5jdGlvbigpe3JldHVybiB0aGlzLm0oKX0sZHVyYXRpb246ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy52fSxIOmZ1bmN0aW9uKGEpe0goYSk7TCgpO3ZhciBiPXRoaXMuaigpO3RoaXMuYj1hO251bGwhPT1iJiZ0aGlzLncoYiwhMSl9LHJhdGU6ZnVuY3Rpb24oYSl7cmV0dXJuIHQoYSk/KHRoaXMuSChhKSx0aGlzKTp0aGlzLmJ9LG1hcmtlcjpmdW5jdGlvbihhKXtyZXR1cm4gdCh0aGlzLmwubWFya2Vycyk/dGhpcy5sLm1hcmtlcnNbYV06dm9pZCAwfSxfY2FuY2VsOmZ1bmN0aW9uKCl7aWYoIXRoaXMuaXx8CiJpZGxlIj09dGhpcy5tKCkpcmV0dXJuIHRoaXM7dGhpcy5jPXRoaXMuYT1udWxsO3RoaXMubz0hMTtyZXR1cm4gdGhpc319O3JldHVybnt2ZXJzaW9uOiIxLjEuMCIsYW5pbWF0ZTpmdW5jdGlvbigpe3ZhciBhPXt9O2lmKDE9PWFyZ3VtZW50cy5sZW5ndGglMil7YT1hcmd1bWVudHNbYXJndW1lbnRzLmxlbmd0aC0xXTt2YXIgYj17fTtmb3IoYyBpbiBhKWJbY109YVtjXTthPWJ9dmFyIGM9bmV3IFooYSk7YT1hcmd1bWVudHM7Zm9yKHZhciBkPWI9MDtkPGEubGVuZ3RoLTE7ZCs9Mil7dmFyIGU9YVtkXTt2YXIgbj1lIGluc3RhbmNlb2YgRWxlbWVudD9lOmRvY3VtZW50LmdldEVsZW1lbnRCeUlkKGUuc3Vic3RyaW5nKDEpKTtpZighbil0aHJvdyBFcnJvcigiSW52YWxpZCB0YXJnZXQ6ICIrZSk7ZT1uO249YVtkKzFdO2UuX2tzfHwoZS5fa3M9e30pO2Zvcih2YXIgbD1bXSxmPTA7ZjxuLmxlbmd0aDsrK2Ype3ZhciBoPW5bZl0sZz1KKGgsInAiLCJwcm9wZXJ0eSIpO2lmKCJzdHJpbmciIT0KdHlwZW9mIGd8fC0xIT1nLmluZGV4T2YoIi0iKXx8IiI9PT1nfHwhKDA8U1tnXXx8MDw9YmEuaW5kZXhPZihnKSkpdGhyb3cgRXJyb3IoIkludmFsaWQgcHJvcGVydHk6ICIrZyk7dmFyIHE9YmEuaW5kZXhPZihnKTsiIiE9PWcmJjA8PXEmJihnPXEpO3E9UihnKTt2YXIgbT1KKGgsInQiLCJ0aW1lcyIpO2lmKCFtfHwyPm0ubGVuZ3RoKXRocm93IEVycm9yKCJOb3QgZW5vdWdoIHRpbWVzIik7bT1tLnNsaWNlKCk7aWYoIWlzRmluaXRlKG1bMF0pfHwwPm1bMF0pdGhyb3cgRXJyb3IoIkludmFsaWQgdGltZTogIittWzBdKTtmb3IodmFyIEI9MTtCPG0ubGVuZ3RoOysrQilpZighaXNGaW5pdGUobVtCXSl8fDA+bVtCXXx8bVtCXTxtW0ItMV0pdGhyb3cgRXJyb3IoIkludmFsaWQgdGltZTogIittW0JdKTtCPW1bMF07dmFyIHY9bVttLmxlbmd0aC0xXS1CLHk9aC5pdGVyYXRpb25zfHwwOzE+eSYmKHk9MSk7dio9eTtiPHYrQiYmKGI9ditCKTt2YXIgdT1KKGgsInYiLCJ2YWx1ZXMiKTtpZighdXx8CnUubGVuZ3RoIT1tLmxlbmd0aCl0aHJvdyBFcnJvcigiVmFsdWVzIGRvIG5vdCBtYXRjaCB0aW1lcyIpO3U9dS5zbGljZSgpO2Zvcih2YXIgQz1nLGs9dSx3PVIoQykmMjQwLHA9MDtwPGsubGVuZ3RoOysrcClpZig5Nj09dyl7Zm9yKHZhciBHPWtbcF0uc3Vic3RyaW5nKDYsa1twXS5sZW5ndGgtMikubWF0Y2goL1tBLURGLVphLWRmLXpdWy0rMC05ZUUuLCBdKi9pZyksQT1bXSxyPTA7cjxHLmxlbmd0aDsrK3Ipe0EucHVzaChHW3JdWzBdKTtmb3IodmFyIHo9MTxHW3JdLnRyaW0oKS5sZW5ndGg/R1tyXS5zdWJzdHJpbmcoMSkuc3BsaXQoIiwiKTpbXSxGPTA7Rjx6Lmxlbmd0aDsrK0YpeltGXT1wYXJzZUZsb2F0KHpbRl0pO0EucHVzaCh6KX1rW3BdPUF9ZWxzZSBpZig0OD09dyl4KGtbcF0sIiMiKT8oRz05PT1rW3BdLmxlbmd0aCxrW3BdPXBhcnNlSW50KGtbcF0uc3Vic3RyaW5nKDEpLDE2KSxHfHwoa1twXT0yNTYqa1twXXwyNTUpKTp4KGtbcF0sInVybCgiKXx8Im5vbmUiPT1rW3BdfHwKKGNvbnNvbGUud2FybigidW5zdXBwb3J0ZWQgY29sb3I6ICIra1twXSksa1twXT0wKTtlbHNlIGlmKDgwPT13KXtHPWs7QT1wO3I9a1twXTtpZigibm9uZSI9PXIpcj1bMF07ZWxzZXt6PVtdO2Zvcih2YXIgRD1yLmluZGV4T2YoIigiKTswPEQ7KWlmKEY9VC5pbmRleE9mKHIuc3Vic3RyaW5nKDAsRCkpLDA8PUYpe3oucHVzaChGKTt2YXIgRT1yLmluZGV4T2YoIikgIik7MD5FJiYoRT1yLmxlbmd0aC0xKTtEPXIuc3Vic3RyaW5nKEQrMSxFKS5zcGxpdCgiICIpOzU9PUY/KHoucHVzaChwYXJzZUZsb2F0KERbMF0pKSx6LnB1c2gocGFyc2VGbG9hdChEWzFdKSksei5wdXNoKHBhcnNlRmxvYXQoRFsyXSkpLHoucHVzaChpYShEWzNdKSkpOjE9PUY/ei5wdXNoKERbMF0pOnoucHVzaChwYXJzZUZsb2F0KERbMF0pKTtyPXIuc3Vic3RyaW5nKEUrMSkudHJpbSgpO0Q9ci5pbmRleE9mKCIoIil9ZWxzZSBicmVhaztyPXp9R1tBXT1yfWVsc2UgNjQ9PXc/Im5vbmUiIT1rW3BdPy9eWzAtOSAuXSokLy50ZXN0KGtbcF0pPwprW3BdPVgoa1twXSwiICIpOihjb25zb2xlLndhcm4oInVuc3VwcG9ydGVkIHZhbHVlOiAiK2tbcF0pLGtbcF09WzBdKTprW3BdPVswXTozMj09dz8oSChrW3BdKSxrW3BdPXBhcnNlRmxvYXQoa1twXSkpOjA9PT1DJiYoa1twXT1wYXJzZUZsb2F0KGtbcF0pKTtDPUooaCwiZSIsImVhc2luZyIpO2s9bS5sZW5ndGg7Zm9yKEN8fChDPVtdKTtDLmxlbmd0aDxrOylDLnB1c2goWzEsMCwwLC41OCwxXSk7Zm9yKGs9MDtrPEMubGVuZ3RoOysraylDW2tdPWhhKENba10pO3E9W2cscSxCLHYsbSx1LEMseV07bT1KKGgsIm1wIiwibW90aW9uUGF0aCIpO3QobSkmJjA9PT1nJiYocVs4XT1bXSxxWzhdWzBdPWgubW90aW9uUm90YXRlLGg9ZG9jdW1lbnQuY3JlYXRlRWxlbWVudE5TKCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIsInBhdGgiKSxtfHwobT0iTTAsMCIpLGguc2V0QXR0cmlidXRlKCJkIixtKSxxWzhdWzFdPWgscVs4XVsyXT1oLmdldFRvdGFsTGVuZ3RoKCkpO2wucHVzaChxKX0wPApsLmxlbmd0aCYmKGMuQS5wdXNoKGUpLGMuQy5wdXNoKGwpKX1jLnY9YjtjLmc9MDtjLmY9Yy52O2FhKGMpO3JldHVybiBjfSxhZGQ6YWEscmVtb3ZlOlAscmVtb3ZlQWxsOmZ1bmN0aW9uKCl7Zm9yKHZhciBhPXcubGVuZ3RoLTE7MDw9YTstLWEpUCh3W2FdKTtyZXR1cm4gdGhpc30sdGltZWxpbmVzOmZ1bmN0aW9uKCl7cmV0dXJuIHcuc2xpY2UoKX0sZ2xvYmFsUGxheTpmdW5jdGlvbigpe3UmJihWPXUtKG5ldyBEYXRlKS5nZXRUaW1lKCksdT12b2lkIDAsTigpKTtyZXR1cm4gdGhpc30sZ2xvYmFsUGF1c2U6ZnVuY3Rpb24oKXt1fHwodT12LE8oITEpKTtyZXR1cm4gdGhpc30sZ2xvYmFsU3RhdGU6ZnVuY3Rpb24oKXtyZXR1cm4gdT8icGF1c2VkIjoicnVubmluZyJ9fX0oKTsKXV0+PC9zY3JpcHQ+Cjwvc3ZnPgo=");
}

.swiper-button-next,
.swiper-container-rtl .swiper-button-prev {
  background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20viewBox%3D'0%200%2027%2044'%3E%3Cpath%20d%3D'M27%2C22L27%2C22L5%2C44l-2.1-2.1L22.8%2C22L2.9%2C2.1L5%2C0L27%2C22L27%2C22z'%20fill%3D'%23007aff'%2F%3E%3C%2Fsvg%3E");
  right: 10px;
  left: auto;
}

.swiper-button-next.swiper-button-black,
.swiper-container-rtl .swiper-button-prev.swiper-button-black {
  background-image:url("data:image/svg+xml;charset=utf-8;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iaXNvLTg4NTktMSI/Pgo8IS0tIEdlbmVyYXRvcjogQWRvYmUgSWxsdXN0cmF0b3IgMTguMC4wLCBTVkcgRXhwb3J0IFBsdWctSW4gLiBTVkcgVmVyc2lvbjogNi4wMCBCdWlsZCAwKSAgLS0+CjwhRE9DVFlQRSBzdmcgUFVCTElDICItLy9XM0MvL0RURCBTVkcgMS4xLy9FTiIgImh0dHA6Ly93d3cudzMub3JnL0dyYXBoaWNzL1NWRy8xLjEvRFREL3N2ZzExLmR0ZCI+CjxzdmcgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB4bWxuczp4bGluaz0iaHR0cDovL3d3dy53My5vcmcvMTk5OS94bGluayIgdmVyc2lvbj0iMS4xIiBpZD0iQ2FwYV8xIiB4PSIwcHgiIHk9IjBweCIgdmlld0JveD0iMCAwIDU5LjQxNCA1OS40MTQiIHN0eWxlPSJlbmFibGUtYmFja2dyb3VuZDpuZXcgMCAwIDU5LjQxNCA1OS40MTQ7IiB4bWw6c3BhY2U9InByZXNlcnZlIiB3aWR0aD0iNjRweCIgaGVpZ2h0PSI2NHB4Ij4KPHBvbHlnb24gcG9pbnRzPSIxNS41NjEsMCAxNC4xNDYsMS40MTQgNDIuNDM5LDI5LjcwNyAxNC4xNDYsNTggMTUuNTYxLDU5LjQxNCA0NS4yNjgsMjkuNzA3ICIgZmlsbD0iIzAwMDAwMCIvPgo8Zz4KPC9nPgo8Zz4KPC9nPgo8Zz4KPC9nPgo8Zz4KPC9nPgo8Zz4KPC9nPgo8Zz4KPC9nPgo8Zz4KPC9nPgo8Zz4KPC9nPgo8Zz4KPC9nPgo8Zz4KPC9nPgo8Zz4KPC9nPgo8Zz4KPC9nPgo8Zz4KPC9nPgo8Zz4KPC9nPgo8Zz4KPC9nPgo8L3N2Zz4K");
}

.swiper-button-next.swiper-button-white,
.swiper-container-rtl .swiper-button-prev.swiper-button-white {
  background-image:url("data:image/svg+xml;charset=utf-8;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iaXNvLTg4NTktMSI/Pgo8IS0tIEdlbmVyYXRvcjogQWRvYmUgSWxsdXN0cmF0b3IgMTguMC4wLCBTVkcgRXhwb3J0IFBsdWctSW4gLiBTVkcgVmVyc2lvbjogNi4wMCBCdWlsZCAwKSAgLS0+CjwhRE9DVFlQRSBzdmcgUFVCTElDICItLy9XM0MvL0RURCBTVkcgMS4xLy9FTiIgImh0dHA6Ly93d3cudzMub3JnL0dyYXBoaWNzL1NWRy8xLjEvRFREL3N2ZzExLmR0ZCI+CjxzdmcgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB4bWxuczp4bGluaz0iaHR0cDovL3d3dy53My5vcmcvMTk5OS94bGluayIgdmVyc2lvbj0iMS4xIiBpZD0iQ2FwYV8xIiB4PSIwcHgiIHk9IjBweCIgdmlld0JveD0iMCAwIDU5LjQxNCA1OS40MTQiIHN0eWxlPSJlbmFibGUtYmFja2dyb3VuZDpuZXcgMCAwIDU5LjQxNCA1OS40MTQ7IiB4bWw6c3BhY2U9InByZXNlcnZlIiB3aWR0aD0iNjRweCIgaGVpZ2h0PSI2NHB4Ij4KPHBvbHlnb24gcG9pbnRzPSIxNS41NjEsMCAxNC4xNDYsMS40MTQgNDIuNDM5LDI5LjcwNyAxNC4xNDYsNTggMTUuNTYxLDU5LjQxNCA0NS4yNjgsMjkuNzA3ICIgZmlsbD0iI0ZGRkZGRiIvPgo8Zz4KPC9nPgo8Zz4KPC9nPgo8Zz4KPC9nPgo8Zz4KPC9nPgo8Zz4KPC9nPgo8Zz4KPC9nPgo8Zz4KPC9nPgo8Zz4KPC9nPgo8Zz4KPC9nPgo8Zz4KPC9nPgo8Zz4KPC9nPgo8Zz4KPC9nPgo8Zz4KPC9nPgo8Zz4KPC9nPgo8Zz4KPC9nPgo8L3N2Zz4K");
}

.swiper-button-next.swiper-button-green,
.swiper-container-rtl .swiper-button-prev.swiper-button-green {
  background-image:url("data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiIHN0YW5kYWxvbmU9Im5vIj8+CjwhLS0gQ3JlYXRlZCB3aXRoIEtleXNoYXBlIC0tPgo8c3ZnIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgaWQ9IkNhcGFfMSIgdmlld0JveD0iMCAwIDU5LjQxNCA1OS40MTQiIHdpZHRoPSI2NHB4IiBoZWlnaHQ9IjY0cHgiIHN0eWxlPSJ3aGl0ZS1zcGFjZTogcHJlc2VydmUtc3BhY2VzOyI+CiAgICA8cGF0aCBmaWxsPSIjN2VjNTNjIiBkPSJNMTUuNTYxLDBMMTQuMTQ2LDEuNDE0TDQyLjQzOSwyOS43MDdMMTQuMTQ2LDU4TDE1LjU2MSw1OS40MTRMNDUuMjY4LDI5LjcwN1oiLz4KICAgIDxnLz4KICAgIDxnLz4KICAgIDxnLz4KICAgIDxnLz4KICAgIDxnLz4KICAgIDxnLz4KICAgIDxnLz4KICAgIDxnLz4KICAgIDxnLz4KICAgIDxnLz4KICAgIDxnLz4KICAgIDxnLz4KICAgIDxnLz4KICAgIDxnLz4KICAgIDxnLz4KICAgIDxzY3JpcHQ+PCFbQ0RBVEFbLyoKIEtleXNoYXBlSlMgdjEuMS4wIChjKSAyMDE4LTIwMTkgUGl4b2ZpZWxkIEx0ZCB8IHBpeG9maWVsZC5jb20va2V5c2hhcGVqcy9taXQtbGljZW5zZSAqLwp3aW5kb3cuS2V5c2hhcGVKUz1mdW5jdGlvbigpe2Z1bmN0aW9uIHQoYSl7cmV0dXJuInVuZGVmaW5lZCIhPT10eXBlb2YgYX1mdW5jdGlvbiB4KGEsYil7cmV0dXJuIGEmJjA9PWEuaW5kZXhPZihiKX1mdW5jdGlvbiBIKGEpe2lmKCFpc0Zpbml0ZShhKSl0aHJvdyBFcnJvcigiTm9uLWZpbml0ZSB2YWx1ZSIpO31mdW5jdGlvbiBSKGEpe2lmKDE0Pj1hKXJldHVybiAxNjt2YXIgYj1TW2FdO2J8fChiPXQoY2FbYV0pPzB8KGEudG9Mb3dlckNhc2UoKS5pbmRleE9mKCJjb2xvciIpPT1hLmxlbmd0aC01PzQ4OjApOjEpO3JldHVybiBifWZ1bmN0aW9uIEsoYSl7cmV0dXJuIDA8PWE/TWF0aC5wb3coYSwxLzMpOi1NYXRoLnBvdygtYSwxLzMpfWZ1bmN0aW9uIGRhKGEsYixjLGQpe2lmKDA9PWEpcmV0dXJuIDA9PWI/Yj0tZC9jOihhPU1hdGguc3FydChjKmMtNCpiKmQpLGQ9KC1jK2EpLygyKmIpLDA8PWQmJjE+PWQ/Yj1kOihkPSgtYy1hKS8oMipiKSxiPTA8PWQmJjE+PWQ/ZDowKSksYjsKdmFyIGU9Yy9hLWIqYi8oYSphKS8zO2M9YipiKmIvKGEqYSphKS8xMy41LWIqYy8oYSphKS8zK2QvYTt2YXIgbj1jKmMvNCtlKmUqZS8yNztiPS1iLygzKmEpO2lmKDA+PW4pe2lmKDA9PWUmJjA9PWMpcmV0dXJuLUsoZC9hKTthPU1hdGguc3FydChjKmMvNC1uKTtkPU1hdGguYWNvcygtYy8yL2EpO2M9TWF0aC5jb3MoZC8zKTtkPU1hdGguc3FydCgzKSpNYXRoLnNpbihkLzMpO2E9SyhhKTtlPTIqYSpjK2I7aWYoMDw9ZSYmMT49ZSlyZXR1cm4gZTtlPS1hKihjK2QpK2I7aWYoMDw9ZSYmMT49ZSlyZXR1cm4gZTtlPWEqKGQtYykrYjtpZigwPD1lJiYxPj1lKXJldHVybiBlfWVsc2V7YT1LKC1jLzIrTWF0aC5zcXJ0KG4pKTtjPUsoLWMvMi1NYXRoLnNxcnQobikpO2Q9YStjK2I7aWYoMDw9ZCYmMT49ZClyZXR1cm4gZDtkPS0oYStjKS8yK2I7aWYoMDw9ZCYmMT49ZClyZXR1cm4gZH1yZXR1cm4gMH1mdW5jdGlvbiBlYShhLGIpe2lmKDQ4PT1hJiYibnVtYmVyIj09PXR5cGVvZiBiKXJldHVybiJyZ2JhKCIrCihiPj4+MjQpKyIsIisoYj4+PjE2JjI1NSkrIiwiKyhiPj4+OCYyNTUpKyIsIisoYiYyNTUpLzI1NSsiKSI7aWYoNjQ9PWEpcmV0dXJuIGI9Yi5tYXAoZnVuY3Rpb24oYSl7cmV0dXJuIGErInB4In0pLGIuam9pbigiLCIpO2lmKDk2PT1hKXthPSIiO2Zvcih2YXIgYz1iLmxlbmd0aCxkPTA7ZDxjO2QrPTIpYSs9YltkXSxhKz1iW2QrMV0uam9pbigiLCIpO3JldHVybiBhfWlmKDgwPT1hKXtpZigwPT1iWzBdKXJldHVybiJub25lIjthPSIiO2M9Yi5sZW5ndGg7Zm9yKGQ9MDtkPGM7KWErPVRbYltkXV0sMT09YltkXT9hKz0iKCIrYltkKzFdKyIpICI6NT09YltkXT8oYSs9IigiK2JbZCsxXSsicHggIitiW2QrMl0rInB4ICIrYltkKzNdKyJweCByZ2JhKCIrKGJbZCs0XT4+PjI0KSsiLCIrKGJbZCs0XT4+MTYmMjU1KSsiLCIrKGJbZCs0XT4+OCYyNTUpKyIsIisoYltkKzRdJjI1NSkvMjU1KyIpKSAiLGQrPTMpOmE9Mj09YltkXT9hKygiKCIrYltkKzFdKyJweCkgIik6Nz09YltkXT9hKwooIigiK2JbZCsxXSsiZGVnKSAiKTphKygiKCIrKDA+YltkKzFdPzA6YltkKzFdKSsiKSAiKSxkKz0yO3JldHVybiBhfXJldHVybiAzMj09YT9iKyJweCI6Yn1mdW5jdGlvbiB5KGEpe3JldHVybiAwPj1hPzA6MjU1PD1hPzI1NTphfWZ1bmN0aW9uIGZhKGEsYixjLGQpe2lmKDE2PT1hfHwzMj09YSlyZXR1cm4oYy1iKSpkK2I7aWYoMD09YSlyZXR1cm4uNT5kP2I6YztpZig0OD09YSl7aWYoIm51bWJlciI9PT10eXBlb2YgYiYmIm51bWJlciI9PT10eXBlb2YgYyl7dmFyIGU9MS1kO3JldHVybih5KGUqKGI+Pj4yNCkrZCooYz4+PjI0KSk8PDI0fHkoZSooYj4+PjE2JjI1NSkrZCooYz4+PjE2JjI1NSkpPDwxNnx5KGUqKGI+Pj44JjI1NSkrZCooYz4+PjgmMjU1KSk8PDh8eShlKihiJjI1NSkrZCooYyYyNTUpKSk+Pj4wfXJldHVybi41PmQ/YjpjfWlmKDY0PT1hKXswPT1iLmxlbmd0aCYmKGI9WzBdKTswPT1jLmxlbmd0aCYmKGM9WzBdKTt2YXIgbj1iLmxlbmd0aDtiLmxlbmd0aCE9Yy5sZW5ndGgmJgoobj1iLmxlbmd0aCpjLmxlbmd0aCk7dmFyIGw9W107Zm9yKGE9MDthPG47KythKXt2YXIgZj1iW2ElYi5sZW5ndGhdO3ZhciBoPShjW2ElYy5sZW5ndGhdLWYpKmQrZjswPmgmJihoPTApO2wucHVzaChoKX1yZXR1cm4gbH1pZig5Nj09YSl7aWYoYi5sZW5ndGghPWMubGVuZ3RoKXJldHVybi41PmQ/YjpjO249Yi5sZW5ndGg7bD1bXTtmb3IoYT0wO2E8bjthKz0yKXtpZihiW2FdIT09Y1thXSlyZXR1cm4uNT5kP2I6YztsW2FdPWJbYV07bFthKzFdPVtdO2ZvcihmPTA7ZjxiW2ErMV0ubGVuZ3RoOysrZilsW2ErMV0ucHVzaCgoY1thKzFdW2ZdLWJbYSsxXVtmXSkqZCtiW2ErMV1bZl0pfXJldHVybiBsfWlmKDgwPT1hKXtuPWIubGVuZ3RoO2lmKG4hPWMubGVuZ3RoKXJldHVybi41PmQ/YjpjO2w9W107Zm9yKGE9MDthPG47KXtpZihiW2FdIT1jW2FdfHwxPT1iW2FdKXJldHVybi41PmQ/YjpjO2xbYV09YlthXTtsW2ErMV09KGNbYSsxXS1iW2ErMV0pKmQrYlthKzFdO2lmKDU9PWJbYV0pe2xbYSsKMl09KGNbYSsyXS1iW2ErMl0pKmQrYlthKzJdO2xbYSszXT0oY1thKzNdLWJbYSszXSkqZCtiW2ErM107ZT0xLWQ7dmFyIGc9YlthKzRdLHE9Y1thKzRdO2g9ZSooZz4+PjI0KStkKihxPj4+MjQpO3ZhciBtPWUqKGc+PjE2JjI1NSkrZCoocT4+MTYmMjU1KTtmPWUqKGc+PjgmMjU1KStkKihxPj44JjI1NSk7ZT1lKihnJjI1NSkrZCoocSYyNTUpO2xbYSs0XT0oeShtKTw8MTZ8eShmKTw8OHx5KGUpKSsxNjc3NzIxNiooeShoKXwwKTthKz0zfWErPTJ9cmV0dXJuIGx9cmV0dXJuIDB9ZnVuY3Rpb24gVShhLGIpe2E6e3ZhciBjPWErYlsyXTt2YXIgZD1iWzRdLmxlbmd0aDtmb3IodmFyIGU9MDtlPGQ7KytlKWlmKGM8Yls0XVtlXSl7Yz1lO2JyZWFrIGF9Yz1kLTF9ZD1iWzJdO2U9Yls0XVtjLTFdLWQ7YT0oYS1lKS8oYls0XVtjXS1kLWUpO2lmKGJbNl0mJmJbNl0ubGVuZ3RoPmMtMSlpZihkPWJbNl1bYy0xXSwxPT1kWzBdKWlmKDA+PWEpYT0wO2Vsc2UgaWYoMTw9YSlhPTE7ZWxzZXtlPQpkWzFdO3ZhciBuPWRbM107YT1kYSgzKmUtMypuKzEsLTYqZSszKm4sMyplLC1hKTthPTMqYSooMS1hKSooMS1hKSpkWzJdKzMqYSphKigxLWEpKmRbNF0rYSphKmF9ZWxzZSAyPT1kWzBdPyhkPWRbMV0sYT1NYXRoLmNlaWwoYSpkKS9kKTozPT1kWzBdJiYoZD1kWzFdLGE9TWF0aC5mbG9vcihhKmQpL2QpO3JldHVybiBmYShiWzFdJjI0MCxiWzVdW2MtMV0sYls1XVtjXSxhKX1mdW5jdGlvbiBMKCl7dXx8KHY9KG5ldyBEYXRlKS5nZXRUaW1lKCkrVil9ZnVuY3Rpb24gTyhhKXtpZihhfHwhRSl7Zm9yKHZhciBiPSExLGM9MDtjPHcubGVuZ3RoOysrYyl3W2NdLkooYSkmJihiPSEwKTtpZihhKWZvcig7MDxJLmxlbmd0aDspaWYoYT1JLnNoaWZ0KCksYz1hWzBdLDE9PWFbMV0pYy5vbmZpbmlzaCYmKGMub25maW5pc2goKSxiPSEwKSxjLkkoKTtlbHNlIGlmKDI9PWFbMV0mJmMub25sb29wKWMub25sb29wKCk7cmV0dXJuIGJ9fWZ1bmN0aW9uIFcoKXtMKCk7TyghMCkmJiF1PyhFPSEwLE0oVykpOgpFPSExfWZ1bmN0aW9uIE4oKXtFfHwoRT0hMCxNKFcpKX1mdW5jdGlvbiBYKGEsYil7dmFyIGM9W107YS5zcGxpdChiKS5mb3JFYWNoKGZ1bmN0aW9uKGEpe2MucHVzaChwYXJzZUZsb2F0KGEpKX0pO3JldHVybiBjfWZ1bmN0aW9uIEEoYSl7LTE9PWEuaW5kZXhPZigiLCIpJiYoYT1hLnJlcGxhY2UoIiAiLCIsIikpO3JldHVybiBYKGEsIiwiKX1mdW5jdGlvbiBZKGEpe2EuX2tzfHwoYS5fa3M9e30pO2lmKCFhLl9rcy50cmFuc2Zvcm0pe2Zvcih2YXIgYj1hLl9rcy50cmFuc2Zvcm09W10sYz0wOzE0Pj1jOysrYyliW2NdPTA7YlsxMF09MTtiWzExXT0xO2lmKGE9YS5nZXRBdHRyaWJ1dGUoInRyYW5zZm9ybSIpKXthPWEudHJpbSgpLnNwbGl0KCIpICIpO2ZvcihjPWEubGVuZ3RoLTI7MDw9YzstLWMpaWYoeChhW2NdLCJ0cmFuc2xhdGUoIikpe2Zvcih2YXIgZD0wO2Q8YztkKyspYS5zaGlmdCgpO2JyZWFrfWM9YS5zaGlmdCgpO3goYywidHJhbnNsYXRlKCIpJiYoYz1BKGMuc3Vic3RyaW5nKDEwKSksCmJbMV09Y1swXSxiWzJdPXQoY1sxXSk/Y1sxXTowLGM9YS5zaGlmdCgpKTt4KGMsInJvdGF0ZSgiKSYmKGM9QShjLnN1YnN0cmluZyg3KSksYls2XT1jWzBdLGM9YS5zaGlmdCgpKTt4KGMsInNrZXdYKCIpJiYoYz1BKGMuc3Vic3RyaW5nKDYpKSxiWzddPWNbMF0sYz1hLnNoaWZ0KCkpO3goYywic2tld1koIikmJihjPUEoYy5zdWJzdHJpbmcoNikpLGJbOF09Y1swXSxjPWEuc2hpZnQoKSk7eChjLCJzY2FsZSgiKSYmKGM9QShjLnN1YnN0cmluZyg2KSksYlsxMF09Y1swXSxiWzExXT10KGNbMV0pP2NbMV06Y1swXSxjPWEuc2hpZnQoKSk7eChjLCJ0cmFuc2xhdGUoIikmJihjPUEoYy5zdWJzdHJpbmcoMTApKSxiWzEzXT1jWzBdLGJbMTRdPXQoY1sxXSk/Y1sxXTowKX19fWZ1bmN0aW9uIFooYSl7dGhpcy5sPWE7dGhpcy5BPVtdO3RoaXMuQz1bXTt0aGlzLnY9MDt0aGlzLnM9dGhpcy5hPXRoaXMuYz1udWxsO3RoaXMuaD10aGlzLmY9dGhpcy5nPTA7dGhpcy5iPTE7dGhpcy5pPXRoaXMuRj0KdGhpcy5vPSExfWZ1bmN0aW9uIEooYSxiLGMpe2I9YVtiXTt2b2lkIDA9PT1iJiYoYj1hW2NdKTtyZXR1cm4gYn1mdW5jdGlvbiBoYShhKXtyZXR1cm4gQXJyYXkuaXNBcnJheShhKT9hOngoYSwiY3ViaWMtYmV6aWVyKCIpPyhhPWEuc3Vic3RyaW5nKDEzLGEubGVuZ3RoLTEpLnNwbGl0KCIsIiksWzEscGFyc2VGbG9hdChhWzBdKSxwYXJzZUZsb2F0KGFbMV0pLHBhcnNlRmxvYXQoYVsyXSkscGFyc2VGbG9hdChhWzNdKV0pOngoYSwic3RlcHMoIik/KGE9YS5zdWJzdHJpbmcoNixhLmxlbmd0aC0xKS5zcGxpdCgiLCIpLFthWzFdJiYic3RhcnQiPT1hWzFdLnRyaW0oKT8yOjMscGFyc2VGbG9hdChhWzBdKV0pOlswXX1mdW5jdGlvbiBpYShhKXthPWEudHJpbSgpO3JldHVybiB4KGEsIiMiKT8ocGFyc2VJbnQoYS5zdWJzdHJpbmcoMSksMTYpPDw4KSsyNTU6eChhLCJyZ2JhKCIpPyhhPWEuc3Vic3RyaW5nKDUsYS5sZW5ndGgtMSksYT1hLnNwbGl0KCIsIiksKHBhcnNlSW50KGFbMF0sCjEwKTw8MjQpKyhwYXJzZUludChhWzFdLDEwKTw8MTYpKyhwYXJzZUludChhWzJdLDEwKTw8OCkrMjU1KnBhcnNlRmxvYXQoYVszXSk8PDApOmF9ZnVuY3Rpb24gYWEoYSl7ITE9PT1hLmkmJih3LnB1c2goYSksYS5pPSEwLCExIT09YS5sLmF1dG9wbGF5JiZhLnBsYXkoKSk7cmV0dXJuIHRoaXN9ZnVuY3Rpb24gUChhKXtpZighMD09PWEuaSl7YS5fY2FuY2VsKCk7dmFyIGI9dy5pbmRleE9mKGEpOy0xPGImJncuc3BsaWNlKGIsMSk7Yj1JLmluZGV4T2YoYSk7LTE8YiYmSS5zcGxpY2UoYiwxKTthLmk9ITF9cmV0dXJuIHRoaXN9dmFyIFE9RXJyb3IoIk5vdCBpbiB0aW1lbGluZSBsaXN0IiksYmE9Im1wYXRoIHBvc1ggcG9zWSAgICByb3RhdGUgc2tld1ggc2tld1kgIHNjYWxlWCBzY2FsZVkgIGFuY2hvclggYW5jaG9yWSIuc3BsaXQoIiAiKSxqYT0iIHRyYW5zbGF0ZSB0cmFuc2xhdGUgICAgcm90YXRlIHNrZXdYIHNrZXdZICBzY2FsZSBzY2FsZSAgdHJhbnNsYXRlIHRyYW5zbGF0ZSIuc3BsaXQoIiAiKSwKVD0ibm9uZSB1cmwgYmx1ciBicmlnaHRuZXNzIGNvbnRyYXN0IGRyb3Atc2hhZG93IGdyYXlzY2FsZSBodWUtcm90YXRlIGludmVydCBvcGFjaXR5IHNhdHVyYXRlIHNlcGlhIi5zcGxpdCgiICIpLE09d2luZG93LnJlcXVlc3RBbmltYXRpb25GcmFtZXx8d2luZG93LndlYmtpdFJlcXVlc3RBbmltYXRpb25GcmFtZXx8d2luZG93Lm1velJlcXVlc3RBbmltYXRpb25GcmFtZXx8d2luZG93Lm9SZXF1ZXN0QW5pbWF0aW9uRnJhbWV8fHdpbmRvdy5tc1JlcXVlc3RBbmltYXRpb25GcmFtZXx8bnVsbDtNfHwoTT1mdW5jdGlvbihhKXt3aW5kb3cuc2V0VGltZW91dChhLDE2KX0pO3ZhciBTPXtkOjk3LGZpbGw6NDgsZmlsbE9wYWNpdHk6MTYsZmlsdGVyOjgwLGhlaWdodDozMyxvcGFjaXR5OjE2LG9mZnNldERpc3RhbmNlOjMzLHN0cm9rZTo0OCxzdHJva2VEYXNoYXJyYXk6NjQsc3Ryb2tlRGFzaG9mZnNldDozMixzdHJva2VPcGFjaXR5OjE2LHN0cm9rZVdpZHRoOjMyLHRyYW5zZm9ybToxLAp3aWR0aDozM30sY2E9d2luZG93LmdldENvbXB1dGVkU3R5bGUoZG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50KSxFPSExLHY9KG5ldyBEYXRlKS5nZXRUaW1lKCksdSxWPTAsdz1bXSxJPVtdO1oucHJvdG90eXBlPXtCOmZ1bmN0aW9uKGEpe3ZhciBiPTA7aWYobnVsbCE9PXRoaXMuYyl7dmFyIGM9dGhpcy5qKCk7MDx0aGlzLmImJm51bGwhPT1jJiZjPj10aGlzLmY/dGhpcy5oPyh0aGlzLmM9di10aGlzLmcvdGhpcy5iLHRoaXMuaC0tLGI9Mik6KGI9MSxhP3RoaXMuYT1jOnRoaXMuYT10aGlzLnM/TWF0aC5tYXgodGhpcy5zLHRoaXMuZik6dGhpcy5mKTowPnRoaXMuYiYmbnVsbCE9PWMmJmM8PXRoaXMuZz90aGlzLmgmJkluZmluaXR5IT10aGlzLmY/KHRoaXMuYz12LXRoaXMuZi90aGlzLmIsdGhpcy5oLS0sYj0yKToodGhpcy5oPTAsYj0xLGE/dGhpcy5hPWM6dGhpcy5hPXRoaXMucz9NYXRoLm1pbih0aGlzLnMsdGhpcy5nKTp0aGlzLmcpOm51bGwhPT1jJiYwIT10aGlzLmImJihhJiYKbnVsbCE9PXRoaXMuYSYmKHRoaXMuYz12LXRoaXMuYS90aGlzLmIpLHRoaXMuYT1udWxsKX10aGlzLnM9dGhpcy5qKCk7cmV0dXJuIGJ9LEo6ZnVuY3Rpb24oYSl7YSYmKHRoaXMubyYmKHRoaXMubz0hMSxudWxsPT09dGhpcy5jJiYoMCE9dGhpcy5iJiZudWxsIT09dGhpcy5hPyh0aGlzLmM9di10aGlzLmEvdGhpcy5iLHRoaXMuYT1udWxsKTp0aGlzLmM9dikpLG51bGw9PT10aGlzLmEmJm51bGwhPT10aGlzLmMmJihhPXRoaXMuQighMSksMCE9YSYmSS5wdXNoKFt0aGlzLGFdKSkpO2E9dGhpcy5qKCk7aWYobnVsbD09PWEpcmV0dXJuITE7Zm9yKHZhciBiPXRoaXMuQSxjPXRoaXMuQyxkPTA7ZDxiLmxlbmd0aDsrK2Qpe2Zvcih2YXIgZT1iW2RdLG49ITEsbD0wO2w8Y1tkXS5sZW5ndGg7KytsKXt2YXIgZj1jW2RdW2xdLGg9ZlswXTtpZihudWxsIT09aCl7dmFyIGc9ZlsyXTt2YXIgcT1mWzRdLmxlbmd0aCxtPWZbNF1bcS0xXS1nO2c9MD09bT9mWzVdW3EtMV06YTw9Zz9mWzVdWzBdOgphPj1nK2ZbM10/MD09ZlszXSVtP2ZbNV1bcS0xXTpVKGZbM10lbSxmKTpVKChhLWcpJW0sZik7MD09aD8oZS5fa3MubXBhdGg9Zls4XSxlLl9rcy50cmFuc2Zvcm1baF09ZyxuPSEwKToxND49aD8oZS5fa3MudHJhbnNmb3JtW2hdPWcsbj0hMCk6KGc9ZWEoZlsxXSYyNDAsZyksZlsxXSYxP2Uuc2V0QXR0cmlidXRlKGgsZyk6ZS5zdHlsZVtoXT1nKX19aWYobil7WShlKTtuPWUuX2tzLnRyYW5zZm9ybTtsPSIiO2lmKGY9ZS5fa3MubXBhdGgpZz1uWzBdLDA+ZyYmKGc9MCksMTAwPGcmJihnPTEwMCksZz1nKmZbMl0vMTAwLGg9ZlsxXS5nZXRQb2ludEF0TGVuZ3RoKGcpLGw9InRyYW5zbGF0ZSgiK2gueCsiLCIraC55KyIpICIsZlswXSYmKC41Pmc/KGc9aCxoPWZbMV0uZ2V0UG9pbnRBdExlbmd0aCguNSkpOmc9ZlsxXS5nZXRQb2ludEF0TGVuZ3RoKGctLjUpLGwrPSJyb3RhdGUoIisxODAqTWF0aC5hdGFuMihoLnktZy55LGgueC1nLngpL01hdGguUEkrIikgIik7Zm9yKGY9MTtmPG4ubGVuZ3RoOysrZiloPQpuW2ZdLGghPSgxMD09Znx8MTE9PWY/MTowKSYmKGwrPSIgIitqYVtmXSsiKCIsbD0yPj1mP2wrKDE9PWY/aCsiLDAiOiIwLCIraCk6MTM8PWY/bCsoMTM9PWY/aCsiLDAiOiIwLCIraCk6MTA8PWY/bCsoMTA9PWY/aCsiLDEiOiIxLCIraCk6bCtoLGwrPSIpIik7ZS5zZXRBdHRyaWJ1dGUoInRyYW5zZm9ybSIsbCl9fXJldHVybiJydW5uaW5nIj09dGhpcy5tKCl9LEk6ZnVuY3Rpb24oKXshMSE9PXRoaXMubC5hdXRvcmVtb3ZlJiYiZmluaXNoZWQiPT10aGlzLm0oKSYmUCh0aGlzKX0sRDpmdW5jdGlvbigpe2lmKCF0aGlzLkYpe3RoaXMuRj0hMDtmb3IodmFyIGE9dGhpcy5BLGI9dGhpcy5DLGM9MDtjPGEubGVuZ3RoOysrYylmb3IodmFyIGQ9YVtjXSxlPTA7ZTxiW2NdLmxlbmd0aDsrK2UpMTQ+PWJbY11bZV1bMF0mJlkoZCl9fSx1OmZ1bmN0aW9uKGEpe2lmKCJudW1iZXIiPT10eXBlb2YgYSlyZXR1cm4gYTtpZighdCh0aGlzLmwubWFya2Vycyl8fCF0KHRoaXMubC5tYXJrZXJzW2FdKSl0aHJvdyBFcnJvcigiSW52YWxpZCBtYXJrZXI6ICIrCmEpO3JldHVybit0aGlzLmwubWFya2Vyc1thXX0scGxheTpmdW5jdGlvbihhKXt0KGEpJiZudWxsIT09YSYmKGE9dGhpcy51KGEpLEgoYSksMD50aGlzLmImJmE8dGhpcy5nJiYoYT10aGlzLmcpLDA8dGhpcy5iJiZhPnRoaXMuZiYmKGE9dGhpcy5mKSx0aGlzLncoYSwhMCkpO2lmKCF0aGlzLmkpdGhyb3cgUTthPXRoaXMuaigpO2lmKDA8dGhpcy5iJiYobnVsbD09PWF8fGE+PXRoaXMuZikpdGhpcy5hPXRoaXMuZztlbHNlIGlmKDA+dGhpcy5iJiYobnVsbD09PWF8fGE8PXRoaXMuZykpe2lmKEluZmluaXR5PT10aGlzLmYpdGhyb3cgRXJyb3IoIkNhbm5vdCBzZWVrIHRvIEluZmluaXR5Iik7dGhpcy5hPXRoaXMuZn1lbHNlIDA9PXRoaXMuYiYmbnVsbD09PWEmJih0aGlzLmE9dGhpcy5nKTtpZihudWxsPT09dGhpcy5hKXJldHVybiB0aGlzO3RoaXMuYz1udWxsO3RoaXMubz0hMDt0aGlzLkQoKTtOKCk7cmV0dXJuIHRoaXN9LHBhdXNlOmZ1bmN0aW9uKGEpe2lmKCF0aGlzLmkpdGhyb3cgUTsKdChhKSYmKGE9dGhpcy51KGEpLEgoYSkpO2lmKCJwYXVzZWQiIT10aGlzLm0oKSl7TCgpO3ZhciBiPXRoaXMuaigpO2lmKG51bGw9PT1iKWlmKDA8PXRoaXMuYil0aGlzLmE9dGhpcy5nO2Vsc2V7aWYoSW5maW5pdHk9PXRoaXMuZil0aHJvdyBFcnJvcigiQ2Fubm90IHNlZWsgdG8gSW5maW5pdHkiKTt0aGlzLmE9dGhpcy5mfW51bGwhPT10aGlzLmMmJm51bGw9PT10aGlzLmEmJih0aGlzLmE9Yik7dGhpcy5jPW51bGw7dGhpcy5vPSExO3RoaXMuQighMSk7dGhpcy5EKCk7TigpfXQoYSkmJnRoaXMudyhhLCEwKTtyZXR1cm4gdGhpc30scmFuZ2U6ZnVuY3Rpb24oYSxiKXtpZigwPT1hcmd1bWVudHMubGVuZ3RoKXJldHVybnsiaW4iOnRoaXMuZyxvdXQ6dGhpcy5mfTt2YXIgYz10aGlzLnUoYSksZD10aGlzLnY7dChiKSYmKGQ9dGhpcy51KGIpKTtIKGMpO2lmKDA+Y3x8MD5kfHxjPj1kfHxpc05hTihkKSl0aHJvdyBFcnJvcigiSW52YWxpZCByYW5nZSIpO3ZhciBlPXRoaXMubSgpO3RoaXMuZz0KYzt0aGlzLmY9ZDsiZmluaXNoZWQiPT1lJiYicnVubmluZyI9PXRoaXMubSgpJiZ0aGlzLnBsYXkoKTtyZXR1cm4gdGhpc30sbG9vcDpmdW5jdGlvbihhKXtpZighdChhKSlyZXR1cm57Y291bnQ6dGhpcy5ofTt0aGlzLmg9ITA9PT1hP0luZmluaXR5Ok1hdGguZmxvb3IoYSk7aWYoMD50aGlzLmh8fGlzTmFOKHRoaXMuaCkpdGhpcy5oPTA7cmV0dXJuIHRoaXN9LGo6ZnVuY3Rpb24oKXtyZXR1cm4gbnVsbCE9PXRoaXMuYT90aGlzLmE6bnVsbD09PXRoaXMuYz9udWxsOih2LXRoaXMuYykqdGhpcy5ifSx3OmZ1bmN0aW9uKGEsYil7YiYmTCgpO251bGwhPT1hJiYodGhpcy5EKCksbnVsbCE9PXRoaXMuYXx8bnVsbD09PXRoaXMuY3x8MD09dGhpcy5iPyh0aGlzLmE9YSxPKCExKSk6dGhpcy5jPXYtYS90aGlzLmIsdGhpcy5pfHwodGhpcy5jPW51bGwpLHRoaXMucz1udWxsLHRoaXMuQighMCksTigpKX0sRzpmdW5jdGlvbigpe3JldHVybiB0aGlzLmooKX0sdGltZTpmdW5jdGlvbihhKXtpZih0KGEpKXtpZighdGhpcy5pKXRocm93IFE7CmE9dGhpcy51KGEpO0goYSk7dGhpcy53KGEsITApO3JldHVybiB0aGlzfXJldHVybiB0aGlzLkcoKX0sbTpmdW5jdGlvbigpe3ZhciBhPXRoaXMuaigpO3JldHVybiB0aGlzLm8/InJ1bm5pbmciOm51bGw9PT1hPyJpZGxlIjpudWxsPT09dGhpcy5jPyJwYXVzZWQiOjA8dGhpcy5iJiZhPj10aGlzLmZ8fDA+dGhpcy5iJiZhPD10aGlzLmc/ImZpbmlzaGVkIjoicnVubmluZyJ9LHN0YXRlOmZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMubSgpfSxkdXJhdGlvbjpmdW5jdGlvbigpe3JldHVybiB0aGlzLnZ9LEg6ZnVuY3Rpb24oYSl7SChhKTtMKCk7dmFyIGI9dGhpcy5qKCk7dGhpcy5iPWE7bnVsbCE9PWImJnRoaXMudyhiLCExKX0scmF0ZTpmdW5jdGlvbihhKXtyZXR1cm4gdChhKT8odGhpcy5IKGEpLHRoaXMpOnRoaXMuYn0sbWFya2VyOmZ1bmN0aW9uKGEpe3JldHVybiB0KHRoaXMubC5tYXJrZXJzKT90aGlzLmwubWFya2Vyc1thXTp2b2lkIDB9LF9jYW5jZWw6ZnVuY3Rpb24oKXtpZighdGhpcy5pfHwKImlkbGUiPT10aGlzLm0oKSlyZXR1cm4gdGhpczt0aGlzLmM9dGhpcy5hPW51bGw7dGhpcy5vPSExO3JldHVybiB0aGlzfX07cmV0dXJue3ZlcnNpb246IjEuMS4wIixhbmltYXRlOmZ1bmN0aW9uKCl7dmFyIGE9e307aWYoMT09YXJndW1lbnRzLmxlbmd0aCUyKXthPWFyZ3VtZW50c1thcmd1bWVudHMubGVuZ3RoLTFdO3ZhciBiPXt9O2ZvcihjIGluIGEpYltjXT1hW2NdO2E9Yn12YXIgYz1uZXcgWihhKTthPWFyZ3VtZW50cztmb3IodmFyIGQ9Yj0wO2Q8YS5sZW5ndGgtMTtkKz0yKXt2YXIgZT1hW2RdO3ZhciBuPWUgaW5zdGFuY2VvZiBFbGVtZW50P2U6ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoZS5zdWJzdHJpbmcoMSkpO2lmKCFuKXRocm93IEVycm9yKCJJbnZhbGlkIHRhcmdldDogIitlKTtlPW47bj1hW2QrMV07ZS5fa3N8fChlLl9rcz17fSk7Zm9yKHZhciBsPVtdLGY9MDtmPG4ubGVuZ3RoOysrZil7dmFyIGg9bltmXSxnPUooaCwicCIsInByb3BlcnR5Iik7aWYoInN0cmluZyIhPQp0eXBlb2YgZ3x8LTEhPWcuaW5kZXhPZigiLSIpfHwiIj09PWd8fCEoMDxTW2ddfHwwPD1iYS5pbmRleE9mKGcpKSl0aHJvdyBFcnJvcigiSW52YWxpZCBwcm9wZXJ0eTogIitnKTt2YXIgcT1iYS5pbmRleE9mKGcpOyIiIT09ZyYmMDw9cSYmKGc9cSk7cT1SKGcpO3ZhciBtPUooaCwidCIsInRpbWVzIik7aWYoIW18fDI+bS5sZW5ndGgpdGhyb3cgRXJyb3IoIk5vdCBlbm91Z2ggdGltZXMiKTttPW0uc2xpY2UoKTtpZighaXNGaW5pdGUobVswXSl8fDA+bVswXSl0aHJvdyBFcnJvcigiSW52YWxpZCB0aW1lOiAiK21bMF0pO2Zvcih2YXIgQj0xO0I8bS5sZW5ndGg7KytCKWlmKCFpc0Zpbml0ZShtW0JdKXx8MD5tW0JdfHxtW0JdPG1bQi0xXSl0aHJvdyBFcnJvcigiSW52YWxpZCB0aW1lOiAiK21bQl0pO0I9bVswXTt2YXIgdj1tW20ubGVuZ3RoLTFdLUIseT1oLml0ZXJhdGlvbnN8fDA7MT55JiYoeT0xKTt2Kj15O2I8ditCJiYoYj12K0IpO3ZhciB1PUooaCwidiIsInZhbHVlcyIpO2lmKCF1fHwKdS5sZW5ndGghPW0ubGVuZ3RoKXRocm93IEVycm9yKCJWYWx1ZXMgZG8gbm90IG1hdGNoIHRpbWVzIik7dT11LnNsaWNlKCk7Zm9yKHZhciBDPWcsaz11LHc9UihDKSYyNDAscD0wO3A8ay5sZW5ndGg7KytwKWlmKDk2PT13KXtmb3IodmFyIEc9a1twXS5zdWJzdHJpbmcoNixrW3BdLmxlbmd0aC0yKS5tYXRjaCgvW0EtREYtWmEtZGYtel1bLSswLTllRS4sIF0qL2lnKSxBPVtdLHI9MDtyPEcubGVuZ3RoOysrcil7QS5wdXNoKEdbcl1bMF0pO2Zvcih2YXIgej0xPEdbcl0udHJpbSgpLmxlbmd0aD9HW3JdLnN1YnN0cmluZygxKS5zcGxpdCgiLCIpOltdLEY9MDtGPHoubGVuZ3RoOysrRil6W0ZdPXBhcnNlRmxvYXQoeltGXSk7QS5wdXNoKHopfWtbcF09QX1lbHNlIGlmKDQ4PT13KXgoa1twXSwiIyIpPyhHPTk9PWtbcF0ubGVuZ3RoLGtbcF09cGFyc2VJbnQoa1twXS5zdWJzdHJpbmcoMSksMTYpLEd8fChrW3BdPTI1NiprW3BdfDI1NSkpOngoa1twXSwidXJsKCIpfHwibm9uZSI9PWtbcF18fAooY29uc29sZS53YXJuKCJ1bnN1cHBvcnRlZCBjb2xvcjogIitrW3BdKSxrW3BdPTApO2Vsc2UgaWYoODA9PXcpe0c9aztBPXA7cj1rW3BdO2lmKCJub25lIj09cilyPVswXTtlbHNle3o9W107Zm9yKHZhciBEPXIuaW5kZXhPZigiKCIpOzA8RDspaWYoRj1ULmluZGV4T2Yoci5zdWJzdHJpbmcoMCxEKSksMDw9Ril7ei5wdXNoKEYpO3ZhciBFPXIuaW5kZXhPZigiKSAiKTswPkUmJihFPXIubGVuZ3RoLTEpO0Q9ci5zdWJzdHJpbmcoRCsxLEUpLnNwbGl0KCIgIik7NT09Rj8oei5wdXNoKHBhcnNlRmxvYXQoRFswXSkpLHoucHVzaChwYXJzZUZsb2F0KERbMV0pKSx6LnB1c2gocGFyc2VGbG9hdChEWzJdKSksei5wdXNoKGlhKERbM10pKSk6MT09Rj96LnB1c2goRFswXSk6ei5wdXNoKHBhcnNlRmxvYXQoRFswXSkpO3I9ci5zdWJzdHJpbmcoRSsxKS50cmltKCk7RD1yLmluZGV4T2YoIigiKX1lbHNlIGJyZWFrO3I9en1HW0FdPXJ9ZWxzZSA2ND09dz8ibm9uZSIhPWtbcF0/L15bMC05IC5dKiQvLnRlc3Qoa1twXSk/CmtbcF09WChrW3BdLCIgIik6KGNvbnNvbGUud2FybigidW5zdXBwb3J0ZWQgdmFsdWU6ICIra1twXSksa1twXT1bMF0pOmtbcF09WzBdOjMyPT13PyhIKGtbcF0pLGtbcF09cGFyc2VGbG9hdChrW3BdKSk6MD09PUMmJihrW3BdPXBhcnNlRmxvYXQoa1twXSkpO0M9SihoLCJlIiwiZWFzaW5nIik7az1tLmxlbmd0aDtmb3IoQ3x8KEM9W10pO0MubGVuZ3RoPGs7KUMucHVzaChbMSwwLDAsLjU4LDFdKTtmb3Ioaz0wO2s8Qy5sZW5ndGg7KytrKUNba109aGEoQ1trXSk7cT1bZyxxLEIsdixtLHUsQyx5XTttPUooaCwibXAiLCJtb3Rpb25QYXRoIik7dChtKSYmMD09PWcmJihxWzhdPVtdLHFbOF1bMF09aC5tb3Rpb25Sb3RhdGUsaD1kb2N1bWVudC5jcmVhdGVFbGVtZW50TlMoImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiwicGF0aCIpLG18fChtPSJNMCwwIiksaC5zZXRBdHRyaWJ1dGUoImQiLG0pLHFbOF1bMV09aCxxWzhdWzJdPWguZ2V0VG90YWxMZW5ndGgoKSk7bC5wdXNoKHEpfTA8CmwubGVuZ3RoJiYoYy5BLnB1c2goZSksYy5DLnB1c2gobCkpfWMudj1iO2MuZz0wO2MuZj1jLnY7YWEoYyk7cmV0dXJuIGN9LGFkZDphYSxyZW1vdmU6UCxyZW1vdmVBbGw6ZnVuY3Rpb24oKXtmb3IodmFyIGE9dy5sZW5ndGgtMTswPD1hOy0tYSlQKHdbYV0pO3JldHVybiB0aGlzfSx0aW1lbGluZXM6ZnVuY3Rpb24oKXtyZXR1cm4gdy5zbGljZSgpfSxnbG9iYWxQbGF5OmZ1bmN0aW9uKCl7dSYmKFY9dS0obmV3IERhdGUpLmdldFRpbWUoKSx1PXZvaWQgMCxOKCkpO3JldHVybiB0aGlzfSxnbG9iYWxQYXVzZTpmdW5jdGlvbigpe3V8fCh1PXYsTyghMSkpO3JldHVybiB0aGlzfSxnbG9iYWxTdGF0ZTpmdW5jdGlvbigpe3JldHVybiB1PyJwYXVzZWQiOiJydW5uaW5nIn19fSgpOwpdXT48L3NjcmlwdD4KPC9zdmc+Cg==");
}


/* Pagination Styles */
.swiper-pagination {
  position: absolute;
  text-align: center;
  -webkit-transition: 300ms;
  -moz-transition: 300ms;
  -o-transition: 300ms;
  transition: 300ms;
  -webkit-transform: translate3d(0, 0, 0);
  -ms-transform: translate3d(0, 0, 0);
  -o-transform: translate3d(0, 0, 0);
  transform: translate3d(0, 0, 0);
  z-index: 10;
}
.swiper-pagination.swiper-pagination-hidden {
  opacity: 0;
}
.swiper-pagination-bullet {
  width: 8px;
  height: 8px;
  display: inline-block;
  border-radius: 100%;
  background: #000;
  opacity: 0.2;
}
button.swiper-pagination-bullet {
  border: none;
  margin: 0;
  padding: 0;
  box-shadow: none;
  -moz-appearance: none;
  -ms-appearance: none;
  -webkit-appearance: none;
  appearance: none;
}
.swiper-pagination-clickable .swiper-pagination-bullet {
  cursor: pointer;
}
.swiper-pagination-white .swiper-pagination-bullet {
  background: #fff;
}
.swiper-pagination-bullet-active {
  opacity: 1;
  background: #007aff;
}
.swiper-pagination-white .swiper-pagination-bullet-active {
  background: #fff;
}
.swiper-pagination-black .swiper-pagination-bullet-active {
  background: #000;
}
.swiper-pagination-green .swiper-pagination-bullet-active {
  background: #7ec53c;
}

.swiper-container-vertical > .swiper-pagination {
  right: 10px;
  top: 50%;
  -webkit-transform: translate3d(0px, -50%, 0);
  -moz-transform: translate3d(0px, -50%, 0);
  -o-transform: translate(0px, -50%);
  -ms-transform: translate3d(0px, -50%, 0);
  transform: translate3d(0px, -50%, 0);
}
.swiper-container-vertical > .swiper-pagination .swiper-pagination-bullet {
  margin: 5px 0;
  display: block;
}
.swiper-container-horizontal > .swiper-pagination {
  bottom: 10px;
  left: 0;
  width: 100%;
}
.swiper-container-horizontal > .swiper-pagination .swiper-pagination-bullet {
  margin: 0 5px;
}
/* 3D Container */
.swiper-container-3d {
  -webkit-perspective: 1200px;
  -moz-perspective: 1200px;
  -o-perspective: 1200px;
  perspective: 1200px;
}
.swiper-container-3d .swiper-wrapper,
.swiper-container-3d .swiper-slide,
.swiper-container-3d .swiper-slide-shadow-left,
.swiper-container-3d .swiper-slide-shadow-right,
.swiper-container-3d .swiper-slide-shadow-top,
.swiper-container-3d .swiper-slide-shadow-bottom,
.swiper-container-3d .swiper-cube-shadow {
  -webkit-transform-style: preserve-3d;
  -moz-transform-style: preserve-3d;
  -ms-transform-style: preserve-3d;
  transform-style: preserve-3d;
}
.swiper-container-3d .swiper-slide-shadow-left,
.swiper-container-3d .swiper-slide-shadow-right,
.swiper-container-3d .swiper-slide-shadow-top,
.swiper-container-3d .swiper-slide-shadow-bottom {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  pointer-events: none;
  z-index: 10;
}
.swiper-container-3d .swiper-slide-shadow-left {
  background-image: -webkit-gradient(linear, left top, right top, from(rgba(0, 0, 0, 0.8)), to(rgba(0, 0, 0, 0.5)));
  /* Safari 4+, Chrome */
  background-image: -webkit-linear-gradient(right, rgba(0, 0, 0, 0.8), rgba(0, 0, 0, 0.5));
  /* Chrome 10+, Safari 5.1+, iOS 5+ */
  background-image: -moz-linear-gradient(right, rgba(0, 0, 0, 0.8), rgba(0, 0, 0, 0.5));
  /* Firefox 3.6-15 */
  background-image: -o-linear-gradient(right, rgba(0, 0, 0, 0.8), rgba(0, 0, 0, 0.5));
  /* Opera 11.10-12.00 */
  background-image: linear-gradient(to left, rgba(0, 0, 0, 0.8), rgba(0, 0, 0, 0.5));
  /* Firefox 16+, IE10, Opera 12.50+ */
}
.swiper-container-3d .swiper-slide-shadow-right {
  background-image: -webkit-gradient(linear, right top, left top, from(rgba(0, 0, 0, 0.8)), to(rgba(0, 0, 0, 0.5)));
  /* Safari 4+, Chrome */
  background-image: -webkit-linear-gradient(left, rgba(0, 0, 0, 0.8), rgba(0, 0, 0, 0.5));
  /* Chrome 10+, Safari 5.1+, iOS 5+ */
  background-image: -moz-linear-gradient(left, rgba(0, 0, 0, 0.8), rgba(0, 0, 0, 0.5));
  /* Firefox 3.6-15 */
  background-image: -o-linear-gradient(left, rgba(0, 0, 0, 0.8), rgba(0, 0, 0, 0.5));
  /* Opera 11.10-12.00 */
  background-image: linear-gradient(to right, rgba(0, 0, 0, 0.8), rgba(0, 0, 0, 0.5));
  /* Firefox 16+, IE10, Opera 12.50+ */
}
.swiper-container-3d .swiper-slide-shadow-top {
  background-image: -webkit-gradient(linear, left top, left bottom, from(rgba(0, 0, 0, 0.8)), to(rgba(0, 0, 0, 0)));
  /* Safari 4+, Chrome */
  background-image: -webkit-linear-gradient(bottom, rgba(0, 0, 0, 0.8), rgba(0, 0, 0, 0));
  /* Chrome 10+, Safari 5.1+, iOS 5+ */
  background-image: -moz-linear-gradient(bottom, rgba(0, 0, 0, 0.8), rgba(0, 0, 0, 0));
  /* Firefox 3.6-15 */
  background-image: -o-linear-gradient(bottom, rgba(0, 0, 0, 0.8), rgba(0, 0, 0, 0));
  /* Opera 11.10-12.00 */
  background-image: linear-gradient(to top, rgba(0, 0, 0, 0.8), rgba(0, 0, 0, 0));
  /* Firefox 16+, IE10, Opera 12.50+ */
}
.swiper-container-3d .swiper-slide-shadow-bottom {
  background-image: -webkit-gradient(linear, left bottom, left top, from(rgba(0, 0, 0, 0.5)), to(rgba(0, 0, 0, 0)));
  /* Safari 4+, Chrome */
  background-image: -webkit-linear-gradient(top, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
  /* Chrome 10+, Safari 5.1+, iOS 5+ */
  background-image: -moz-linear-gradient(top, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
  /* Firefox 3.6-15 */
  background-image: -o-linear-gradient(top, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
  /* Opera 11.10-12.00 */
  background-image: linear-gradient(to bottom, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
  /* Firefox 16+, IE10, Opera 12.50+ */
}
/* Coverflow */
.swiper-container-coverflow .swiper-wrapper {
  /* Windows 8 IE 10 fix */
  -ms-perspective: 1200px;
}
/* Fade */
.swiper-container-fade.swiper-container-free-mode .swiper-slide {
  -webkit-transition-timing-function: ease-out;
  -moz-transition-timing-function: ease-out;
  -ms-transition-timing-function: ease-out;
  -o-transition-timing-function: ease-out;
  transition-timing-function: ease-out;
}
.swiper-container-fade .swiper-slide {
  pointer-events: none;
}
.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;
}
/* Cube */
.swiper-container-cube {
  overflow: visible;
}
.swiper-container-cube .swiper-slide {
  pointer-events: none;
  visibility: hidden;
  -webkit-transform-origin: 0 0;
  -moz-transform-origin: 0 0;
  -ms-transform-origin: 0 0;
  transform-origin: 0 0;
  -webkit-backface-visibility: hidden;
  -moz-backface-visibility: hidden;
  -ms-backface-visibility: hidden;
  backface-visibility: hidden;
  width: 100%;
  height: 100%;
  z-index: 1;
}
.swiper-container-cube.swiper-container-rtl .swiper-slide {
  -webkit-transform-origin: 100% 0;
  -moz-transform-origin: 100% 0;
  -ms-transform-origin: 100% 0;
  transform-origin: 100% 0;
}
.swiper-container-cube .swiper-slide-active,
.swiper-container-cube .swiper-slide-next,
.swiper-container-cube .swiper-slide-prev,
.swiper-container-cube .swiper-slide-next + .swiper-slide {
  pointer-events: auto;
  visibility: visible;
}

.swiper-container-cube .swiper-slide-shadow-top,
.swiper-container-cube .swiper-slide-shadow-bottom,
.swiper-container-cube .swiper-slide-shadow-left,
.swiper-container-cube .swiper-slide-shadow-right {
  z-index: 0;
  -webkit-backface-visibility: hidden;
  -moz-backface-visibility: hidden;
  -ms-backface-visibility: hidden;
  backface-visibility: hidden;
}
.swiper-container-cube .swiper-cube-shadow {
  position: absolute;
  left: 0;
  bottom: 0px;
  width: 100%;
  height: 100%;
  background: #000;
  opacity: 0.6;
  -webkit-filter: blur(50px);
  filter: blur(50px);
  z-index: 0;
}
/* Scrollbar */
.swiper-scrollbar {
  border-radius: 10px;
  position: relative;
  -ms-touch-action: none;
  background: rgba(0, 0, 0, 0.1);
}
.swiper-container-horizontal > .swiper-scrollbar {
  position: absolute;
  left: 1%;
  bottom: 3px;
  z-index: 50;
  height: 5px;
  width: 98%;
}
.swiper-container-vertical > .swiper-scrollbar {
  position: absolute;
  right: 3px;
  top: 1%;
  z-index: 50;
  width: 5px;
  height: 98%;
}
.swiper-scrollbar-drag {
  height: 100%;
  width: 100%;
  position: relative;
  background: rgba(0, 0, 0, 0.5);
  border-radius: 10px;
  left: 0;
  top: 0;
}
.swiper-scrollbar-cursor-drag {
  cursor: move;
}
/* Preloader */
.swiper-lazy-preloader {
  width: 42px;
  height: 42px;
  position: absolute;
  left: 50%;
  top: 50%;
  margin-left: -21px;
  margin-top: -21px;
  z-index: 10;
  -webkit-transform-origin: 50%;
  -moz-transform-origin: 50%;
  transform-origin: 50%;
  -webkit-animation: swiper-preloader-spin 1s steps(12, end) infinite;
  -moz-animation: swiper-preloader-spin 1s steps(12, end) infinite;
  animation: swiper-preloader-spin 1s steps(12, end) infinite;
}
.swiper-lazy-preloader:after {
  display: block;
  content: "";
  width: 100%;
  height: 100%;
  background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg%20viewBox%3D'0%200%20120%20120'%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20xmlns%3Axlink%3D'http%3A%2F%2Fwww.w3.org%2F1999%2Fxlink'%3E%3Cdefs%3E%3Cline%20id%3D'l'%20x1%3D'60'%20x2%3D'60'%20y1%3D'7'%20y2%3D'27'%20stroke%3D'%236c6c6c'%20stroke-width%3D'11'%20stroke-linecap%3D'round'%2F%3E%3C%2Fdefs%3E%3Cg%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%20transform%3D'rotate(30%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%20transform%3D'rotate(60%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%20transform%3D'rotate(90%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%20transform%3D'rotate(120%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%20transform%3D'rotate(150%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.37'%20transform%3D'rotate(180%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.46'%20transform%3D'rotate(210%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.56'%20transform%3D'rotate(240%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.66'%20transform%3D'rotate(270%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.75'%20transform%3D'rotate(300%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.85'%20transform%3D'rotate(330%2060%2C60)'%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E");
  background-position: 50%;
  -webkit-background-size: 100%;
  background-size: 100%;
  background-repeat: no-repeat;
}
.swiper-lazy-preloader-white:after {
  background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg%20viewBox%3D'0%200%20120%20120'%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20xmlns%3Axlink%3D'http%3A%2F%2Fwww.w3.org%2F1999%2Fxlink'%3E%3Cdefs%3E%3Cline%20id%3D'l'%20x1%3D'60'%20x2%3D'60'%20y1%3D'7'%20y2%3D'27'%20stroke%3D'%23fff'%20stroke-width%3D'11'%20stroke-linecap%3D'round'%2F%3E%3C%2Fdefs%3E%3Cg%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%20transform%3D'rotate(30%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%20transform%3D'rotate(60%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%20transform%3D'rotate(90%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%20transform%3D'rotate(120%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%20transform%3D'rotate(150%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.37'%20transform%3D'rotate(180%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.46'%20transform%3D'rotate(210%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.56'%20transform%3D'rotate(240%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.66'%20transform%3D'rotate(270%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.75'%20transform%3D'rotate(300%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.85'%20transform%3D'rotate(330%2060%2C60)'%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E");
}
@-webkit-keyframes swiper-preloader-spin {
  100% {
    -webkit-transform: rotate(360deg);
  }
}
@keyframes swiper-preloader-spin {
  100% {
    transform: rotate(360deg);
  }
}

/* added opacity */
.swiper-slide-next { filter:alpha(opacity=70); -khtml-opacity:0.70; -moz-opacity:0.70; opacity:0.70; }
.swiper-slide-prev { filter:alpha(opacity=70); -khtml-opacity:0.70; -moz-opacity:0.70; opacity:0.70; }
