@import url(https://fonts.googleapis.com/css?family=Lato:100,300,400,700,900,100italic,300italic,400italic,700italic,900italic);@import url(https://fonts.googleapis.com/css?family=Merriweather:400,300,700,900,300italic,400italic,700italic,900italic);@import url(https://fonts.googleapis.com/css?family=La+Belle+Aurore);/*------------------------------------------------------------------
[Master Stylesheet]

Project:	    SPOT - Landing Page Template
Version:	    1.0
Last change:	28/04/2015
Author:         Mat Przegietka 
-------------------------------------------------------------------*/

/*------------------------------------------------------------------
[Table of contents]

1.  Helper Classes
2.  Preloader
3.  Icons
4.  Navigation
5.  Homepage Content
6.  Icon Box
7.  Intro
8.  Subsections
9.  Pricing Table
10. Team
11. Contact Form
12. Inputs
13. Buttons

-------------------------------------------------------------------*/

/*--------------------------------------*/

/* 1. Helper Classes -------------------*/

/*--------------------------------------*/







.align-center {
  text-align: center;
}

.aligh-left {
  text-align: left;
}

.align-right {
  text-align: right;
}

.float-left {
  float: left;
}

.img_responsive {
  max-width: 100%;
}

.img-circle {
  border-radius: 50%;
}

.img-rounded_corner {
  border-radius: 0.2rem;
}

/*--------------------------------------*/

/* 2. Preloader ------------------------*/

/*--------------------------------------*/

.preloader_header {
  position: fixed;
  top: 0;
  z-index: 100;
  min-height: 480px;
  width: 100%;
  height: 100%;
}

.preloader_loader {
  position: absolute;
  left: 0;
  width: 100%;
  opacity: 0;
  cursor: default;
  pointer-events: none;
}

.preloader_loader {
  bottom: 20%;
}

.preloader_header .preloader_inner {
  display: block;
  margin: 0 auto;
}

.preloader_header .preloader_loader svg path {
  fill: none;
  stroke-width: 6;
}

/* Animations */

/* Initial animation of header elements */

.loading .preloader_loader {
  opacity: 1;
  -webkit-animation: animInitialHeader 1s cubic-bezier(0.7, 0, 0.3, 1) both;
  animation: animInitialHeader 1s cubic-bezier(0.7, 0, 0.3, 1) both;
}

.loading .preloader_loader {
  -webkit-animation-delay: 0.2s;
  animation-delay: 0.2s;
}

@-webkit-keyframes animInitialHeader {
  from {
    opacity: 0;
    -webkit-transform: translate3d(0, 800px, 0);
  }
}

@keyframes animInitialHeader {
  from {
    opacity: 0;
    -webkit-transform: translate3d(0, 800px, 0);
    transform: translate3d(0, 800px, 0);
  }
}

/* Header elements when loading finishes */

.loaded .preloader_loader {
  opacity: 1;
}

.loaded .preloader_loader {
  -webkit-animation: animLoadedLoader 0.5s cubic-bezier(0.7, 0, 0.3, 1) forwards;
  animation: animLoadedLoader 0.5s cubic-bezier(0.7, 0, 0.3, 1) forwards;
}

@-webkit-keyframes animLoadedLoader {
  to {
    opacity: 0;
    -webkit-transform: translate3d(0, -100%, 0) scale3d(0.3, 0.3, 1);
  }
}

@keyframes animLoadedLoader {
  to {
    opacity: 0;
    -webkit-transform: translate3d(0, -100%, 0) scale3d(0.3, 0.3, 1);
    transform: translate3d(0, -100%, 0) scale3d(0.3, 0.3, 1);
  }
}

/* Header animation when loading finishes */

.loaded .preloader_header {
  -webkit-animation: animLoadedHeader 1s cubic-bezier(0.7, 0, 0.3, 1) forwards;
  animation: animLoadedHeader 1s cubic-bezier(0.7, 0, 0.3, 1) forwards;
}

@-webkit-keyframes animLoadedHeader {
  to {
    -webkit-transform: translate3d(0, -100%, 0);
  }
}

@keyframes animLoadedHeader {
  to {
    -webkit-transform: translate3d(0, -100%, 0);
    transform: translate3d(0, -100%, 0);
  }
}

/* Content animations */

.loaded .home_anim1,
.loaded .home_anim2,
.loaded .home_anim3,
.loaded .home_anim4,
.loaded .home_anim5,
.loaded .home_anim6,
.loaded .home_anim7,
.loaded .home_anim8,
.loaded .home_anim9,
.loaded .home_anim10 {
  animation: animLoadedContent 0.8s cubic-bezier(0.7, 0, 0.3, 1) both;
  -webkit-animation: animLoadedContent 0.8s cubic-bezier(0.7, 0, 0.3, 1) both;
}

.loaded .home_anim1 {
  animation-delay: 0.1s;
  -webkit-animation-delay: 0.1s;
}

.loaded .home_anim2 {
  animation-delay: 0.2s;
  -webkit-animation-delay: 0.2s;
}

.loaded .home_anim3 {
  animation-delay: 0.3s;
  -webkit-animation-delay: 0.3s;
}

.loaded .home_anim4 {
  animation-delay: 0.4s;
  -webkit-animation-delay: 0.4s;
}

.loaded .home_anim5 {
  animation-delay: 0.5s;
  -webkit-animation-delay: 0.5s;
}

.loaded .home_anim6 {
  animation-delay: 0.6s;
  -webkit-animation-delay: 0.6s;
}

.loaded .home_anim7 {
  animation-delay: 0.7s;
  -webkit-animation-delay: 0.7s;
}

.loaded .home_anim8 {
  animation-delay: 0.8s;
  -webkit-animation-delay: 0.8s;
}

.loaded .home_anim9 {
  animation-delay: 0.9s;
  -webkit-animation-delay: 0.9s;
}

.loaded .home_anim10 {
  animation-delay: 1s;
  -webkit-animation-delay: 1s;
}

@keyframes animLoadedContent {
  from {
    opacity: 0;
    -webkit-transform: translate3d(0, 50px, 0);
            transform: translate3d(0, 50px, 0);
  }
}

@-webkit-keyframes animLoadedContent {
  from {
    opacity: 0;
    -webkit-transform: translate3d(0, 50px, 0);
  }
}

/* Mockup animations */

.loaded .mockup-animation1,
.loaded .mockup-animation2 {
  animation: MockupAnimLoadedContent 0.7s cubic-bezier(0.5, 0.01, 0.51, 1) both;
  -webkit-animation: MockupAnimLoadedContent 0.7s cubic-bezier(0.5, 0.01, 0.51, 1) both;
}

.loaded .mockup-animation2 {
  animation-delay: 1s;
  -webkit-animation-delay: 1s;
}

.loaded .mockup-animation1 {
  animation-delay: 1.35s;
  -webkit-animation-delay: 1.35s;
}

@keyframes MockupAnimLoadedContent {
  from {
    opacity: 0;
    -webkit-transform: translate3d(0, 50px, 0);
            transform: translate3d(0, 50px, 0);
  }
}

@-webkit-keyframes MockupAnimLoadedContent {
  from {
    opacity: 0;
    -webkit-transform: translate3d(0, 50px, 0);
  }
}

.layout-switch .ip-header {
  position: absolute;
}

.header-none {
  display: none;
}

/*--------------------------------------*/

/* 3. Icons ----------------------------*/

/*--------------------------------------*/

.icon_big {
  font-size: 1.72rem;
  margin: 1rem;
}

.icon_normal {
  width: 2rem;
  font-size: 1.72rem;
}

.icon_small {
  margin: 1rem;
  font-size: 1.4rem;
  line-height: 1.2rem;
  opacity: 0.54;
  margin-right: 2rem;
  text-shadow: 1px 1px 1px rgba(0, 0, 0, 0.004);
}

.icon_list {
  margin-bottom: 1.72rem;
}

.icon_list li {
  vertical-align: middle;
  display: table;
}

.icon_list li div,
.icon_list li h6 {
  vertical-align: middle;
  display: table-cell;
}

/*-- Social Icons --*/

.social_icon {
  font-size: 1rem;
  line-height: 1rem;
  opacity: 0.5;
  -webkit-transition: all 0.3s ease-in-out;
  transition: all 0.3s ease-in-out;
}

.social_icon:hover {
  cursor: pointer;
  opacity: 1;
}

.social_icons ul,
.social_icons ul li {
  display: inline-block;
  list-style: none;
  padding: 0;
  height: 2rem;
}

.social_icons ul li {
  margin-right: 0.7rem;
  margin-left: 0.7rem;
}

.social_icons ul li:first-child {
  margin-left: 0;
}

.social_icons ul li:last-child {
  margin-right: 0;
}

.social_icons ul li {
  float: left;
}

.social_icons_container {
  position: relative;
  width: 100%;
  z-index: 10;
}

/*--------------------------------------*/

/* 4. Navigation -----------------------*/

/*--------------------------------------*/

.navigation_desktop ul {
  float: right;
  padding: 0;
  margin: 0;
}

.navigation_desktop ul li {
  float: left;
  padding: 0;
  height: auto;
  margin-left: 1rem;
  margin-right: 1rem;
}

.navigation_desktop ul li a {
  font-size: 0.857rem;
  line-height: 0.857rem;
  opacity: 0.5;
  -webkit-transition: all 0.3s ease;
  transition: all 0.3s ease;
}

.navigation_desktop a:hover {
  opacity: 1;
}

.navigation_desktop li a:focus,
.navigation_desktop a:hover {
  outline: none;
  text-decoration: none;
}

.navigation_desktop ul li:nth-last-child(2) .navigation_desktop ul li:last-child {
  margin-right: 0rem;
}

.top_bar {
  position: relative;
  z-index: 10;
}

/*-- menu_bar --*/

.menu_bar {
  height: 5.14rem;
  padding-top: 1.7rem;
  box-shadow: 0px 0px 3px 0px #323232;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  z-index: 1000;
  -webkit-transition: all 0.5s;
  transition: all 0.5s;
  -webkit-transform: translateY(-105%);
  transform: translateY(-105%);
}

.menu_bar-hide {
  height: 5.14rem;
  -webkit-transform: translateY(-105%);
  transform: translateY(-105%);
}

.menu_bar-show {
  height: 5.14rem;
  -webkit-transform: translateY(0%);
  transform: translateY(0%);
}

.menu_bar_navigation ul {
  float: right;
  padding: 0;
  margin: 0;
  line-height: 0;
}

.menu_bar_navigation ul li {
  float: left;
  padding: 0;
  height: auto;
  margin-left: 1rem;
  margin-right: 1rem;
}

.menu_bar_navigation ul li:nth-last-child(2),
.menu_bar_navigation ul li:last-child {
  margin-right: 0rem;
}

.menu_bar_navigation ul li a {
  text-transform: uppercase;
  letter-spacing: 0.1rem;
  font-weight: 900;
  font-size: 0.75rem;
  line-height: 1.72rem;
  opacity: 0.3;
  -webkit-transition: all 0.3s ease;
  transition: all 0.3s ease;
}

.menu_bar_navigation ul li a:hover {
  opacity: 1;
}

.menu_bar_navigation ul li.active a {
  opacity: 1;
}

.logo {
  float: left;
  line-height: 0;
  margin-top: 0.1rem;
}

/*-- Mobile Menu --*/

.cbp-spmenu {
  position: fixed;
  padding-top: 2rem;
  background-color: #424242;
  box-shadow: -1px 0px 7px 0px #323232;
}

.cbp-spmenu a {
  display: block;
  font-size: 1rem;
  line-height: 1.2rem;
  text-decoration: none;
  text-align: left;
  opacity: 0.5;
  text-transform: uppercase;
  letter-spacing: 0.1rem;
  font-weight: 900;
  -webkit-transition: all 0.15s ease-in-out;
  transition: all 0.15s ease-in-out;
}

.cbp-spmenu a:hover {
  opacity: 1;
}

.cbp-spmenu-vertical {
  width: 200px;
  height: 100%;
  top: 0;
  z-index: 1001;
}

.cbp-spmenu-vertical a {
  padding: 0.4rem;
  padding-left: 2rem;
}

.cbp-spmenu-right {
  right: -210px;
}

.cbp-spmenu-right.cbp-spmenu-open {
  right: 0px;
}

.cbp-spmenu,
.cbp-spmenu-push {
  -webkit-transition: all 0.3s ease;
  transition: all 0.3s ease;
}

/*-- Mobile Menu open & close buttons --*/

.mobile_menu_open_button {
  margin-top: 0.5rem;
}

.mobile_nav_close_button {
  position: absolute;
  z-index: 100;
  right: 2rem;
  top: 2rem;
  border: 0;
}

.mobile_nav_close_button a {
  border: 0;
  color: white;
  font-size: 2rem !important;
  line-height: 2rem;
  opacity: 0.5 !important;
  -webkit-transition: all 0.3s ease;
  transition: all 0.3s ease;
}

.mobile_nav_close_button a:hover {
  opacity: 1 !important;
  margin-left: 0rem !important;
}

.mobile_nav_open_button a {
  border: 0;
  color: white;
  font-size: 2rem !important;
  line-height: 2rem;
}

.mobile_nav_open_button {
  opacity: 0.5;
  -webkit-transition: all 0.3s ease;
  transition: all 0.3s ease;
}

.mobile_nav_open_button:hover {
  opacity: 1;
}

#mobile_menu_content {
  clear: both;
  box-shadow: none;
  -webkit-box-shadow: none;
}

/*--------------------------------------*/

/* 5. Homepage Content -----------------*/

/*--------------------------------------*/

html {
  overflow-x: hidden;
}

.logo_home {
  margin-bottom: 2rem;
}

.hero_fullscreen {
  padding-top: 3.428rem;
  padding-bottom: 7rem;
}

/*-- Main Content --*/

#main_content {
  overflow: hidden;
}

#main_content h2,
#main_content h6,
.cta_button_area {
  position: relative;
  z-index: 2;
}

.content_container {
  vertical-align: middle;
  z-index: 10;
}

.home_mockup {
  position: relative;
  display: block;
  text-align: center;
  float: right;
  display: none;
}

.home_mockup_image {
  position: absolute;
  right: 0%;
  top: -23rem;
  width: 100%;
}

/*-- CTA Area --*/

.cta_button_area {
  margin-top: 3.44rem;
  margin-bottom: 3rem;
}

.cta_button_area a {
  opacity: 0.5;
  -webkit-transition: all 0.3s ease-in-out;
  transition: all 0.3s ease-in-out;
}

.cta_button_area a:hover {
  opacity: 1;
}

/*-- Available Area --*/

.available_area {
  position: relative;
  z-index: 10;
}

.available_area h6,
.available_area ul {
  display: inline-block;
  opacity: 0.5;
}

.available_area ul li img {
  width: 1rem;
  margin: 0;
  margin-left: 0.3rem;
  margin-right: 0.3rem;
}

.available_area ul li {
  float: left;
  line-height: 0;
}

.available_area ul {
  margin: 0 0.2rem;
}

/*-- Backgrounds --*/

#maximage_slider {
  z-index: 0;
  opacity: 0.4;
  display: none;
}

#maximage_video {
  z-index: 0;
  opacity: 0.6;
  display: none;
}

.mobile_novideo {
  top: 0;
  left: 0;
  position: absolute;
  width: 100%;
  height: 100%;
}

#maximage_video {
  background: url("/img/landing/video.jpg") no-repeat 0 0;
  background-size: cover;
}

#maximage_single {
  z-index: 0;
  display: none;
}

video,
object {
  top: 0;
  left: 0;
  position: absolute;
  z-index: 1;
  opacity: 0.3;
}

/*-- Home Content Background Variants --*/

.hero_fullscreen.background_slider #maximage_slider {
  display: block;
}

.hero_fullscreen.background_video #maximage_video {
  display: block;
}

.hero_fullscreen.background_single #maximage_single {
  display: block;
}

.hero_fullscreen.background_slider .logo_home,
.hero_fullscreen.background_video .logo_home,
.hero_fullscreen.background_single .logo_home {
  margin-bottom: 12rem;
}

.hero_fullscreen.background_slider,
.hero_fullscreen.background_video,
.hero_fullscreen.background_single {
  padding-bottom: 12rem;
}

/*--------------------------------------*/

/* 6. IconBox --------------------------*/

/*--------------------------------------*/

.iconbox {
  overflow: auto;
  margin-bottom: 1rem;
}

.iconbox_icon {
  font-size: 2rem;
  line-height: 2rem;
  margin: 0 auto;
}

.iconbox_icon.icon_rounded {
  padding: 1rem;
  border-radius: 100%;
  width: 5rem;
  height: 5rem;
  font-size: 2rem;
  line-height: 3.8rem;
  margin: 2rem auto;
}

/*--------------------------------------*/

/* 7. Intro ----------------------------*/

/*--------------------------------------*/

.intro {
  padding-bottom: 1rem;
  padding-top: 1rem;
}

.intro h3 {
  margin-top: 0;
}

/*--------------------------------------*/

/* 8. Subsections ----------------------*/

/*--------------------------------------*/

.subsection {
  padding-top: 4rem;
  padding-bottom: 4rem;
  position: relative;
  z-index: 1;
}

/*-- review logos --*/

#reviews_logos.subsection {
  padding-top: 3rem;
  padding-bottom: 1rem;
}

#reviews_logos.subsection h6 {
  opacity: 0.5;
}

/*-- features --*/

.feature_box .feature_content {
  padding: 2rem;
  padding-top: 8rem;
}

.feature_content h6 {
  margin-bottom: 0.8rem;
}

.feature_image {
  margin-top: 5rem;
  padding-bottom: 3rem;
}

.feature_box_center .feature_content {
  padding: 1rem;
}

.feature_box_center_content_row {
  padding-top: 12rem;
}

/*-- about - video --*/

.about_video_player iframe {
  border: solid 0.8rem white;
}

.about_video_player {
  padding-top: 3rem;
  padding-bottom: 3rem;
}

/*-- screenshots gallery --*/

.screenshot {
  -webkit-transition: all 0.3s ease-in-out;
  transition: all 0.3s ease-in-out;
  margin-bottom: 1.5rem;
}

.screenshot:hover {
  opacity: 0.8;
}

.screenshots_gallery {
  margin-top: 2rem;
}

/*-- client reviews --*/

.single_review {
  margin-bottom: 2rem;
}

.single_review img {
  max-width: 4rem;
  height: 4rem;
  margin-top: 2rem;
  margin-bottom: 2rem;
}

.review_content {
  overflow: hidden;
}

.review_content p {
  padding-top: 2rem;
}

.reviews_logo img {
  width: 90%;
}

.review_content h4 {
  font-style: italic;
}

.review_top_ornament_line {
  margin-left: 0.5rem;
  margin-right: 0.5rem;
  width: 6rem;
  display: inline-block;
}

.review_top_ornament_quotemark {
  font-family: 'Times New Roman', Times, Baskerville, Georgia, serif;
  font-weight: bold;
  font-size: 5rem;
  display: inline-block;
  margin-bottom: 0.8rem;
}

.review_bottom_ornament_line {
  margin-left: 0rem;
  margin-right: 0rem;
  width: 4rem;
  display: inline-block;
}

.review_bottom_ornament_triangle {
  width: 0;
  height: 0;
  position: relative;
  display: inline-block;
  top: 9px;
  margin-left: -5px;
  margin-right: -5px;
}

.review_bottom_ornament_triangle:after {
  content: '';
  width: 0;
  height: 0;
  position: absolute;
  top: -10px;
  left: -9px;
}

/*-- footer --*/

#footer.subsection {
  padding-top: 2rem;
  padding-bottom: 0.9rem;
}

#footer small {
  font-weight: 300;
}

/*--------------------------------------*/

/* 9. Pricing Tables -------------------*/

/*--------------------------------------*/

.pricing_box {
  padding: 2rem;
  padding-bottom: 2.5rem;
  margin-top: 2rem;
  margin-bottom: 1rem;
}

.pricing_box .iconbox_icon {
  margin-bottom: 1rem;
}

.pricing_box_price h3,
.pricing_box_price h4 {
  display: inline-block;
  margin: 0;
}

.pricing_box_price {
  margin-top: 2rem;
  margin-bottom: 2rem;
  padding: 1rem;
}

.pricing_box_list li p {
  margin: 0;
  padding: 0;
}

.pricing_box_list li {
  padding-bottom: .5rem;
}

/*--------------------------------------*/

/* 10. Team -----------------------------*/

/*--------------------------------------*/

.team_member_info h4 {
  margin-bottom: 1rem;
}

.team_member_info {
  padding-bottom: 2rem;
  margin-bottom: 1rem;
}

/*--------------------------------------*/

/* 11. Contact Form --------------------*/

/*--------------------------------------*/

.contact_form .input-field {
  margin-bottom: 1.72rem;
}

.contact_form_container {
  padding-bottom: 2rem;
}

/*-- CONTACT FORM MESSAGE STYLING --*/

#message {
  display: none;
  position: fixed;
  z-index: 3000;
  width: 40rem;
  top: 50%;
  left: 50%;
  margin-top: -8.5rem;
  margin-left: -20rem;
  text-align: center;
}

#alert {
  display: table-cell;
  vertical-align: middle;
  padding-bottom: 2rem;
  padding-top: 2rem;
  padding-left: 2rem;
  padding-right: 2rem;
}

.alert_icon {
  font-size: 2rem;
  color: white;
}

.unordered li {
  margin: 0 !important;
}

.contact_icon {
  font-size: 2rem;
  margin-top: 4rem;
  margin-bottom: 1rem;
}

#message.warning {
  background: #F44336;
}

#message.success {
  background: #4CAF50;
}

/*--------------------------------------*/

/* 12. Inputs ---------------------------*/

/*--------------------------------------*/

.input-field {
  position: relative;
}

.input-field label {
  opacity: 0.7;
  position: absolute;
  top: 0.8rem;
  left: 0rem;
  font-size: 1rem;
  cursor: text;
  -webkit-transition: 0.2s ease-out;
  transition: 0.2s ease-out;
}

.input-field label.active {
  font-size: 0.8rem;
  opacity: 0.7;
  -webkit-transform: translateY(-130%);
  transform: translateY(-130%);
}

.input-field input[type=text].valid,
.input-field input[type=password].valid,
.input-field input[type=email].valid,
.input-field input[type=date].valid,
.input-field textarea.valid {
  border-bottom: 1px solid #4CAF50;
  box-shadow: 0 1px 0 0 #4CAF50;
}

.input-field input[type=text].invalid,
.input-field input[type=password].invalid,
.input-field input[type=email].invalid,
.input-field input[type=date].invalid,
.input-field textarea.invalid {
  border-bottom: 1px solid #F44336;
  box-shadow: 0 1px 0 0 #F44336;
}

.input-field .prefix {
  position: absolute;
  width: 2rem;
  top: 1rem;
  font-size: 1.72rem;
  -webkit-transition: color 0.2s;
  transition: color 0.2s;
}

.input-field .prefix ~ input,
.input-field .prefix ~ textarea {
  margin-left: 3rem;
  width: 92%;
  width: calc(100% - 3rem);
}

.input-field .prefix ~ textarea {
  padding-top: 0.8rem;
}

.input-field .prefix ~ label {
  margin-left: 3rem;
}

input[type=text],
input[type=password],
input[type=email],
input[type=date],
textarea {
  background-color: transparent;
  border: none;
  outline: none;
  height: 3rem;
  width: 100%;
  font-size: 1rem;
  margin: 0 0 15px 0;
  padding: 0;
  box-shadow: none;
  box-sizing: content-box;
  -webkit-transition: 0.3s;
  transition: 0.3s;
}

textarea {
  overflow-y: hidden;
  /* prevents scroll bar flash */
  padding: 1.6rem 0;
  /* prevents text jump on Enter keypress */
  resize: none;
}

.hiddendiv {
  display: none;
  white-space: pre-wrap;
  word-wrap: break-word;
  overflow-wrap: break-word;
  /* future version of deprecated 'word-wrap' */
  padding-top: 1.2rem;
  /* prevents text jump on Enter keypress */
}

/*--------------------------------------*/

/* 13. Buttons --------------------------*/

/*--------------------------------------*/

.btn,
.comment-form input[type="submit"],
.search-form .search-submit,
.btn-large,
.btn-flat {
  display: inline-block;
  font-weight: 900;
  height: 3.2rem;
  padding: 0 2.1rem;
  border-radius: 100px;
  line-height: 3.2rem;
  text-transform: uppercase;
  border: none;
  -webkit-tap-highlight-color: transparent;
}

.btn,
.comment-form input[type="submit"],
.search-form .search-submit,
.btn-large {
  text-decoration: none;
  color: #FFF;
  text-align: center;
  letter-spacing: 0.1rem;
  font-size: 0.92rem;
  -webkit-transition: 0.2s ease-out;
  transition: 0.2s ease-out;
  cursor: pointer;
}

.btn-flat {
  box-shadow: none;
  background-color: rgba(255, 255, 255, 0.1);
  color: white;
  cursor: pointer;
}

.btn-flat.disabled {
  color: white;
}

.btn-large {
  height: 54px;
  line-height: 56px;
}

.btn-large i {
  font-size: 1.6rem;
}

.store_button {
  display: inline-block;
  margin: 0 0.5rem;
  margin-bottom: 1rem;
}

.btn.btn_with_icon,
.comment-form input.btn_with_icon[type="submit"],
.search-form .btn_with_icon.search-submit {
  line-height: 2rem;
  padding: 0 1.5rem;
  padding-top: 0;
  padding-bottom: 0;
  padding-left: 0.8rem;
  padding-right: 1.5rem;
  text-align: left !important;
}

.btn.btn_with_icon img,
.comment-form input.btn_with_icon[type="submit"] img,
.search-form .btn_with_icon.search-submit img {
  height: 3.2rem;
  width: 3.2rem;
  line-height: 3.2rem;
  padding: 0.7rem;
  float: left;
}

.btn.btn_with_icon h6,
.comment-form input.btn_with_icon[type="submit"] h6,
.search-form .btn_with_icon.search-submit h6,
.btn.btn_with_icon span,
.comment-form input.btn_with_icon[type="submit"] span,
.search-form .btn_with_icon.search-submit span {
  margin: 0 !important;
  padding: 0 !important;
  line-height: 0;
}

.btn.btn_with_icon span,
.comment-form input.btn_with_icon[type="submit"] span,
.search-form .btn_with_icon.search-submit span {
  font-weight: 300;
  font-size: 0.6rem;
}

.btn.btn_with_icon .btn_content,
.comment-form input.btn_with_icon[type="submit"] .btn_content,
.search-form .btn_with_icon.search-submit .btn_content {
  display: inline-block;
}

.z-depth-1,
nav,
.card-panel,
.card,
.toast,
.btn-large,
.btn-floating,
.dropdown-content,
.collapsible,
ul.side-nav.full,
ul.side-nav.fixed,
.shadow {
  box-shadow: 0 2px 5px 0 rgba(0, 0, 0, 0.08), 0 2px 10px 0 rgba(0, 0, 0, 0.12);
}

.z-depth-1-half,
.btn-large:hover,
.btn-floating:hover,
.modal {
  box-shadow: 0 5px 11px 0 rgba(0, 0, 0, 0.18), 0 4px 15px 0 rgba(0, 0, 0, 0.15);
}

.z-depth-2,
.shadow:hover,
.about_video_player iframe {
  box-shadow: 0 8px 17px 0 rgba(0, 0, 0, 0.2), 0 6px 20px 0 rgba(0, 0, 0, 0.19);
}

.z-depth-3 {
  box-shadow: 0 12px 15px 0 rgba(0, 0, 0, 0.24), 0 17px 50px 0 rgba(0, 0, 0, 0.19);
}

.z-depth-4 {
  box-shadow: 0 16px 28px 0 rgba(0, 0, 0, 0.22), 0 25px 55px 0 rgba(0, 0, 0, 0.21);
}

.z-depth-5 {
  box-shadow: 0 27px 24px 0 rgba(0, 0, 0, 0.2), 0 40px 77px 0 rgba(0, 0, 0, 0.22);
}

/* Remove Focus Boxes */

select:focus {
  outline: 1px solid #f8c1c3;
}

button:focus {
  outline: none;
}

label {
  font-size: 0.8rem;
  color: #9e9e9e;
}

/*------------------------------------------------------------------
[Stylesheet]
Color Scheme - Light
-------------------------------------------------------------------*/

.hero_fullscreen,
nav a,
#message,
.cta_button_area a {
  color: white;
}

.hero_fullscreen {
  background-color: #212121;
}

.preloader_header,
.nivo-lightbox-theme-default.nivo-lightbox-overlay {
  background-color: #fafafa;
}

.preloader_header .preloader_loader svg path.preloader_loader_circlebg {
  stroke: rgba(0, 0, 0, 0.1);
}

.preloader_header .preloader_loader svg path.preloader_loader_circle {
  -webkit-transition: stroke-dashoffset 0.2s;
  transition: stroke-dashoffset 0.2s;
  stroke: rgba(0, 0, 0, 0.3);
}

.contact_form .input-field label,
.menu_bar_navigation ul li a {
  color: black;
}

.contact_form input[type=text],
.contact_form input[type=password],
.contact_form input[type=email],
.contact_form input[type=date],
.contact_form textarea {
  border-bottom: 1px solid rgba(0, 0, 0, 0.4);
}

.input-field label {
  color: white;
}

.menu_bar {
  background-color: white;
}

.logo_dark {
  display: block;
}

.logo_light {
  display: none;
}

.iconbox_icon {
  color: black;
}

.iconbox_icon.icon_rounded,
.pricing_box {
  border: solid 1px rgba(0, 0, 0, 0.1);
}

.pricing_box_price {
  border-top: solid 1px rgba(0, 0, 0, 0.1);
  border-bottom: solid 1px rgba(0, 0, 0, 0.1);
}

.feature_box,
.team_member_info {
  border-bottom: solid 1px rgba(0, 0, 0, 0.1);
}

.nivo-lightbox-theme-default .nivo-lightbox-close,
.nivo-lightbox-theme-default .nivo-lightbox-nav {
  color: black;
}

#reviews .owl-theme .owl-controls .owl-page span {
  border-color: black !important;
  background: transparent;
}

#reviews .owl-theme .owl-controls .owl-page.active span,
#reviews .owl-theme .owl-controls.clickable .owl-page:hover span {
  background: black;
  border-color: black !important;
}

.background_color1 {
  background: white;
}

.background_color2 {
  background: #fafafa;
}

.review_top_ornament_line {
  border-top: solid 1px rgba(0, 0, 0, 0.1);
}

.review_top_ornament_quotemark {
  color: rgba(0, 0, 0, 0.1);
}

.review_bottom_ornament_line {
  border-top: solid 1px rgba(0, 0, 0, 0.1);
}

.review_bottom_ornament_triangle {
  border-left: 10px solid transparent;
  border-right: 10px solid transparent;
  border-top: 10px solid rgba(0, 0, 0, 0.16);
}

#reviews.background_color1 .review_bottom_ornament_triangle:after {
  border-left: 9px solid transparent;
  border-right: 9px solid transparent;
  border-top: 9px solid white;
}

#reviews.background_color2 .review_bottom_ornament_triangle:after {
  border-left: 9px solid transparent;
  border-right: 9px solid transparent;
  border-top: 9px solid #fafafa;
}

/*------------------------------------------------------------------
[Stylesheet]
Color Palette - Cyan

name           |  normal   |  hover 

Red            - #e53935    #f44336
Pink           - $brand-accent    #e91e63
Purple         - #8e24aa    #9c27b0
Deep Purple    - #5e35b1    #673ab7
Indigo         - #3949ab    #3f51b5
Blue           - #1e88e5    #2196f3
Light Blue     - #039be5    #03a9f4
Cyan           - #00acc1    #00bcd4
Teal           - #00897b    #009688
Green          - #43a047    #4caf50
Light Green    - #7cb342    #8bc34a    
Lime           - #c0ca33    #cddc39
Yellow         - #ffd600    #ffea00 
Amber          - #ffb300    #ffc107
Orange         - #fb8c00    #ff9800
Brown          - #6d4c41    #795548
Gray           - #757575    #9e9e9e
Blue-gray      - #546e7a    #607d8b

-------------------------------------------------------------------*/

.btn,
.comment-form input[type="submit"],
.search-form .search-submit,
.btn-large {
  background-color: #3D5AFE;
}

.btn:hover,
.comment-form input[type="submit"]:hover,
.search-form .search-submit:hover,
.btn-large:hover {
  background-color: #e91e63;
}

input[type=text]:focus,
input[type=password]:focus,
input[type=email]:focus,
input[type=date]:focus,
textarea:focus {
  border-bottom: 1px solid #3D5AFE;
  box-shadow: 0 1px 0 0 #3D5AFE;
}

.hero_fullscreen.gradient_overlay {
  /* IE10 Consumer Preview */
  /* Mozilla Firefox */
  /* Opera */
  /* Webkit (Safari/Chrome 10) */
  background-image: -webkit-gradient(linear, left top, right bottom, color-stop(0, #009688), color-stop(1, #01579B));
  /* Webkit (Chrome 11+) */
  background-image: -webkit-linear-gradient(top left, #009688 0%, #01579B 100%);
}

.hero_fullscreen.background_solid.solid_01 {
  background: url("/img/landing/home_backgrounds/home_bg_01_cyan.jpg");
  background-position: 50% 99.9%;
  background-size: 100% auto;
}

.hero_fullscreen.background_solid.solid_02 {
  background: url("/img/landing/home_backgrounds/home_bg_02_cyan.jpg");
  background-position: 50% 99.9%;
  background-size: 100% auto;
}

a,
.menu_bar_navigation ul li a:hover,
.menu_bar_navigation ul li.active a,
.cbp-spmenu a:hover {
  color: #00bcd4;
}

.background_color3 {
  background: #00bcd4;
  color: white;
}

.pricing_box.pricing_box_featured {
  border: solid 2px #00bcd4;
}

/*------------------------------------------------------------------
[Stylesheet]
Responsiveness Fixes
-------------------------------------------------------------------*/

@media (max-width: 337px) {
  .navigation_desktop ul {
    margin-top: -2rem;
  }
}

@media (max-width: 479px) {
  #main_content {
    text-align: center !important;
    margin-right: 15px;
  }

  .input-field .prefix {
    display: none;
  }

  .input-field .prefix ~ input {
    margin-left: 0;
    width: 100%;
  }

  .input-field .prefix ~ label {
    margin-left: 0;
  }

  .container {
    padding-left: 0;
    padding-right: 0;
  }

  #message h4 {
    font-size: 1.2rem;
    line-height: 2.06rem;
  }

  #message {
    width: 100%;
    margin: 0;
    max-height: 100%;
    margin-left: -50%;
    margin-top: -50%;
  }

  .navigation_desktop ul li,
  .menu_bar_navigation ul li {
    float: right;
  }

  .feature_box_center_content_row {
    padding-top: 2rem;
  }

  .feature_box,
  .feature_box_center {
    padding-top: 0rem;
  }

  .feature_box .feature_content {
    padding-top: 2rem;
    padding-bottom: 0;
  }

  .feature_image {
    margin-top: 3rem;
    padding-bottom: 3rem;
  }
}

@media (min-width: 480px) and (max-width: 767px) {
  #main_content {
    text-align: center !important;
  }

  .social_icons_container {
    text-align: center !important;
  }

  #message h4 {
    font-size: 1.2rem;
    line-height: 2.06rem;
  }

  #message {
    width: 100%;
    margin: 0;
    max-height: 100%;
    margin-left: -50%;
    margin-top: -50%;
  }

  .navigation_desktop ul li,
  .menu_bar_navigation ul li {
    float: right;
  }

  .feature_box_center_content_row {
    padding-top: 2rem;
  }

  .feature_box,
  .feature_box_center {
    padding-top: 0rem;
  }

  .feature_box .feature_content {
    padding-top: 2rem;
    padding-bottom: 0;
  }

  .feature_image {
    margin-top: 2rem;
    padding-bottom: 3rem;
  }
}

@media (min-width: 768px) and (max-width: 991px) {
  .navigation_desktop ul li,
  .menu_bar_navigation ul li {
    float: right;
  }

  .feature_box_center_content_row {
    padding-top: 2rem;
  }

  .feature_box,
  .feature_box_center {
    padding-top: 0rem;
  }

  .feature_box .feature_content {
    padding-top: 2rem;
    padding-bottom: 0;
  }

  .feature_image {
    margin-top: 2rem;
    padding-bottom: 3rem;
  }
}

/*!
Animate.css - http://daneden.me/animate
Licensed under the MIT license - http://opensource.org/licenses/MIT

Copyright (c) 2014 Daniel Eden
*/

.animated {
  -webkit-animation-duration: 0.7s;
  animation-duration: 0.7s;
  -webkit-animation-fill-mode: both;
  animation-fill-mode: both;
}

.animated.infinite {
  -webkit-animation-iteration-count: infinite;
  animation-iteration-count: infinite;
}

.animated.hinge {
  -webkit-animation-duration: 2s;
  animation-duration: 2s;
}

@-webkit-keyframes bounce {
  0%, 20%, 53%, 80%, 100% {
    -webkit-transition-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
    transition-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }

  40%, 43% {
    -webkit-transition-timing-function: cubic-bezier(0.755, 0.05, 0.855, 0.06);
    transition-timing-function: cubic-bezier(0.755, 0.05, 0.855, 0.06);
    -webkit-transform: translate3d(0, -30px, 0);
    transform: translate3d(0, -30px, 0);
  }

  70% {
    -webkit-transition-timing-function: cubic-bezier(0.755, 0.05, 0.855, 0.06);
    transition-timing-function: cubic-bezier(0.755, 0.05, 0.855, 0.06);
    -webkit-transform: translate3d(0, -15px, 0);
    transform: translate3d(0, -15px, 0);
  }

  90% {
    -webkit-transform: translate3d(0, -4px, 0);
    transform: translate3d(0, -4px, 0);
  }
}

@keyframes bounce {
  0%, 20%, 53%, 80%, 100% {
    -webkit-transition-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
    transition-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }

  40%, 43% {
    -webkit-transition-timing-function: cubic-bezier(0.755, 0.05, 0.855, 0.06);
    transition-timing-function: cubic-bezier(0.755, 0.05, 0.855, 0.06);
    -webkit-transform: translate3d(0, -30px, 0);
    transform: translate3d(0, -30px, 0);
  }

  70% {
    -webkit-transition-timing-function: cubic-bezier(0.755, 0.05, 0.855, 0.06);
    transition-timing-function: cubic-bezier(0.755, 0.05, 0.855, 0.06);
    -webkit-transform: translate3d(0, -15px, 0);
    transform: translate3d(0, -15px, 0);
  }

  90% {
    -webkit-transform: translate3d(0, -4px, 0);
    transform: translate3d(0, -4px, 0);
  }
}

.bounce {
  -webkit-animation-name: bounce;
  animation-name: bounce;
  -webkit-transform-origin: center bottom;
  transform-origin: center bottom;
}

@-webkit-keyframes flash {
  0%, 50%, 100% {
    opacity: 1;
  }

  25%, 75% {
    opacity: 0;
  }
}

@keyframes flash {
  0%, 50%, 100% {
    opacity: 1;
  }

  25%, 75% {
    opacity: 0;
  }
}

.flash {
  -webkit-animation-name: flash;
  animation-name: flash;
}

/* originally authored by Nick Pettit - https://github.com/nickpettit/glide */

@-webkit-keyframes pulse {
  0% {
    -webkit-transform: scale3d(1, 1, 1);
    transform: scale3d(1, 1, 1);
  }

  50% {
    -webkit-transform: scale3d(1.05, 1.05, 1.05);
    transform: scale3d(1.05, 1.05, 1.05);
  }

  100% {
    -webkit-transform: scale3d(1, 1, 1);
    transform: scale3d(1, 1, 1);
  }
}

@keyframes pulse {
  0% {
    -webkit-transform: scale3d(1, 1, 1);
    transform: scale3d(1, 1, 1);
  }

  50% {
    -webkit-transform: scale3d(1.05, 1.05, 1.05);
    transform: scale3d(1.05, 1.05, 1.05);
  }

  100% {
    -webkit-transform: scale3d(1, 1, 1);
    transform: scale3d(1, 1, 1);
  }
}

.pulse {
  -webkit-animation-name: pulse;
  animation-name: pulse;
}

@-webkit-keyframes rubberBand {
  0% {
    -webkit-transform: scale3d(1, 1, 1);
    transform: scale3d(1, 1, 1);
  }

  30% {
    -webkit-transform: scale3d(1.25, 0.75, 1);
    transform: scale3d(1.25, 0.75, 1);
  }

  40% {
    -webkit-transform: scale3d(0.75, 1.25, 1);
    transform: scale3d(0.75, 1.25, 1);
  }

  50% {
    -webkit-transform: scale3d(1.15, 0.85, 1);
    transform: scale3d(1.15, 0.85, 1);
  }

  65% {
    -webkit-transform: scale3d(0.95, 1.05, 1);
    transform: scale3d(0.95, 1.05, 1);
  }

  75% {
    -webkit-transform: scale3d(1.05, 0.95, 1);
    transform: scale3d(1.05, 0.95, 1);
  }

  100% {
    -webkit-transform: scale3d(1, 1, 1);
    transform: scale3d(1, 1, 1);
  }
}

@keyframes rubberBand {
  0% {
    -webkit-transform: scale3d(1, 1, 1);
    transform: scale3d(1, 1, 1);
  }

  30% {
    -webkit-transform: scale3d(1.25, 0.75, 1);
    transform: scale3d(1.25, 0.75, 1);
  }

  40% {
    -webkit-transform: scale3d(0.75, 1.25, 1);
    transform: scale3d(0.75, 1.25, 1);
  }

  50% {
    -webkit-transform: scale3d(1.15, 0.85, 1);
    transform: scale3d(1.15, 0.85, 1);
  }

  65% {
    -webkit-transform: scale3d(0.95, 1.05, 1);
    transform: scale3d(0.95, 1.05, 1);
  }

  75% {
    -webkit-transform: scale3d(1.05, 0.95, 1);
    transform: scale3d(1.05, 0.95, 1);
  }

  100% {
    -webkit-transform: scale3d(1, 1, 1);
    transform: scale3d(1, 1, 1);
  }
}

.rubberBand {
  -webkit-animation-name: rubberBand;
  animation-name: rubberBand;
}

@-webkit-keyframes shake {
  0%, 100% {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }

  10%, 30%, 50%, 70%, 90% {
    -webkit-transform: translate3d(-10px, 0, 0);
    transform: translate3d(-10px, 0, 0);
  }

  20%, 40%, 60%, 80% {
    -webkit-transform: translate3d(10px, 0, 0);
    transform: translate3d(10px, 0, 0);
  }
}

@keyframes shake {
  0%, 100% {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }

  10%, 30%, 50%, 70%, 90% {
    -webkit-transform: translate3d(-10px, 0, 0);
    transform: translate3d(-10px, 0, 0);
  }

  20%, 40%, 60%, 80% {
    -webkit-transform: translate3d(10px, 0, 0);
    transform: translate3d(10px, 0, 0);
  }
}

.shake {
  -webkit-animation-name: shake;
  animation-name: shake;
}

@-webkit-keyframes swing {
  20% {
    -webkit-transform: rotate3d(0, 0, 1, 15deg);
    transform: rotate3d(0, 0, 1, 15deg);
  }

  40% {
    -webkit-transform: rotate3d(0, 0, 1, -10deg);
    transform: rotate3d(0, 0, 1, -10deg);
  }

  60% {
    -webkit-transform: rotate3d(0, 0, 1, 5deg);
    transform: rotate3d(0, 0, 1, 5deg);
  }

  80% {
    -webkit-transform: rotate3d(0, 0, 1, -5deg);
    transform: rotate3d(0, 0, 1, -5deg);
  }

  100% {
    -webkit-transform: rotate3d(0, 0, 1, 0deg);
    transform: rotate3d(0, 0, 1, 0deg);
  }
}

@keyframes swing {
  20% {
    -webkit-transform: rotate3d(0, 0, 1, 15deg);
    transform: rotate3d(0, 0, 1, 15deg);
  }

  40% {
    -webkit-transform: rotate3d(0, 0, 1, -10deg);
    transform: rotate3d(0, 0, 1, -10deg);
  }

  60% {
    -webkit-transform: rotate3d(0, 0, 1, 5deg);
    transform: rotate3d(0, 0, 1, 5deg);
  }

  80% {
    -webkit-transform: rotate3d(0, 0, 1, -5deg);
    transform: rotate3d(0, 0, 1, -5deg);
  }

  100% {
    -webkit-transform: rotate3d(0, 0, 1, 0deg);
    transform: rotate3d(0, 0, 1, 0deg);
  }
}

.swing {
  -webkit-transform-origin: top center;
  transform-origin: top center;
  -webkit-animation-name: swing;
  animation-name: swing;
}

@-webkit-keyframes tada {
  0% {
    -webkit-transform: scale3d(1, 1, 1);
    transform: scale3d(1, 1, 1);
  }

  10%, 20% {
    -webkit-transform: scale3d(0.9, 0.9, 0.9) rotate3d(0, 0, 1, -3deg);
    transform: scale3d(0.9, 0.9, 0.9) rotate3d(0, 0, 1, -3deg);
  }

  30%, 50%, 70%, 90% {
    -webkit-transform: scale3d(1.1, 1.1, 1.1) rotate3d(0, 0, 1, 3deg);
    transform: scale3d(1.1, 1.1, 1.1) rotate3d(0, 0, 1, 3deg);
  }

  40%, 60%, 80% {
    -webkit-transform: scale3d(1.1, 1.1, 1.1) rotate3d(0, 0, 1, -3deg);
    transform: scale3d(1.1, 1.1, 1.1) rotate3d(0, 0, 1, -3deg);
  }

  100% {
    -webkit-transform: scale3d(1, 1, 1);
    transform: scale3d(1, 1, 1);
  }
}

@keyframes tada {
  0% {
    -webkit-transform: scale3d(1, 1, 1);
    transform: scale3d(1, 1, 1);
  }

  10%, 20% {
    -webkit-transform: scale3d(0.9, 0.9, 0.9) rotate3d(0, 0, 1, -3deg);
    transform: scale3d(0.9, 0.9, 0.9) rotate3d(0, 0, 1, -3deg);
  }

  30%, 50%, 70%, 90% {
    -webkit-transform: scale3d(1.1, 1.1, 1.1) rotate3d(0, 0, 1, 3deg);
    transform: scale3d(1.1, 1.1, 1.1) rotate3d(0, 0, 1, 3deg);
  }

  40%, 60%, 80% {
    -webkit-transform: scale3d(1.1, 1.1, 1.1) rotate3d(0, 0, 1, -3deg);
    transform: scale3d(1.1, 1.1, 1.1) rotate3d(0, 0, 1, -3deg);
  }

  100% {
    -webkit-transform: scale3d(1, 1, 1);
    transform: scale3d(1, 1, 1);
  }
}

.tada {
  -webkit-animation-name: tada;
  animation-name: tada;
}

/* originally authored by Nick Pettit - https://github.com/nickpettit/glide */

@-webkit-keyframes wobble {
  0% {
    -webkit-transform: none;
    transform: none;
  }

  15% {
    -webkit-transform: translate3d(-25%, 0, 0) rotate3d(0, 0, 1, -5deg);
    transform: translate3d(-25%, 0, 0) rotate3d(0, 0, 1, -5deg);
  }

  30% {
    -webkit-transform: translate3d(20%, 0, 0) rotate3d(0, 0, 1, 3deg);
    transform: translate3d(20%, 0, 0) rotate3d(0, 0, 1, 3deg);
  }

  45% {
    -webkit-transform: translate3d(-15%, 0, 0) rotate3d(0, 0, 1, -3deg);
    transform: translate3d(-15%, 0, 0) rotate3d(0, 0, 1, -3deg);
  }

  60% {
    -webkit-transform: translate3d(10%, 0, 0) rotate3d(0, 0, 1, 2deg);
    transform: translate3d(10%, 0, 0) rotate3d(0, 0, 1, 2deg);
  }

  75% {
    -webkit-transform: translate3d(-5%, 0, 0) rotate3d(0, 0, 1, -1deg);
    transform: translate3d(-5%, 0, 0) rotate3d(0, 0, 1, -1deg);
  }

  100% {
    -webkit-transform: none;
    transform: none;
  }
}

@keyframes wobble {
  0% {
    -webkit-transform: none;
    transform: none;
  }

  15% {
    -webkit-transform: translate3d(-25%, 0, 0) rotate3d(0, 0, 1, -5deg);
    transform: translate3d(-25%, 0, 0) rotate3d(0, 0, 1, -5deg);
  }

  30% {
    -webkit-transform: translate3d(20%, 0, 0) rotate3d(0, 0, 1, 3deg);
    transform: translate3d(20%, 0, 0) rotate3d(0, 0, 1, 3deg);
  }

  45% {
    -webkit-transform: translate3d(-15%, 0, 0) rotate3d(0, 0, 1, -3deg);
    transform: translate3d(-15%, 0, 0) rotate3d(0, 0, 1, -3deg);
  }

  60% {
    -webkit-transform: translate3d(10%, 0, 0) rotate3d(0, 0, 1, 2deg);
    transform: translate3d(10%, 0, 0) rotate3d(0, 0, 1, 2deg);
  }

  75% {
    -webkit-transform: translate3d(-5%, 0, 0) rotate3d(0, 0, 1, -1deg);
    transform: translate3d(-5%, 0, 0) rotate3d(0, 0, 1, -1deg);
  }

  100% {
    -webkit-transform: none;
    transform: none;
  }
}

.wobble {
  -webkit-animation-name: wobble;
  animation-name: wobble;
}

@-webkit-keyframes bounceIn {
  0%, 20%, 40%, 60%, 80%, 100% {
    -webkit-transition-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
    transition-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
  }

  0% {
    opacity: 0;
    -webkit-transform: scale3d(0.3, 0.3, 0.3);
    transform: scale3d(0.3, 0.3, 0.3);
  }

  20% {
    -webkit-transform: scale3d(1.1, 1.1, 1.1);
    transform: scale3d(1.1, 1.1, 1.1);
  }

  40% {
    -webkit-transform: scale3d(0.9, 0.9, 0.9);
    transform: scale3d(0.9, 0.9, 0.9);
  }

  60% {
    opacity: 1;
    -webkit-transform: scale3d(1.03, 1.03, 1.03);
    transform: scale3d(1.03, 1.03, 1.03);
  }

  80% {
    -webkit-transform: scale3d(0.97, 0.97, 0.97);
    transform: scale3d(0.97, 0.97, 0.97);
  }

  100% {
    opacity: 1;
    -webkit-transform: scale3d(1, 1, 1);
    transform: scale3d(1, 1, 1);
  }
}

@keyframes bounceIn {
  0%, 20%, 40%, 60%, 80%, 100% {
    -webkit-transition-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
    transition-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
  }

  0% {
    opacity: 0;
    -webkit-transform: scale3d(0.3, 0.3, 0.3);
    transform: scale3d(0.3, 0.3, 0.3);
  }

  20% {
    -webkit-transform: scale3d(1.1, 1.1, 1.1);
    transform: scale3d(1.1, 1.1, 1.1);
  }

  40% {
    -webkit-transform: scale3d(0.9, 0.9, 0.9);
    transform: scale3d(0.9, 0.9, 0.9);
  }

  60% {
    opacity: 1;
    -webkit-transform: scale3d(1.03, 1.03, 1.03);
    transform: scale3d(1.03, 1.03, 1.03);
  }

  80% {
    -webkit-transform: scale3d(0.97, 0.97, 0.97);
    transform: scale3d(0.97, 0.97, 0.97);
  }

  100% {
    opacity: 1;
    -webkit-transform: scale3d(1, 1, 1);
    transform: scale3d(1, 1, 1);
  }
}

.bounceIn {
  -webkit-animation-name: bounceIn;
  animation-name: bounceIn;
  -webkit-animation-duration: .75s;
  animation-duration: .75s;
}

@-webkit-keyframes bounceInDown {
  0%, 60%, 75%, 90%, 100% {
    -webkit-transition-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
    transition-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
  }

  0% {
    opacity: 0;
    -webkit-transform: translate3d(0, -3000px, 0);
    transform: translate3d(0, -3000px, 0);
  }

  60% {
    opacity: 1;
    -webkit-transform: translate3d(0, 25px, 0);
    transform: translate3d(0, 25px, 0);
  }

  75% {
    -webkit-transform: translate3d(0, -10px, 0);
    transform: translate3d(0, -10px, 0);
  }

  90% {
    -webkit-transform: translate3d(0, 5px, 0);
    transform: translate3d(0, 5px, 0);
  }

  100% {
    -webkit-transform: none;
    transform: none;
  }
}

@keyframes bounceInDown {
  0%, 60%, 75%, 90%, 100% {
    -webkit-transition-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
    transition-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
  }

  0% {
    opacity: 0;
    -webkit-transform: translate3d(0, -3000px, 0);
    transform: translate3d(0, -3000px, 0);
  }

  60% {
    opacity: 1;
    -webkit-transform: translate3d(0, 25px, 0);
    transform: translate3d(0, 25px, 0);
  }

  75% {
    -webkit-transform: translate3d(0, -10px, 0);
    transform: translate3d(0, -10px, 0);
  }

  90% {
    -webkit-transform: translate3d(0, 5px, 0);
    transform: translate3d(0, 5px, 0);
  }

  100% {
    -webkit-transform: none;
    transform: none;
  }
}

.bounceInDown {
  -webkit-animation-name: bounceInDown;
  animation-name: bounceInDown;
}

@-webkit-keyframes bounceInLeft {
  0%, 60%, 75%, 90%, 100% {
    -webkit-transition-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
    transition-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
  }

  0% {
    opacity: 0;
    -webkit-transform: translate3d(-3000px, 0, 0);
    transform: translate3d(-3000px, 0, 0);
  }

  60% {
    opacity: 1;
    -webkit-transform: translate3d(25px, 0, 0);
    transform: translate3d(25px, 0, 0);
  }

  75% {
    -webkit-transform: translate3d(-10px, 0, 0);
    transform: translate3d(-10px, 0, 0);
  }

  90% {
    -webkit-transform: translate3d(5px, 0, 0);
    transform: translate3d(5px, 0, 0);
  }

  100% {
    -webkit-transform: none;
    transform: none;
  }
}

@keyframes bounceInLeft {
  0%, 60%, 75%, 90%, 100% {
    -webkit-transition-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
    transition-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
  }

  0% {
    opacity: 0;
    -webkit-transform: translate3d(-3000px, 0, 0);
    transform: translate3d(-3000px, 0, 0);
  }

  60% {
    opacity: 1;
    -webkit-transform: translate3d(25px, 0, 0);
    transform: translate3d(25px, 0, 0);
  }

  75% {
    -webkit-transform: translate3d(-10px, 0, 0);
    transform: translate3d(-10px, 0, 0);
  }

  90% {
    -webkit-transform: translate3d(5px, 0, 0);
    transform: translate3d(5px, 0, 0);
  }

  100% {
    -webkit-transform: none;
    transform: none;
  }
}

.bounceInLeft {
  -webkit-animation-name: bounceInLeft;
  animation-name: bounceInLeft;
}

@-webkit-keyframes bounceInRight {
  0%, 60%, 75%, 90%, 100% {
    -webkit-transition-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
    transition-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
  }

  0% {
    opacity: 0;
    -webkit-transform: translate3d(3000px, 0, 0);
    transform: translate3d(3000px, 0, 0);
  }

  60% {
    opacity: 1;
    -webkit-transform: translate3d(-25px, 0, 0);
    transform: translate3d(-25px, 0, 0);
  }

  75% {
    -webkit-transform: translate3d(10px, 0, 0);
    transform: translate3d(10px, 0, 0);
  }

  90% {
    -webkit-transform: translate3d(-5px, 0, 0);
    transform: translate3d(-5px, 0, 0);
  }

  100% {
    -webkit-transform: none;
    transform: none;
  }
}

@keyframes bounceInRight {
  0%, 60%, 75%, 90%, 100% {
    -webkit-transition-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
    transition-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
  }

  0% {
    opacity: 0;
    -webkit-transform: translate3d(3000px, 0, 0);
    transform: translate3d(3000px, 0, 0);
  }

  60% {
    opacity: 1;
    -webkit-transform: translate3d(-25px, 0, 0);
    transform: translate3d(-25px, 0, 0);
  }

  75% {
    -webkit-transform: translate3d(10px, 0, 0);
    transform: translate3d(10px, 0, 0);
  }

  90% {
    -webkit-transform: translate3d(-5px, 0, 0);
    transform: translate3d(-5px, 0, 0);
  }

  100% {
    -webkit-transform: none;
    transform: none;
  }
}

.bounceInRight {
  -webkit-animation-name: bounceInRight;
  animation-name: bounceInRight;
}

@-webkit-keyframes bounceInUp {
  0%, 60%, 75%, 90%, 100% {
    -webkit-transition-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
    transition-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
  }

  0% {
    opacity: 0;
    -webkit-transform: translate3d(0, 3000px, 0);
    transform: translate3d(0, 3000px, 0);
  }

  60% {
    opacity: 1;
    -webkit-transform: translate3d(0, -20px, 0);
    transform: translate3d(0, -20px, 0);
  }

  75% {
    -webkit-transform: translate3d(0, 10px, 0);
    transform: translate3d(0, 10px, 0);
  }

  90% {
    -webkit-transform: translate3d(0, -5px, 0);
    transform: translate3d(0, -5px, 0);
  }

  100% {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}

@keyframes bounceInUp {
  0%, 60%, 75%, 90%, 100% {
    -webkit-transition-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
    transition-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
  }

  0% {
    opacity: 0;
    -webkit-transform: translate3d(0, 3000px, 0);
    transform: translate3d(0, 3000px, 0);
  }

  60% {
    opacity: 1;
    -webkit-transform: translate3d(0, -20px, 0);
    transform: translate3d(0, -20px, 0);
  }

  75% {
    -webkit-transform: translate3d(0, 10px, 0);
    transform: translate3d(0, 10px, 0);
  }

  90% {
    -webkit-transform: translate3d(0, -5px, 0);
    transform: translate3d(0, -5px, 0);
  }

  100% {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}

.bounceInUp {
  -webkit-animation-name: bounceInUp;
  animation-name: bounceInUp;
}

@-webkit-keyframes bounceOut {
  20% {
    -webkit-transform: scale3d(0.9, 0.9, 0.9);
    transform: scale3d(0.9, 0.9, 0.9);
  }

  50%, 55% {
    opacity: 1;
    -webkit-transform: scale3d(1.1, 1.1, 1.1);
    transform: scale3d(1.1, 1.1, 1.1);
  }

  100% {
    opacity: 0;
    -webkit-transform: scale3d(0.3, 0.3, 0.3);
    transform: scale3d(0.3, 0.3, 0.3);
  }
}

@keyframes bounceOut {
  20% {
    -webkit-transform: scale3d(0.9, 0.9, 0.9);
    transform: scale3d(0.9, 0.9, 0.9);
  }

  50%, 55% {
    opacity: 1;
    -webkit-transform: scale3d(1.1, 1.1, 1.1);
    transform: scale3d(1.1, 1.1, 1.1);
  }

  100% {
    opacity: 0;
    -webkit-transform: scale3d(0.3, 0.3, 0.3);
    transform: scale3d(0.3, 0.3, 0.3);
  }
}

.bounceOut {
  -webkit-animation-name: bounceOut;
  animation-name: bounceOut;
  -webkit-animation-duration: .75s;
  animation-duration: .75s;
}

@-webkit-keyframes bounceOutDown {
  20% {
    -webkit-transform: translate3d(0, 10px, 0);
    transform: translate3d(0, 10px, 0);
  }

  40%, 45% {
    opacity: 1;
    -webkit-transform: translate3d(0, -20px, 0);
    transform: translate3d(0, -20px, 0);
  }

  100% {
    opacity: 0;
    -webkit-transform: translate3d(0, 2000px, 0);
    transform: translate3d(0, 2000px, 0);
  }
}

@keyframes bounceOutDown {
  20% {
    -webkit-transform: translate3d(0, 10px, 0);
    transform: translate3d(0, 10px, 0);
  }

  40%, 45% {
    opacity: 1;
    -webkit-transform: translate3d(0, -20px, 0);
    transform: translate3d(0, -20px, 0);
  }

  100% {
    opacity: 0;
    -webkit-transform: translate3d(0, 2000px, 0);
    transform: translate3d(0, 2000px, 0);
  }
}

.bounceOutDown {
  -webkit-animation-name: bounceOutDown;
  animation-name: bounceOutDown;
}

@-webkit-keyframes bounceOutLeft {
  20% {
    opacity: 1;
    -webkit-transform: translate3d(20px, 0, 0);
    transform: translate3d(20px, 0, 0);
  }

  100% {
    opacity: 0;
    -webkit-transform: translate3d(-2000px, 0, 0);
    transform: translate3d(-2000px, 0, 0);
  }
}

@keyframes bounceOutLeft {
  20% {
    opacity: 1;
    -webkit-transform: translate3d(20px, 0, 0);
    transform: translate3d(20px, 0, 0);
  }

  100% {
    opacity: 0;
    -webkit-transform: translate3d(-2000px, 0, 0);
    transform: translate3d(-2000px, 0, 0);
  }
}

.bounceOutLeft {
  -webkit-animation-name: bounceOutLeft;
  animation-name: bounceOutLeft;
}

@-webkit-keyframes bounceOutRight {
  20% {
    opacity: 1;
    -webkit-transform: translate3d(-20px, 0, 0);
    transform: translate3d(-20px, 0, 0);
  }

  100% {
    opacity: 0;
    -webkit-transform: translate3d(2000px, 0, 0);
    transform: translate3d(2000px, 0, 0);
  }
}

@keyframes bounceOutRight {
  20% {
    opacity: 1;
    -webkit-transform: translate3d(-20px, 0, 0);
    transform: translate3d(-20px, 0, 0);
  }

  100% {
    opacity: 0;
    -webkit-transform: translate3d(2000px, 0, 0);
    transform: translate3d(2000px, 0, 0);
  }
}

.bounceOutRight {
  -webkit-animation-name: bounceOutRight;
  animation-name: bounceOutRight;
}

@-webkit-keyframes bounceOutUp {
  20% {
    -webkit-transform: translate3d(0, -10px, 0);
    transform: translate3d(0, -10px, 0);
  }

  40%, 45% {
    opacity: 1;
    -webkit-transform: translate3d(0, 20px, 0);
    transform: translate3d(0, 20px, 0);
  }

  100% {
    opacity: 0;
    -webkit-transform: translate3d(0, -2000px, 0);
    transform: translate3d(0, -2000px, 0);
  }
}

@keyframes bounceOutUp {
  20% {
    -webkit-transform: translate3d(0, -10px, 0);
    transform: translate3d(0, -10px, 0);
  }

  40%, 45% {
    opacity: 1;
    -webkit-transform: translate3d(0, 20px, 0);
    transform: translate3d(0, 20px, 0);
  }

  100% {
    opacity: 0;
    -webkit-transform: translate3d(0, -2000px, 0);
    transform: translate3d(0, -2000px, 0);
  }
}

.bounceOutUp {
  -webkit-animation-name: bounceOutUp;
  animation-name: bounceOutUp;
}

@-webkit-keyframes fadeIn {
  0% {
    opacity: 0;
  }

  100% {
    opacity: 1;
  }
}

@keyframes fadeIn {
  0% {
    opacity: 0;
  }

  100% {
    opacity: 1;
  }
}

.fadeIn {
  -webkit-animation-name: fadeIn;
  animation-name: fadeIn;
}

@-webkit-keyframes fadeInDown {
  0% {
    opacity: 0;
    -webkit-transform: translate3d(0, -100%, 0);
    transform: translate3d(0, -100%, 0);
  }

  100% {
    opacity: 1;
    -webkit-transform: none;
    transform: none;
  }
}

@keyframes fadeInDown {
  0% {
    opacity: 0;
    -webkit-transform: translate3d(0, -100%, 0);
    transform: translate3d(0, -100%, 0);
  }

  100% {
    opacity: 1;
    -webkit-transform: none;
    transform: none;
  }
}

.fadeInDown {
  -webkit-animation-name: fadeInDown;
  animation-name: fadeInDown;
}

@-webkit-keyframes fadeInDownBig {
  0% {
    opacity: 0;
    -webkit-transform: translate3d(0, -2000px, 0);
    transform: translate3d(0, -2000px, 0);
  }

  100% {
    opacity: 1;
    -webkit-transform: none;
    transform: none;
  }
}

@keyframes fadeInDownBig {
  0% {
    opacity: 0;
    -webkit-transform: translate3d(0, -2000px, 0);
    transform: translate3d(0, -2000px, 0);
  }

  100% {
    opacity: 1;
    -webkit-transform: none;
    transform: none;
  }
}

.fadeInDownBig {
  -webkit-animation-name: fadeInDownBig;
  animation-name: fadeInDownBig;
}

@-webkit-keyframes fadeInLeft {
  0% {
    opacity: 0;
    -webkit-transform: translate3d(-100%, 0, 0);
    transform: translate3d(-100%, 0, 0);
  }

  100% {
    opacity: 1;
    -webkit-transform: none;
    transform: none;
  }
}

@keyframes fadeInLeft {
  0% {
    opacity: 0;
    -webkit-transform: translate3d(-100%, 0, 0);
    transform: translate3d(-100%, 0, 0);
  }

  100% {
    opacity: 1;
    -webkit-transform: none;
    transform: none;
  }
}

.fadeInLeft {
  -webkit-animation-name: fadeInLeft;
  animation-name: fadeInLeft;
}

@-webkit-keyframes fadeInLeftBig {
  0% {
    opacity: 0;
    -webkit-transform: translate3d(-2000px, 0, 0);
    transform: translate3d(-2000px, 0, 0);
  }

  100% {
    opacity: 1;
    -webkit-transform: none;
    transform: none;
  }
}

@keyframes fadeInLeftBig {
  0% {
    opacity: 0;
    -webkit-transform: translate3d(-2000px, 0, 0);
    transform: translate3d(-2000px, 0, 0);
  }

  100% {
    opacity: 1;
    -webkit-transform: none;
    transform: none;
  }
}

.fadeInLeftBig {
  -webkit-animation-name: fadeInLeftBig;
  animation-name: fadeInLeftBig;
}

@-webkit-keyframes fadeInRight {
  0% {
    opacity: 0;
    -webkit-transform: translate3d(100%, 0, 0);
    transform: translate3d(100%, 0, 0);
  }

  100% {
    opacity: 1;
    -webkit-transform: none;
    transform: none;
  }
}

@keyframes fadeInRight {
  0% {
    opacity: 0;
    -webkit-transform: translate3d(100%, 0, 0);
    transform: translate3d(100%, 0, 0);
  }

  100% {
    opacity: 1;
    -webkit-transform: none;
    transform: none;
  }
}

.fadeInRight {
  -webkit-animation-name: fadeInRight;
  animation-name: fadeInRight;
}

@-webkit-keyframes fadeInRightBig {
  0% {
    opacity: 0;
    -webkit-transform: translate3d(2000px, 0, 0);
    transform: translate3d(2000px, 0, 0);
  }

  100% {
    opacity: 1;
    -webkit-transform: none;
    transform: none;
  }
}

@keyframes fadeInRightBig {
  0% {
    opacity: 0;
    -webkit-transform: translate3d(2000px, 0, 0);
    transform: translate3d(2000px, 0, 0);
  }

  100% {
    opacity: 1;
    -webkit-transform: none;
    transform: none;
  }
}

.fadeInRightBig {
  -webkit-animation-name: fadeInRightBig;
  animation-name: fadeInRightBig;
}

@-webkit-keyframes fadeInUp {
  0% {
    opacity: 0;
    -webkit-transform: translate3d(0, 40%, 0);
    transform: translate3d(0, 40%, 0);
  }

  100% {
    opacity: 1;
    -webkit-transform: none;
    transform: none;
  }
}

@keyframes fadeInUp {
  0% {
    opacity: 0;
    -webkit-transform: translate3d(0, 40%, 0);
    transform: translate3d(0, 40%, 0);
  }

  100% {
    opacity: 1;
    -webkit-transform: none;
    transform: none;
  }
}

.fadeInUp {
  -webkit-animation-name: fadeInUp;
  animation-name: fadeInUp;
}

@-webkit-keyframes fadeInUpBig {
  0% {
    opacity: 0;
    -webkit-transform: translate3d(0, 2000px, 0);
    transform: translate3d(0, 2000px, 0);
  }

  100% {
    opacity: 1;
    -webkit-transform: none;
    transform: none;
  }
}

@keyframes fadeInUpBig {
  0% {
    opacity: 0;
    -webkit-transform: translate3d(0, 2000px, 0);
    transform: translate3d(0, 2000px, 0);
  }

  100% {
    opacity: 1;
    -webkit-transform: none;
    transform: none;
  }
}

.fadeInUpBig {
  -webkit-animation-name: fadeInUpBig;
  animation-name: fadeInUpBig;
}

@-webkit-keyframes fadeOut {
  0% {
    opacity: 1;
  }

  100% {
    opacity: 0;
  }
}

@keyframes fadeOut {
  0% {
    opacity: 1;
  }

  100% {
    opacity: 0;
  }
}

.fadeOut {
  -webkit-animation-name: fadeOut;
  animation-name: fadeOut;
}

@-webkit-keyframes fadeOutDown {
  0% {
    opacity: 1;
  }

  100% {
    opacity: 0;
    -webkit-transform: translate3d(0, 100%, 0);
    transform: translate3d(0, 100%, 0);
  }
}

@keyframes fadeOutDown {
  0% {
    opacity: 1;
  }

  100% {
    opacity: 0;
    -webkit-transform: translate3d(0, 100%, 0);
    transform: translate3d(0, 100%, 0);
  }
}

.fadeOutDown {
  -webkit-animation-name: fadeOutDown;
  animation-name: fadeOutDown;
}

@-webkit-keyframes fadeOutDownBig {
  0% {
    opacity: 1;
  }

  100% {
    opacity: 0;
    -webkit-transform: translate3d(0, 2000px, 0);
    transform: translate3d(0, 2000px, 0);
  }
}

@keyframes fadeOutDownBig {
  0% {
    opacity: 1;
  }

  100% {
    opacity: 0;
    -webkit-transform: translate3d(0, 2000px, 0);
    transform: translate3d(0, 2000px, 0);
  }
}

.fadeOutDownBig {
  -webkit-animation-name: fadeOutDownBig;
  animation-name: fadeOutDownBig;
}

@-webkit-keyframes fadeOutLeft {
  0% {
    opacity: 1;
  }

  100% {
    opacity: 0;
    -webkit-transform: translate3d(-100%, 0, 0);
    transform: translate3d(-100%, 0, 0);
  }
}

@keyframes fadeOutLeft {
  0% {
    opacity: 1;
  }

  100% {
    opacity: 0;
    -webkit-transform: translate3d(-100%, 0, 0);
    transform: translate3d(-100%, 0, 0);
  }
}

.fadeOutLeft {
  -webkit-animation-name: fadeOutLeft;
  animation-name: fadeOutLeft;
}

@-webkit-keyframes fadeOutLeftBig {
  0% {
    opacity: 1;
  }

  100% {
    opacity: 0;
    -webkit-transform: translate3d(-2000px, 0, 0);
    transform: translate3d(-2000px, 0, 0);
  }
}

@keyframes fadeOutLeftBig {
  0% {
    opacity: 1;
  }

  100% {
    opacity: 0;
    -webkit-transform: translate3d(-2000px, 0, 0);
    transform: translate3d(-2000px, 0, 0);
  }
}

.fadeOutLeftBig {
  -webkit-animation-name: fadeOutLeftBig;
  animation-name: fadeOutLeftBig;
}

@-webkit-keyframes fadeOutRight {
  0% {
    opacity: 1;
  }

  100% {
    opacity: 0;
    -webkit-transform: translate3d(100%, 0, 0);
    transform: translate3d(100%, 0, 0);
  }
}

@keyframes fadeOutRight {
  0% {
    opacity: 1;
  }

  100% {
    opacity: 0;
    -webkit-transform: translate3d(100%, 0, 0);
    transform: translate3d(100%, 0, 0);
  }
}

.fadeOutRight {
  -webkit-animation-name: fadeOutRight;
  animation-name: fadeOutRight;
}

@-webkit-keyframes fadeOutRightBig {
  0% {
    opacity: 1;
  }

  100% {
    opacity: 0;
    -webkit-transform: translate3d(2000px, 0, 0);
    transform: translate3d(2000px, 0, 0);
  }
}

@keyframes fadeOutRightBig {
  0% {
    opacity: 1;
  }

  100% {
    opacity: 0;
    -webkit-transform: translate3d(2000px, 0, 0);
    transform: translate3d(2000px, 0, 0);
  }
}

.fadeOutRightBig {
  -webkit-animation-name: fadeOutRightBig;
  animation-name: fadeOutRightBig;
}

@-webkit-keyframes fadeOutUp {
  0% {
    opacity: 1;
  }

  100% {
    opacity: 0;
    -webkit-transform: translate3d(0, -100%, 0);
    transform: translate3d(0, -100%, 0);
  }
}

@keyframes fadeOutUp {
  0% {
    opacity: 1;
  }

  100% {
    opacity: 0;
    -webkit-transform: translate3d(0, -100%, 0);
    transform: translate3d(0, -100%, 0);
  }
}

.fadeOutUp {
  -webkit-animation-name: fadeOutUp;
  animation-name: fadeOutUp;
}

@-webkit-keyframes fadeOutUpBig {
  0% {
    opacity: 1;
  }

  100% {
    opacity: 0;
    -webkit-transform: translate3d(0, -2000px, 0);
    transform: translate3d(0, -2000px, 0);
  }
}

@keyframes fadeOutUpBig {
  0% {
    opacity: 1;
  }

  100% {
    opacity: 0;
    -webkit-transform: translate3d(0, -2000px, 0);
    transform: translate3d(0, -2000px, 0);
  }
}

.fadeOutUpBig {
  -webkit-animation-name: fadeOutUpBig;
  animation-name: fadeOutUpBig;
}

@-webkit-keyframes flip {
  0% {
    -webkit-transform: perspective(400px) rotate3d(0, 1, 0, -360deg);
    transform: perspective(400px) rotate3d(0, 1, 0, -360deg);
    -webkit-animation-timing-function: ease-out;
    animation-timing-function: ease-out;
  }

  40% {
    -webkit-transform: perspective(400px) translate3d(0, 0, 150px) rotate3d(0, 1, 0, -190deg);
    transform: perspective(400px) translate3d(0, 0, 150px) rotate3d(0, 1, 0, -190deg);
    -webkit-animation-timing-function: ease-out;
    animation-timing-function: ease-out;
  }

  50% {
    -webkit-transform: perspective(400px) translate3d(0, 0, 150px) rotate3d(0, 1, 0, -170deg);
    transform: perspective(400px) translate3d(0, 0, 150px) rotate3d(0, 1, 0, -170deg);
    -webkit-animation-timing-function: ease-in;
    animation-timing-function: ease-in;
  }

  80% {
    -webkit-transform: perspective(400px) scale3d(0.95, 0.95, 0.95);
    transform: perspective(400px) scale3d(0.95, 0.95, 0.95);
    -webkit-animation-timing-function: ease-in;
    animation-timing-function: ease-in;
  }

  100% {
    -webkit-transform: perspective(400px);
    transform: perspective(400px);
    -webkit-animation-timing-function: ease-in;
    animation-timing-function: ease-in;
  }
}

@keyframes flip {
  0% {
    -webkit-transform: perspective(400px) rotate3d(0, 1, 0, -360deg);
    transform: perspective(400px) rotate3d(0, 1, 0, -360deg);
    -webkit-animation-timing-function: ease-out;
    animation-timing-function: ease-out;
  }

  40% {
    -webkit-transform: perspective(400px) translate3d(0, 0, 150px) rotate3d(0, 1, 0, -190deg);
    transform: perspective(400px) translate3d(0, 0, 150px) rotate3d(0, 1, 0, -190deg);
    -webkit-animation-timing-function: ease-out;
    animation-timing-function: ease-out;
  }

  50% {
    -webkit-transform: perspective(400px) translate3d(0, 0, 150px) rotate3d(0, 1, 0, -170deg);
    transform: perspective(400px) translate3d(0, 0, 150px) rotate3d(0, 1, 0, -170deg);
    -webkit-animation-timing-function: ease-in;
    animation-timing-function: ease-in;
  }

  80% {
    -webkit-transform: perspective(400px) scale3d(0.95, 0.95, 0.95);
    transform: perspective(400px) scale3d(0.95, 0.95, 0.95);
    -webkit-animation-timing-function: ease-in;
    animation-timing-function: ease-in;
  }

  100% {
    -webkit-transform: perspective(400px);
    transform: perspective(400px);
    -webkit-animation-timing-function: ease-in;
    animation-timing-function: ease-in;
  }
}

.animated.flip {
  -webkit-backface-visibility: visible;
  backface-visibility: visible;
  -webkit-animation-name: flip;
  animation-name: flip;
}

@-webkit-keyframes flipInX {
  0% {
    -webkit-transform: perspective(400px) rotate3d(1, 0, 0, 90deg);
    transform: perspective(400px) rotate3d(1, 0, 0, 90deg);
    -webkit-transition-timing-function: ease-in;
    transition-timing-function: ease-in;
    opacity: 0;
  }

  40% {
    -webkit-transform: perspective(400px) rotate3d(1, 0, 0, -20deg);
    transform: perspective(400px) rotate3d(1, 0, 0, -20deg);
    -webkit-transition-timing-function: ease-in;
    transition-timing-function: ease-in;
  }

  60% {
    -webkit-transform: perspective(400px) rotate3d(1, 0, 0, 10deg);
    transform: perspective(400px) rotate3d(1, 0, 0, 10deg);
    opacity: 1;
  }

  80% {
    -webkit-transform: perspective(400px) rotate3d(1, 0, 0, -5deg);
    transform: perspective(400px) rotate3d(1, 0, 0, -5deg);
  }

  100% {
    -webkit-transform: perspective(400px);
    transform: perspective(400px);
  }
}

@keyframes flipInX {
  0% {
    -webkit-transform: perspective(400px) rotate3d(1, 0, 0, 90deg);
    transform: perspective(400px) rotate3d(1, 0, 0, 90deg);
    -webkit-transition-timing-function: ease-in;
    transition-timing-function: ease-in;
    opacity: 0;
  }

  40% {
    -webkit-transform: perspective(400px) rotate3d(1, 0, 0, -20deg);
    transform: perspective(400px) rotate3d(1, 0, 0, -20deg);
    -webkit-transition-timing-function: ease-in;
    transition-timing-function: ease-in;
  }

  60% {
    -webkit-transform: perspective(400px) rotate3d(1, 0, 0, 10deg);
    transform: perspective(400px) rotate3d(1, 0, 0, 10deg);
    opacity: 1;
  }

  80% {
    -webkit-transform: perspective(400px) rotate3d(1, 0, 0, -5deg);
    transform: perspective(400px) rotate3d(1, 0, 0, -5deg);
  }

  100% {
    -webkit-transform: perspective(400px);
    transform: perspective(400px);
  }
}

.flipInX {
  -webkit-backface-visibility: visible !important;
  backface-visibility: visible !important;
  -webkit-animation-name: flipInX;
  animation-name: flipInX;
}

@-webkit-keyframes flipInY {
  0% {
    -webkit-transform: perspective(400px) rotate3d(0, 1, 0, 90deg);
    transform: perspective(400px) rotate3d(0, 1, 0, 90deg);
    -webkit-transition-timing-function: ease-in;
    transition-timing-function: ease-in;
    opacity: 0;
  }

  40% {
    -webkit-transform: perspective(400px) rotate3d(0, 1, 0, -20deg);
    transform: perspective(400px) rotate3d(0, 1, 0, -20deg);
    -webkit-transition-timing-function: ease-in;
    transition-timing-function: ease-in;
  }

  60% {
    -webkit-transform: perspective(400px) rotate3d(0, 1, 0, 10deg);
    transform: perspective(400px) rotate3d(0, 1, 0, 10deg);
    opacity: 1;
  }

  80% {
    -webkit-transform: perspective(400px) rotate3d(0, 1, 0, -5deg);
    transform: perspective(400px) rotate3d(0, 1, 0, -5deg);
  }

  100% {
    -webkit-transform: perspective(400px);
    transform: perspective(400px);
  }
}

@keyframes flipInY {
  0% {
    -webkit-transform: perspective(400px) rotate3d(0, 1, 0, 90deg);
    transform: perspective(400px) rotate3d(0, 1, 0, 90deg);
    -webkit-transition-timing-function: ease-in;
    transition-timing-function: ease-in;
    opacity: 0;
  }

  40% {
    -webkit-transform: perspective(400px) rotate3d(0, 1, 0, -20deg);
    transform: perspective(400px) rotate3d(0, 1, 0, -20deg);
    -webkit-transition-timing-function: ease-in;
    transition-timing-function: ease-in;
  }

  60% {
    -webkit-transform: perspective(400px) rotate3d(0, 1, 0, 10deg);
    transform: perspective(400px) rotate3d(0, 1, 0, 10deg);
    opacity: 1;
  }

  80% {
    -webkit-transform: perspective(400px) rotate3d(0, 1, 0, -5deg);
    transform: perspective(400px) rotate3d(0, 1, 0, -5deg);
  }

  100% {
    -webkit-transform: perspective(400px);
    transform: perspective(400px);
  }
}

.flipInY {
  -webkit-backface-visibility: visible !important;
  backface-visibility: visible !important;
  -webkit-animation-name: flipInY;
  animation-name: flipInY;
}

@-webkit-keyframes flipOutX {
  0% {
    -webkit-transform: perspective(400px);
    transform: perspective(400px);
  }

  30% {
    -webkit-transform: perspective(400px) rotate3d(1, 0, 0, -20deg);
    transform: perspective(400px) rotate3d(1, 0, 0, -20deg);
    opacity: 1;
  }

  100% {
    -webkit-transform: perspective(400px) rotate3d(1, 0, 0, 90deg);
    transform: perspective(400px) rotate3d(1, 0, 0, 90deg);
    opacity: 0;
  }
}

@keyframes flipOutX {
  0% {
    -webkit-transform: perspective(400px);
    transform: perspective(400px);
  }

  30% {
    -webkit-transform: perspective(400px) rotate3d(1, 0, 0, -20deg);
    transform: perspective(400px) rotate3d(1, 0, 0, -20deg);
    opacity: 1;
  }

  100% {
    -webkit-transform: perspective(400px) rotate3d(1, 0, 0, 90deg);
    transform: perspective(400px) rotate3d(1, 0, 0, 90deg);
    opacity: 0;
  }
}

.flipOutX {
  -webkit-animation-name: flipOutX;
  animation-name: flipOutX;
  -webkit-animation-duration: .75s;
  animation-duration: .75s;
  -webkit-backface-visibility: visible !important;
  backface-visibility: visible !important;
}

@-webkit-keyframes flipOutY {
  0% {
    -webkit-transform: perspective(400px);
    transform: perspective(400px);
  }

  30% {
    -webkit-transform: perspective(400px) rotate3d(0, 1, 0, -15deg);
    transform: perspective(400px) rotate3d(0, 1, 0, -15deg);
    opacity: 1;
  }

  100% {
    -webkit-transform: perspective(400px) rotate3d(0, 1, 0, 90deg);
    transform: perspective(400px) rotate3d(0, 1, 0, 90deg);
    opacity: 0;
  }
}

@keyframes flipOutY {
  0% {
    -webkit-transform: perspective(400px);
    transform: perspective(400px);
  }

  30% {
    -webkit-transform: perspective(400px) rotate3d(0, 1, 0, -15deg);
    transform: perspective(400px) rotate3d(0, 1, 0, -15deg);
    opacity: 1;
  }

  100% {
    -webkit-transform: perspective(400px) rotate3d(0, 1, 0, 90deg);
    transform: perspective(400px) rotate3d(0, 1, 0, 90deg);
    opacity: 0;
  }
}

.flipOutY {
  -webkit-backface-visibility: visible !important;
  backface-visibility: visible !important;
  -webkit-animation-name: flipOutY;
  animation-name: flipOutY;
  -webkit-animation-duration: .75s;
  animation-duration: .75s;
}

@-webkit-keyframes lightSpeedIn {
  0% {
    -webkit-transform: translate3d(100%, 0, 0) skewX(-30deg);
    transform: translate3d(100%, 0, 0) skewX(-30deg);
    opacity: 0;
  }

  60% {
    -webkit-transform: skewX(20deg);
    transform: skewX(20deg);
    opacity: 1;
  }

  80% {
    -webkit-transform: skewX(-5deg);
    transform: skewX(-5deg);
    opacity: 1;
  }

  100% {
    -webkit-transform: none;
    transform: none;
    opacity: 1;
  }
}

@keyframes lightSpeedIn {
  0% {
    -webkit-transform: translate3d(100%, 0, 0) skewX(-30deg);
    transform: translate3d(100%, 0, 0) skewX(-30deg);
    opacity: 0;
  }

  60% {
    -webkit-transform: skewX(20deg);
    transform: skewX(20deg);
    opacity: 1;
  }

  80% {
    -webkit-transform: skewX(-5deg);
    transform: skewX(-5deg);
    opacity: 1;
  }

  100% {
    -webkit-transform: none;
    transform: none;
    opacity: 1;
  }
}

.lightSpeedIn {
  -webkit-animation-name: lightSpeedIn;
  animation-name: lightSpeedIn;
  -webkit-animation-timing-function: ease-out;
  animation-timing-function: ease-out;
}

@-webkit-keyframes lightSpeedOut {
  0% {
    opacity: 1;
  }

  100% {
    -webkit-transform: translate3d(100%, 0, 0) skewX(30deg);
    transform: translate3d(100%, 0, 0) skewX(30deg);
    opacity: 0;
  }
}

@keyframes lightSpeedOut {
  0% {
    opacity: 1;
  }

  100% {
    -webkit-transform: translate3d(100%, 0, 0) skewX(30deg);
    transform: translate3d(100%, 0, 0) skewX(30deg);
    opacity: 0;
  }
}

.lightSpeedOut {
  -webkit-animation-name: lightSpeedOut;
  animation-name: lightSpeedOut;
  -webkit-animation-timing-function: ease-in;
  animation-timing-function: ease-in;
}

@-webkit-keyframes rotateIn {
  0% {
    -webkit-transform-origin: center;
    transform-origin: center;
    -webkit-transform: rotate3d(0, 0, 1, -200deg);
    transform: rotate3d(0, 0, 1, -200deg);
    opacity: 0;
  }

  100% {
    -webkit-transform-origin: center;
    transform-origin: center;
    -webkit-transform: none;
    transform: none;
    opacity: 1;
  }
}

@keyframes rotateIn {
  0% {
    -webkit-transform-origin: center;
    transform-origin: center;
    -webkit-transform: rotate3d(0, 0, 1, -200deg);
    transform: rotate3d(0, 0, 1, -200deg);
    opacity: 0;
  }

  100% {
    -webkit-transform-origin: center;
    transform-origin: center;
    -webkit-transform: none;
    transform: none;
    opacity: 1;
  }
}

.rotateIn {
  -webkit-animation-name: rotateIn;
  animation-name: rotateIn;
}

@-webkit-keyframes rotateInDownLeft {
  0% {
    -webkit-transform-origin: left bottom;
    transform-origin: left bottom;
    -webkit-transform: rotate3d(0, 0, 1, -45deg);
    transform: rotate3d(0, 0, 1, -45deg);
    opacity: 0;
  }

  100% {
    -webkit-transform-origin: left bottom;
    transform-origin: left bottom;
    -webkit-transform: none;
    transform: none;
    opacity: 1;
  }
}

@keyframes rotateInDownLeft {
  0% {
    -webkit-transform-origin: left bottom;
    transform-origin: left bottom;
    -webkit-transform: rotate3d(0, 0, 1, -45deg);
    transform: rotate3d(0, 0, 1, -45deg);
    opacity: 0;
  }

  100% {
    -webkit-transform-origin: left bottom;
    transform-origin: left bottom;
    -webkit-transform: none;
    transform: none;
    opacity: 1;
  }
}

.rotateInDownLeft {
  -webkit-animation-name: rotateInDownLeft;
  animation-name: rotateInDownLeft;
}

@-webkit-keyframes rotateInDownRight {
  0% {
    -webkit-transform-origin: right bottom;
    transform-origin: right bottom;
    -webkit-transform: rotate3d(0, 0, 1, 45deg);
    transform: rotate3d(0, 0, 1, 45deg);
    opacity: 0;
  }

  100% {
    -webkit-transform-origin: right bottom;
    transform-origin: right bottom;
    -webkit-transform: none;
    transform: none;
    opacity: 1;
  }
}

@keyframes rotateInDownRight {
  0% {
    -webkit-transform-origin: right bottom;
    transform-origin: right bottom;
    -webkit-transform: rotate3d(0, 0, 1, 45deg);
    transform: rotate3d(0, 0, 1, 45deg);
    opacity: 0;
  }

  100% {
    -webkit-transform-origin: right bottom;
    transform-origin: right bottom;
    -webkit-transform: none;
    transform: none;
    opacity: 1;
  }
}

.rotateInDownRight {
  -webkit-animation-name: rotateInDownRight;
  animation-name: rotateInDownRight;
}

@-webkit-keyframes rotateInUpLeft {
  0% {
    -webkit-transform-origin: left bottom;
    transform-origin: left bottom;
    -webkit-transform: rotate3d(0, 0, 1, 45deg);
    transform: rotate3d(0, 0, 1, 45deg);
    opacity: 0;
  }

  100% {
    -webkit-transform-origin: left bottom;
    transform-origin: left bottom;
    -webkit-transform: none;
    transform: none;
    opacity: 1;
  }
}

@keyframes rotateInUpLeft {
  0% {
    -webkit-transform-origin: left bottom;
    transform-origin: left bottom;
    -webkit-transform: rotate3d(0, 0, 1, 45deg);
    transform: rotate3d(0, 0, 1, 45deg);
    opacity: 0;
  }

  100% {
    -webkit-transform-origin: left bottom;
    transform-origin: left bottom;
    -webkit-transform: none;
    transform: none;
    opacity: 1;
  }
}

.rotateInUpLeft {
  -webkit-animation-name: rotateInUpLeft;
  animation-name: rotateInUpLeft;
}

@-webkit-keyframes rotateInUpRight {
  0% {
    -webkit-transform-origin: right bottom;
    transform-origin: right bottom;
    -webkit-transform: rotate3d(0, 0, 1, -90deg);
    transform: rotate3d(0, 0, 1, -90deg);
    opacity: 0;
  }

  100% {
    -webkit-transform-origin: right bottom;
    transform-origin: right bottom;
    -webkit-transform: none;
    transform: none;
    opacity: 1;
  }
}

@keyframes rotateInUpRight {
  0% {
    -webkit-transform-origin: right bottom;
    transform-origin: right bottom;
    -webkit-transform: rotate3d(0, 0, 1, -90deg);
    transform: rotate3d(0, 0, 1, -90deg);
    opacity: 0;
  }

  100% {
    -webkit-transform-origin: right bottom;
    transform-origin: right bottom;
    -webkit-transform: none;
    transform: none;
    opacity: 1;
  }
}

.rotateInUpRight {
  -webkit-animation-name: rotateInUpRight;
  animation-name: rotateInUpRight;
}

@-webkit-keyframes rotateOut {
  0% {
    -webkit-transform-origin: center;
    transform-origin: center;
    opacity: 1;
  }

  100% {
    -webkit-transform-origin: center;
    transform-origin: center;
    -webkit-transform: rotate3d(0, 0, 1, 200deg);
    transform: rotate3d(0, 0, 1, 200deg);
    opacity: 0;
  }
}

@keyframes rotateOut {
  0% {
    -webkit-transform-origin: center;
    transform-origin: center;
    opacity: 1;
  }

  100% {
    -webkit-transform-origin: center;
    transform-origin: center;
    -webkit-transform: rotate3d(0, 0, 1, 200deg);
    transform: rotate3d(0, 0, 1, 200deg);
    opacity: 0;
  }
}

.rotateOut {
  -webkit-animation-name: rotateOut;
  animation-name: rotateOut;
}

@-webkit-keyframes rotateOutDownLeft {
  0% {
    -webkit-transform-origin: left bottom;
    transform-origin: left bottom;
    opacity: 1;
  }

  100% {
    -webkit-transform-origin: left bottom;
    transform-origin: left bottom;
    -webkit-transform: rotate3d(0, 0, 1, 45deg);
    transform: rotate3d(0, 0, 1, 45deg);
    opacity: 0;
  }
}

@keyframes rotateOutDownLeft {
  0% {
    -webkit-transform-origin: left bottom;
    transform-origin: left bottom;
    opacity: 1;
  }

  100% {
    -webkit-transform-origin: left bottom;
    transform-origin: left bottom;
    -webkit-transform: rotate3d(0, 0, 1, 45deg);
    transform: rotate3d(0, 0, 1, 45deg);
    opacity: 0;
  }
}

.rotateOutDownLeft {
  -webkit-animation-name: rotateOutDownLeft;
  animation-name: rotateOutDownLeft;
}

@-webkit-keyframes rotateOutDownRight {
  0% {
    -webkit-transform-origin: right bottom;
    transform-origin: right bottom;
    opacity: 1;
  }

  100% {
    -webkit-transform-origin: right bottom;
    transform-origin: right bottom;
    -webkit-transform: rotate3d(0, 0, 1, -45deg);
    transform: rotate3d(0, 0, 1, -45deg);
    opacity: 0;
  }
}

@keyframes rotateOutDownRight {
  0% {
    -webkit-transform-origin: right bottom;
    transform-origin: right bottom;
    opacity: 1;
  }

  100% {
    -webkit-transform-origin: right bottom;
    transform-origin: right bottom;
    -webkit-transform: rotate3d(0, 0, 1, -45deg);
    transform: rotate3d(0, 0, 1, -45deg);
    opacity: 0;
  }
}

.rotateOutDownRight {
  -webkit-animation-name: rotateOutDownRight;
  animation-name: rotateOutDownRight;
}

@-webkit-keyframes rotateOutUpLeft {
  0% {
    -webkit-transform-origin: left bottom;
    transform-origin: left bottom;
    opacity: 1;
  }

  100% {
    -webkit-transform-origin: left bottom;
    transform-origin: left bottom;
    -webkit-transform: rotate3d(0, 0, 1, -45deg);
    transform: rotate3d(0, 0, 1, -45deg);
    opacity: 0;
  }
}

@keyframes rotateOutUpLeft {
  0% {
    -webkit-transform-origin: left bottom;
    transform-origin: left bottom;
    opacity: 1;
  }

  100% {
    -webkit-transform-origin: left bottom;
    transform-origin: left bottom;
    -webkit-transform: rotate3d(0, 0, 1, -45deg);
    transform: rotate3d(0, 0, 1, -45deg);
    opacity: 0;
  }
}

.rotateOutUpLeft {
  -webkit-animation-name: rotateOutUpLeft;
  animation-name: rotateOutUpLeft;
}

@-webkit-keyframes rotateOutUpRight {
  0% {
    -webkit-transform-origin: right bottom;
    transform-origin: right bottom;
    opacity: 1;
  }

  100% {
    -webkit-transform-origin: right bottom;
    transform-origin: right bottom;
    -webkit-transform: rotate3d(0, 0, 1, 90deg);
    transform: rotate3d(0, 0, 1, 90deg);
    opacity: 0;
  }
}

@keyframes rotateOutUpRight {
  0% {
    -webkit-transform-origin: right bottom;
    transform-origin: right bottom;
    opacity: 1;
  }

  100% {
    -webkit-transform-origin: right bottom;
    transform-origin: right bottom;
    -webkit-transform: rotate3d(0, 0, 1, 90deg);
    transform: rotate3d(0, 0, 1, 90deg);
    opacity: 0;
  }
}

.rotateOutUpRight {
  -webkit-animation-name: rotateOutUpRight;
  animation-name: rotateOutUpRight;
}

@-webkit-keyframes hinge {
  0% {
    -webkit-transform-origin: top left;
    transform-origin: top left;
    -webkit-animation-timing-function: ease-in-out;
    animation-timing-function: ease-in-out;
  }

  20%, 60% {
    -webkit-transform: rotate3d(0, 0, 1, 80deg);
    transform: rotate3d(0, 0, 1, 80deg);
    -webkit-transform-origin: top left;
    transform-origin: top left;
    -webkit-animation-timing-function: ease-in-out;
    animation-timing-function: ease-in-out;
  }

  40%, 80% {
    -webkit-transform: rotate3d(0, 0, 1, 60deg);
    transform: rotate3d(0, 0, 1, 60deg);
    -webkit-transform-origin: top left;
    transform-origin: top left;
    -webkit-animation-timing-function: ease-in-out;
    animation-timing-function: ease-in-out;
    opacity: 1;
  }

  100% {
    -webkit-transform: translate3d(0, 700px, 0);
    transform: translate3d(0, 700px, 0);
    opacity: 0;
  }
}

@keyframes hinge {
  0% {
    -webkit-transform-origin: top left;
    transform-origin: top left;
    -webkit-animation-timing-function: ease-in-out;
    animation-timing-function: ease-in-out;
  }

  20%, 60% {
    -webkit-transform: rotate3d(0, 0, 1, 80deg);
    transform: rotate3d(0, 0, 1, 80deg);
    -webkit-transform-origin: top left;
    transform-origin: top left;
    -webkit-animation-timing-function: ease-in-out;
    animation-timing-function: ease-in-out;
  }

  40%, 80% {
    -webkit-transform: rotate3d(0, 0, 1, 60deg);
    transform: rotate3d(0, 0, 1, 60deg);
    -webkit-transform-origin: top left;
    transform-origin: top left;
    -webkit-animation-timing-function: ease-in-out;
    animation-timing-function: ease-in-out;
    opacity: 1;
  }

  100% {
    -webkit-transform: translate3d(0, 700px, 0);
    transform: translate3d(0, 700px, 0);
    opacity: 0;
  }
}

.hinge {
  -webkit-animation-name: hinge;
  animation-name: hinge;
}

/* originally authored by Nick Pettit - https://github.com/nickpettit/glide */

@-webkit-keyframes rollIn {
  0% {
    opacity: 0;
    -webkit-transform: translate3d(-100%, 0, 0) rotate3d(0, 0, 1, -120deg);
    transform: translate3d(-100%, 0, 0) rotate3d(0, 0, 1, -120deg);
  }

  100% {
    opacity: 1;
    -webkit-transform: none;
    transform: none;
  }
}

@keyframes rollIn {
  0% {
    opacity: 0;
    -webkit-transform: translate3d(-100%, 0, 0) rotate3d(0, 0, 1, -120deg);
    transform: translate3d(-100%, 0, 0) rotate3d(0, 0, 1, -120deg);
  }

  100% {
    opacity: 1;
    -webkit-transform: none;
    transform: none;
  }
}

.rollIn {
  -webkit-animation-name: rollIn;
  animation-name: rollIn;
}

/* originally authored by Nick Pettit - https://github.com/nickpettit/glide */

@-webkit-keyframes rollOut {
  0% {
    opacity: 1;
  }

  100% {
    opacity: 0;
    -webkit-transform: translate3d(100%, 0, 0) rotate3d(0, 0, 1, 120deg);
    transform: translate3d(100%, 0, 0) rotate3d(0, 0, 1, 120deg);
  }
}

@keyframes rollOut {
  0% {
    opacity: 1;
  }

  100% {
    opacity: 0;
    -webkit-transform: translate3d(100%, 0, 0) rotate3d(0, 0, 1, 120deg);
    transform: translate3d(100%, 0, 0) rotate3d(0, 0, 1, 120deg);
  }
}

.rollOut {
  -webkit-animation-name: rollOut;
  animation-name: rollOut;
}

@-webkit-keyframes zoomIn {
  0% {
    opacity: 0;
    -webkit-transform: scale3d(0.3, 0.3, 0.3);
    transform: scale3d(0.3, 0.3, 0.3);
  }

  50% {
    opacity: 1;
  }
}

@keyframes zoomIn {
  0% {
    opacity: 0;
    -webkit-transform: scale3d(0.3, 0.3, 0.3);
    transform: scale3d(0.3, 0.3, 0.3);
  }

  50% {
    opacity: 1;
  }
}

.zoomIn {
  -webkit-animation-name: zoomIn;
  animation-name: zoomIn;
}

@-webkit-keyframes zoomInDown {
  0% {
    opacity: 0;
    -webkit-transform: scale3d(0.1, 0.1, 0.1) translate3d(0, -1000px, 0);
    transform: scale3d(0.1, 0.1, 0.1) translate3d(0, -1000px, 0);
    -webkit-animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
    animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
  }

  60% {
    opacity: 1;
    -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(0, 60px, 0);
    transform: scale3d(0.475, 0.475, 0.475) translate3d(0, 60px, 0);
    -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
    animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
  }
}

@keyframes zoomInDown {
  0% {
    opacity: 0;
    -webkit-transform: scale3d(0.1, 0.1, 0.1) translate3d(0, -1000px, 0);
    transform: scale3d(0.1, 0.1, 0.1) translate3d(0, -1000px, 0);
    -webkit-animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
    animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
  }

  60% {
    opacity: 1;
    -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(0, 60px, 0);
    transform: scale3d(0.475, 0.475, 0.475) translate3d(0, 60px, 0);
    -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
    animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
  }
}

.zoomInDown {
  -webkit-animation-name: zoomInDown;
  animation-name: zoomInDown;
}

@-webkit-keyframes zoomInLeft {
  0% {
    opacity: 0;
    -webkit-transform: scale3d(0.1, 0.1, 0.1) translate3d(-1000px, 0, 0);
    transform: scale3d(0.1, 0.1, 0.1) translate3d(-1000px, 0, 0);
    -webkit-animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
    animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
  }

  60% {
    opacity: 1;
    -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(10px, 0, 0);
    transform: scale3d(0.475, 0.475, 0.475) translate3d(10px, 0, 0);
    -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
    animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
  }
}

@keyframes zoomInLeft {
  0% {
    opacity: 0;
    -webkit-transform: scale3d(0.1, 0.1, 0.1) translate3d(-1000px, 0, 0);
    transform: scale3d(0.1, 0.1, 0.1) translate3d(-1000px, 0, 0);
    -webkit-animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
    animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
  }

  60% {
    opacity: 1;
    -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(10px, 0, 0);
    transform: scale3d(0.475, 0.475, 0.475) translate3d(10px, 0, 0);
    -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
    animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
  }
}

.zoomInLeft {
  -webkit-animation-name: zoomInLeft;
  animation-name: zoomInLeft;
}

@-webkit-keyframes zoomInRight {
  0% {
    opacity: 0;
    -webkit-transform: scale3d(0.1, 0.1, 0.1) translate3d(1000px, 0, 0);
    transform: scale3d(0.1, 0.1, 0.1) translate3d(1000px, 0, 0);
    -webkit-animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
    animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
  }

  60% {
    opacity: 1;
    -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(-10px, 0, 0);
    transform: scale3d(0.475, 0.475, 0.475) translate3d(-10px, 0, 0);
    -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
    animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
  }
}

@keyframes zoomInRight {
  0% {
    opacity: 0;
    -webkit-transform: scale3d(0.1, 0.1, 0.1) translate3d(1000px, 0, 0);
    transform: scale3d(0.1, 0.1, 0.1) translate3d(1000px, 0, 0);
    -webkit-animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
    animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
  }

  60% {
    opacity: 1;
    -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(-10px, 0, 0);
    transform: scale3d(0.475, 0.475, 0.475) translate3d(-10px, 0, 0);
    -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
    animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
  }
}

.zoomInRight {
  -webkit-animation-name: zoomInRight;
  animation-name: zoomInRight;
}

@-webkit-keyframes zoomInUp {
  0% {
    opacity: 0;
    -webkit-transform: scale3d(0.1, 0.1, 0.1) translate3d(0, 1000px, 0);
    transform: scale3d(0.1, 0.1, 0.1) translate3d(0, 1000px, 0);
    -webkit-animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
    animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
  }

  60% {
    opacity: 1;
    -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(0, -60px, 0);
    transform: scale3d(0.475, 0.475, 0.475) translate3d(0, -60px, 0);
    -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
    animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
  }
}

@keyframes zoomInUp {
  0% {
    opacity: 0;
    -webkit-transform: scale3d(0.1, 0.1, 0.1) translate3d(0, 1000px, 0);
    transform: scale3d(0.1, 0.1, 0.1) translate3d(0, 1000px, 0);
    -webkit-animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
    animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
  }

  60% {
    opacity: 1;
    -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(0, -60px, 0);
    transform: scale3d(0.475, 0.475, 0.475) translate3d(0, -60px, 0);
    -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
    animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
  }
}

.zoomInUp {
  -webkit-animation-name: zoomInUp;
  animation-name: zoomInUp;
}

@-webkit-keyframes zoomOut {
  0% {
    opacity: 1;
  }

  50% {
    opacity: 0;
    -webkit-transform: scale3d(0.3, 0.3, 0.3);
    transform: scale3d(0.3, 0.3, 0.3);
  }

  100% {
    opacity: 0;
  }
}

@keyframes zoomOut {
  0% {
    opacity: 1;
  }

  50% {
    opacity: 0;
    -webkit-transform: scale3d(0.3, 0.3, 0.3);
    transform: scale3d(0.3, 0.3, 0.3);
  }

  100% {
    opacity: 0;
  }
}

.zoomOut {
  -webkit-animation-name: zoomOut;
  animation-name: zoomOut;
}

@-webkit-keyframes zoomOutDown {
  40% {
    opacity: 1;
    -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(0, -60px, 0);
    transform: scale3d(0.475, 0.475, 0.475) translate3d(0, -60px, 0);
    -webkit-animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
    animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
  }

  100% {
    opacity: 0;
    -webkit-transform: scale3d(0.1, 0.1, 0.1) translate3d(0, 2000px, 0);
    transform: scale3d(0.1, 0.1, 0.1) translate3d(0, 2000px, 0);
    -webkit-transform-origin: center bottom;
    transform-origin: center bottom;
    -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
    animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
  }
}

@keyframes zoomOutDown {
  40% {
    opacity: 1;
    -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(0, -60px, 0);
    transform: scale3d(0.475, 0.475, 0.475) translate3d(0, -60px, 0);
    -webkit-animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
    animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
  }

  100% {
    opacity: 0;
    -webkit-transform: scale3d(0.1, 0.1, 0.1) translate3d(0, 2000px, 0);
    transform: scale3d(0.1, 0.1, 0.1) translate3d(0, 2000px, 0);
    -webkit-transform-origin: center bottom;
    transform-origin: center bottom;
    -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
    animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
  }
}

.zoomOutDown {
  -webkit-animation-name: zoomOutDown;
  animation-name: zoomOutDown;
}

@-webkit-keyframes zoomOutLeft {
  40% {
    opacity: 1;
    -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(42px, 0, 0);
    transform: scale3d(0.475, 0.475, 0.475) translate3d(42px, 0, 0);
  }

  100% {
    opacity: 0;
    -webkit-transform: scale(0.1) translate3d(-2000px, 0, 0);
    transform: scale(0.1) translate3d(-2000px, 0, 0);
    -webkit-transform-origin: left center;
    transform-origin: left center;
  }
}

@keyframes zoomOutLeft {
  40% {
    opacity: 1;
    -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(42px, 0, 0);
    transform: scale3d(0.475, 0.475, 0.475) translate3d(42px, 0, 0);
  }

  100% {
    opacity: 0;
    -webkit-transform: scale(0.1) translate3d(-2000px, 0, 0);
    transform: scale(0.1) translate3d(-2000px, 0, 0);
    -webkit-transform-origin: left center;
    transform-origin: left center;
  }
}

.zoomOutLeft {
  -webkit-animation-name: zoomOutLeft;
  animation-name: zoomOutLeft;
}

@-webkit-keyframes zoomOutRight {
  40% {
    opacity: 1;
    -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(-42px, 0, 0);
    transform: scale3d(0.475, 0.475, 0.475) translate3d(-42px, 0, 0);
  }

  100% {
    opacity: 0;
    -webkit-transform: scale(0.1) translate3d(2000px, 0, 0);
    transform: scale(0.1) translate3d(2000px, 0, 0);
    -webkit-transform-origin: right center;
    transform-origin: right center;
  }
}

@keyframes zoomOutRight {
  40% {
    opacity: 1;
    -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(-42px, 0, 0);
    transform: scale3d(0.475, 0.475, 0.475) translate3d(-42px, 0, 0);
  }

  100% {
    opacity: 0;
    -webkit-transform: scale(0.1) translate3d(2000px, 0, 0);
    transform: scale(0.1) translate3d(2000px, 0, 0);
    -webkit-transform-origin: right center;
    transform-origin: right center;
  }
}

.zoomOutRight {
  -webkit-animation-name: zoomOutRight;
  animation-name: zoomOutRight;
}

@-webkit-keyframes zoomOutUp {
  40% {
    opacity: 1;
    -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(0, 60px, 0);
    transform: scale3d(0.475, 0.475, 0.475) translate3d(0, 60px, 0);
    -webkit-animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
    animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
  }

  100% {
    opacity: 0;
    -webkit-transform: scale3d(0.1, 0.1, 0.1) translate3d(0, -2000px, 0);
    transform: scale3d(0.1, 0.1, 0.1) translate3d(0, -2000px, 0);
    -webkit-transform-origin: center bottom;
    transform-origin: center bottom;
    -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
    animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
  }
}

@keyframes zoomOutUp {
  40% {
    opacity: 1;
    -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(0, 60px, 0);
    transform: scale3d(0.475, 0.475, 0.475) translate3d(0, 60px, 0);
    -webkit-animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
    animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
  }

  100% {
    opacity: 0;
    -webkit-transform: scale3d(0.1, 0.1, 0.1) translate3d(0, -2000px, 0);
    transform: scale3d(0.1, 0.1, 0.1) translate3d(0, -2000px, 0);
    -webkit-transform-origin: center bottom;
    transform-origin: center bottom;
    -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
    animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
  }
}

.zoomOutUp {
  -webkit-animation-name: zoomOutUp;
  animation-name: zoomOutUp;
}

@-webkit-keyframes slideInDown {
  0% {
    -webkit-transform: translateY(-100%);
    transform: translateY(-100%);
    visibility: visible;
  }

  100% {
    -webkit-transform: translateY(0);
    transform: translateY(0);
  }
}

@keyframes slideInDown {
  0% {
    -webkit-transform: translateY(-100%);
    transform: translateY(-100%);
    visibility: visible;
  }

  100% {
    -webkit-transform: translateY(0);
    transform: translateY(0);
  }
}

.slideInDown {
  -webkit-animation-name: slideInDown;
  animation-name: slideInDown;
}

@-webkit-keyframes slideInLeft {
  0% {
    -webkit-transform: translateX(-100%);
    transform: translateX(-100%);
    visibility: visible;
  }

  100% {
    -webkit-transform: translateX(0);
    transform: translateX(0);
  }
}

@keyframes slideInLeft {
  0% {
    -webkit-transform: translateX(-100%);
    transform: translateX(-100%);
    visibility: visible;
  }

  100% {
    -webkit-transform: translateX(0);
    transform: translateX(0);
  }
}

.slideInLeft {
  -webkit-animation-name: slideInLeft;
  animation-name: slideInLeft;
}

@-webkit-keyframes slideInRight {
  0% {
    -webkit-transform: translateX(100%);
    transform: translateX(100%);
    visibility: visible;
  }

  100% {
    -webkit-transform: translateX(0);
    transform: translateX(0);
  }
}

@keyframes slideInRight {
  0% {
    -webkit-transform: translateX(100%);
    transform: translateX(100%);
    visibility: visible;
  }

  100% {
    -webkit-transform: translateX(0);
    transform: translateX(0);
  }
}

.slideInRight {
  -webkit-animation-name: slideInRight;
  animation-name: slideInRight;
}

@-webkit-keyframes slideInUp {
  0% {
    -webkit-transform: translateY(100%);
    transform: translateY(100%);
    visibility: visible;
  }

  100% {
    -webkit-transform: translateY(0);
    transform: translateY(0);
  }
}

@keyframes slideInUp {
  0% {
    -webkit-transform: translateY(100%);
    transform: translateY(100%);
    visibility: visible;
  }

  100% {
    -webkit-transform: translateY(0);
    transform: translateY(0);
  }
}

.slideInUp {
  -webkit-animation-name: slideInUp;
  animation-name: slideInUp;
}

@-webkit-keyframes slideOutDown {
  0% {
    -webkit-transform: translateY(0);
    transform: translateY(0);
  }

  100% {
    visibility: hidden;
    -webkit-transform: translateY(100%);
    transform: translateY(100%);
  }
}

@keyframes slideOutDown {
  0% {
    -webkit-transform: translateY(0);
    transform: translateY(0);
  }

  100% {
    visibility: hidden;
    -webkit-transform: translateY(100%);
    transform: translateY(100%);
  }
}

.slideOutDown {
  -webkit-animation-name: slideOutDown;
  animation-name: slideOutDown;
}

@-webkit-keyframes slideOutLeft {
  0% {
    -webkit-transform: translateX(0);
    transform: translateX(0);
  }

  100% {
    visibility: hidden;
    -webkit-transform: translateX(-100%);
    transform: translateX(-100%);
  }
}

@keyframes slideOutLeft {
  0% {
    -webkit-transform: translateX(0);
    transform: translateX(0);
  }

  100% {
    visibility: hidden;
    -webkit-transform: translateX(-100%);
    transform: translateX(-100%);
  }
}

.slideOutLeft {
  -webkit-animation-name: slideOutLeft;
  animation-name: slideOutLeft;
}

@-webkit-keyframes slideOutRight {
  0% {
    -webkit-transform: translateX(0);
    transform: translateX(0);
  }

  100% {
    visibility: hidden;
    -webkit-transform: translateX(100%);
    transform: translateX(100%);
  }
}

@keyframes slideOutRight {
  0% {
    -webkit-transform: translateX(0);
    transform: translateX(0);
  }

  100% {
    visibility: hidden;
    -webkit-transform: translateX(100%);
    transform: translateX(100%);
  }
}

.slideOutRight {
  -webkit-animation-name: slideOutRight;
  animation-name: slideOutRight;
}

@-webkit-keyframes slideOutUp {
  0% {
    -webkit-transform: translateY(0);
    transform: translateY(0);
  }

  100% {
    visibility: hidden;
    -webkit-transform: translateY(-100%);
    transform: translateY(-100%);
  }
}

@keyframes slideOutUp {
  0% {
    -webkit-transform: translateY(0);
    transform: translateY(0);
  }

  100% {
    visibility: hidden;
    -webkit-transform: translateY(-100%);
    transform: translateY(-100%);
  }
}

.slideOutUp {
  -webkit-animation-name: slideOutUp;
  animation-name: slideOutUp;
}

/* 
 * 	Core Owl Carousel CSS File
 *	v1.3.3
 */

/* clearfix */

.owl-carousel .owl-wrapper:after {
  content: ".";
  display: block;
  clear: both;
  visibility: hidden;
  line-height: 0;
  height: 0;
}

/* display none until init */

.owl-carousel {
  display: none;
  position: relative;
  width: 100%;
  -ms-touch-action: pan-y;
}

.owl-carousel .owl-wrapper {
  display: none;
  position: relative;
  -webkit-transform: translate3d(0px, 0px, 0px);
}

.owl-carousel .owl-wrapper-outer {
  overflow: hidden;
  position: relative;
  width: 100%;
}

.owl-carousel .owl-wrapper-outer.autoHeight {
  -webkit-transition: height 500ms ease-in-out;
  transition: height 500ms ease-in-out;
}

.owl-carousel .owl-item {
  float: left;
}

.owl-controls .owl-page,
.owl-controls .owl-buttons div {
  cursor: pointer;
}

.owl-controls {
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  -webkit-tap-highlight-color: transparent;
}

/* mouse grab icon */

/* fix */

.owl-carousel .owl-wrapper,
.owl-carousel .owl-item {
  -webkit-backface-visibility: hidden;
  -moz-backface-visibility: hidden;
  -ms-backface-visibility: hidden;
  -webkit-transform: translate3d(0, 0, 0);
  -moz-transform: translate3d(0, 0, 0);
  -ms-transform: translate3d(0, 0, 0);
}

/*
* 	Owl Carousel Owl Demo Theme 
*	v1.3.3
*/

.owl-theme .owl-controls {
  margin-top: 10px;
  text-align: center;
}

/* Styling Next and Prev buttons */

.owl-theme .owl-controls .owl-buttons div {
  color: #FFF;
  display: inline-block;
  zoom: 1;
  *display: inline;
  /*IE7 life-saver */
  margin: 5px;
  padding: 3px 10px;
  font-size: 12px;
  border-radius: 30px;
  background: #869791;
  filter: Alpha(Opacity=50);
  /*IE7 fix*/
  opacity: 0.5;
}

/* Clickable class fix problem with hover on touch devices */

/* Use it for non-touch hover action */

.owl-theme .owl-controls.clickable .owl-buttons div:hover {
  filter: Alpha(Opacity=100);
  /*IE7 fix*/
  opacity: 1;
  text-decoration: none;
}

/* Styling Pagination*/

.owl-theme .owl-controls .owl-page {
  display: inline-block;
  zoom: 1;
  *display: inline;
  /*IE7 life-saver */
}

.owl-theme .owl-controls .owl-page span {
  display: block;
  width: 12px;
  height: 12px;
  margin: 5px 7px;
  opacity: 0.5;
  border-radius: 20px;
  border: solid 2px;
  -webkit-transition: all 200ms ease;
  transition: all 200ms ease;
}

.owl-theme .owl-controls .owl-page.active span,
.owl-theme .owl-controls.clickable .owl-page:hover span {
  opacity: 1;
}

/* If PaginationNumbers is true */

.owl-theme .owl-controls .owl-page span.owl-numbers {
  height: auto;
  width: auto;
  color: #FFF;
  padding: 2px 10px;
  font-size: 12px;
  border-radius: 30px;
}

/* preloading images */

.owl-item.loading {
  min-height: 150px;
}

/* 
 *  Owl Carousel CSS3 Transitions 
 *  v1.3.2
 */

.owl-origin {
  -webkit-perspective: 1200px;
  -webkit-perspective-origin-x: 50%;
  -webkit-perspective-origin-y: 50%;
  -moz-perspective: 1200px;
  -moz-perspective-origin-x: 50%;
  -moz-perspective-origin-y: 50%;
  perspective: 1200px;
}

/* fade */

.owl-fade-out {
  z-index: 10;
  -webkit-animation: fadeOut .7s both ease;
  animation: fadeOut .7s both ease;
}

.owl-fade-in {
  -webkit-animation: fadeIn .7s both ease;
  animation: fadeIn .7s both ease;
}

/* backSlide */

.owl-backSlide-out {
  -webkit-animation: backSlideOut 1s both ease;
  animation: backSlideOut 1s both ease;
}

.owl-backSlide-in {
  -webkit-animation: backSlideIn 1s both ease;
  animation: backSlideIn 1s both ease;
}

/* goDown */

.owl-goDown-out {
  -webkit-animation: scaleToFade .7s ease both;
  animation: scaleToFade .7s ease both;
}

.owl-goDown-in {
  -webkit-animation: goDown .6s ease both;
  animation: goDown .6s ease both;
}

/* scaleUp */

.owl-fadeUp-in {
  -webkit-animation: scaleUpFrom .5s ease both;
  animation: scaleUpFrom .5s ease both;
}

.owl-fadeUp-out {
  -webkit-animation: scaleUpTo .5s ease both;
  animation: scaleUpTo .5s ease both;
}

/* Keyframes */

/*empty*/

@-webkit-keyframes empty {
  0% {
    opacity: 1;
  }
}

@keyframes empty {
  0% {
    opacity: 1;
  }
}

@-webkit-keyframes fadeIn {
  0% {
    opacity: 0;
  }

  100% {
    opacity: 1;
  }
}

@keyframes fadeIn {
  0% {
    opacity: 0;
  }

  100% {
    opacity: 1;
  }
}

@-webkit-keyframes fadeOut {
  0% {
    opacity: 1;
  }

  100% {
    opacity: 0;
  }
}

@keyframes fadeOut {
  0% {
    opacity: 1;
  }

  100% {
    opacity: 0;
  }
}

@-webkit-keyframes backSlideOut {
  25% {
    opacity: .5;
    -webkit-transform: translateZ(-500px);
  }

  75% {
    opacity: .5;
    -webkit-transform: translateZ(-500px) translateX(-200%);
  }

  100% {
    opacity: .5;
    -webkit-transform: translateZ(-500px) translateX(-200%);
  }
}

@keyframes backSlideOut {
  25% {
    opacity: .5;
    -webkit-transform: translateZ(-500px);
            transform: translateZ(-500px);
  }

  75% {
    opacity: .5;
    -webkit-transform: translateZ(-500px) translateX(-200%);
            transform: translateZ(-500px) translateX(-200%);
  }

  100% {
    opacity: .5;
    -webkit-transform: translateZ(-500px) translateX(-200%);
            transform: translateZ(-500px) translateX(-200%);
  }
}

@-webkit-keyframes backSlideIn {
  0%, 25% {
    opacity: .5;
    -webkit-transform: translateZ(-500px) translateX(200%);
  }

  75% {
    opacity: .5;
    -webkit-transform: translateZ(-500px);
  }

  100% {
    opacity: 1;
    -webkit-transform: translateZ(0) translateX(0);
  }
}

@keyframes backSlideIn {
  0%, 25% {
    opacity: .5;
    -webkit-transform: translateZ(-500px) translateX(200%);
            transform: translateZ(-500px) translateX(200%);
  }

  75% {
    opacity: .5;
    -webkit-transform: translateZ(-500px);
            transform: translateZ(-500px);
  }

  100% {
    opacity: 1;
    -webkit-transform: translateZ(0) translateX(0);
            transform: translateZ(0) translateX(0);
  }
}

@-webkit-keyframes scaleToFade {
  to {
    opacity: 0;
    -webkit-transform: scale(0.8);
  }
}

@keyframes scaleToFade {
  to {
    opacity: 0;
    -webkit-transform: scale(0.8);
            transform: scale(0.8);
  }
}

@-webkit-keyframes goDown {
  from {
    -webkit-transform: translateY(-100%);
  }
}

@keyframes goDown {
  from {
    -webkit-transform: translateY(-100%);
            transform: translateY(-100%);
  }
}

@-webkit-keyframes scaleUpFrom {
  from {
    opacity: 0;
    -webkit-transform: scale(1.5);
  }
}

@keyframes scaleUpFrom {
  from {
    opacity: 0;
    -webkit-transform: scale(1.5);
            transform: scale(1.5);
  }
}

@-webkit-keyframes scaleUpTo {
  to {
    opacity: 0;
    -webkit-transform: scale(1.5);
  }
}

@keyframes scaleUpTo {
  to {
    opacity: 0;
    -webkit-transform: scale(1.5);
            transform: scale(1.5);
  }
}

/*!
 * Bootstrap v4.0.0-alpha.6 (https://getbootstrap.com)
 * Copyright 2011-2017 The Bootstrap Authors
 * Copyright 2011-2017 Twitter, Inc.
 * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)
 */

/*! normalize.css v5.0.0 | MIT License | github.com/necolas/normalize.css */

html {
  font-family: sans-serif;
  line-height: 1.15;
  -ms-text-size-adjust: 100%;
  -webkit-text-size-adjust: 100%;
}

body {
  margin: 0;
}

article,
aside,
footer,
header,
nav,
section {
  display: block;
}

h1 {
  font-size: 2em;
  margin: 0.67em 0;
}

figcaption,
figure,
main {
  display: block;
}

figure {
  margin: 1em 40px;
}

hr {
  box-sizing: content-box;
  height: 0;
  overflow: visible;
}

pre {
  font-family: monospace, monospace;
  font-size: 1em;
}

a {
  background-color: transparent;
  -webkit-text-decoration-skip: objects;
}

a:active,
a:hover {
  outline-width: 0;
}

abbr[title] {
  border-bottom: none;
  text-decoration: underline;
  text-decoration: underline dotted;
}

b,
strong {
  font-weight: inherit;
}

b,
strong {
  font-weight: bolder;
}

code,
kbd,
samp {
  font-family: monospace, monospace;
  font-size: 1em;
}

dfn {
  font-style: italic;
}

mark {
  background-color: #ff0;
  color: #000;
}

small {
  font-size: 80%;
}

sub,
sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline;
}

sub {
  bottom: -0.25em;
}

sup {
  top: -0.5em;
}

audio,
video {
  display: inline-block;
}

audio:not([controls]) {
  display: none;
  height: 0;
}

img {
  border-style: none;
}

svg:not(:root) {
  overflow: hidden;
}

button,
input,
optgroup,
select,
textarea {
  font-family: sans-serif;
  font-size: 100%;
  line-height: 1.15;
  margin: 0;
}

button,
input {
  overflow: visible;
}

button,
select {
  text-transform: none;
}

button,
html [type="button"],
[type="reset"],
[type="submit"] {
  -webkit-appearance: button;
}

button::-moz-focus-inner,
[type="button"]::-moz-focus-inner,
[type="reset"]::-moz-focus-inner,
[type="submit"]::-moz-focus-inner {
  border-style: none;
  padding: 0;
}

button:-moz-focusring,
[type="button"]:-moz-focusring,
[type="reset"]:-moz-focusring,
[type="submit"]:-moz-focusring {
  outline: 1px dotted ButtonText;
}

fieldset {
  border: 1px solid #c0c0c0;
  margin: 0 2px;
  padding: 0.35em 0.625em 0.75em;
}

legend {
  box-sizing: border-box;
  color: inherit;
  display: table;
  max-width: 100%;
  padding: 0;
  white-space: normal;
}

progress {
  display: inline-block;
  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-cancel-button,
[type="search"]::-webkit-search-decoration {
  -webkit-appearance: none;
}

::-webkit-file-upload-button {
  -webkit-appearance: button;
  font: inherit;
}

details,
menu {
  display: block;
}

summary {
  display: list-item;
}

canvas {
  display: inline-block;
}

template {
  display: none;
}

[hidden] {
  display: none;
}

@media print {
  *,
  *::before,
  *::after,
  p::first-letter,
  div::first-letter,
  blockquote::first-letter,
  li::first-letter,
  p::first-line,
  div::first-line,
  blockquote::first-line,
  li::first-line {
    text-shadow: none !important;
    box-shadow: none !important;
  }

  a,
  a:visited {
    text-decoration: underline;
  }

  abbr[title]::after {
    content: " (" attr(title) ")";
  }

  pre {
    white-space: pre-wrap !important;
  }

  pre,
  blockquote {
    border: 1px solid #999;
    page-break-inside: avoid;
  }

  thead {
    display: table-header-group;
  }

  tr,
  img {
    page-break-inside: avoid;
  }

  p,
  h2,
  h3 {
    orphans: 3;
    widows: 3;
  }

  h2,
  h3 {
    page-break-after: avoid;
  }

  .navbar {
    display: none;
  }

  .badge {
    border: 1px solid #000;
  }

  .table {
    border-collapse: collapse !important;
  }

  .table td,
  .table th {
    background-color: #fff !important;
  }

  .table-bordered th,
  .table-bordered td {
    border: 1px solid #ddd !important;
  }
}

html {
  box-sizing: border-box;
}

*,
*::before,
*::after {
  box-sizing: inherit;
}

@-ms-viewport {
  width: device-width;
}

html {
  -ms-overflow-style: scrollbar;
  -webkit-tap-highlight-color: transparent;
}

body {
  font-family: -apple-system, system-ui, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
  font-size: 1rem;
  font-weight: normal;
  line-height: 1.5;
  color: #292b2c;
  background-color: #fff;
}

[tabindex="-1"]:focus {
  outline: none !important;
}

h1,
h2,
h3,
h4,
h5,
h6 {
  margin-top: 0;
  margin-bottom: .5rem;
}

p {
  margin-top: 0;
  margin-bottom: 1rem;
}

abbr[title],
abbr[data-original-title] {
  cursor: help;
}

address {
  margin-bottom: 1rem;
  font-style: normal;
  line-height: inherit;
}

ol,
ul,
dl {
  margin-top: 0;
  margin-bottom: 1rem;
}

ol ol,
ul ul,
ol ul,
ul ol {
  margin-bottom: 0;
}

dt {
  font-weight: bold;
}

dd {
  margin-bottom: .5rem;
  margin-left: 0;
}

blockquote {
  margin: 0 0 1rem;
}

a {
  color: #27ae60;
  text-decoration: none;
}

a:focus,
a:hover {
  color: #19703e;
  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;
}

pre {
  margin-top: 0;
  margin-bottom: 1rem;
  overflow: auto;
}

figure {
  margin: 0 0 1rem;
}

img {
  vertical-align: middle;
}

[role="button"] {
  cursor: pointer;
}

a,
area,
button,
[role="button"],
input,
label,
select,
summary,
textarea {
  -ms-touch-action: manipulation;
      touch-action: manipulation;
}

table {
  border-collapse: collapse;
  background-color: transparent;
}

caption {
  padding-top: 0.75rem;
  padding-bottom: 0.75rem;
  color: #636c72;
  text-align: left;
  caption-side: bottom;
}

th {
  text-align: left;
}

label {
  display: inline-block;
  margin-bottom: .5rem;
}

button:focus {
  outline: 1px dotted;
  outline: 5px auto -webkit-focus-ring-color;
}

input,
button,
select,
textarea {
  line-height: inherit;
}

input[type="radio"]:disabled,
input[type="checkbox"]:disabled {
  cursor: not-allowed;
}

input[type="date"],
input[type="time"],
input[type="datetime-local"],
input[type="month"] {
  -webkit-appearance: listbox;
}

textarea {
  resize: vertical;
}

fieldset {
  min-width: 0;
  padding: 0;
  margin: 0;
  border: 0;
}

legend {
  display: block;
  width: 100%;
  padding: 0;
  margin-bottom: .5rem;
  font-size: 1.5rem;
  line-height: inherit;
}

input[type="search"] {
  -webkit-appearance: none;
}

output {
  display: inline-block;
}

[hidden] {
  display: none !important;
}

h1,
h2,
h3,
h4,
h5,
h6,
.h1,
.h2,
.h3,
.h4,
.h5,
.h6 {
  margin-bottom: 0.5rem;
  font-family: inherit;
  font-weight: 500;
  line-height: 1.1;
  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.1;
}

.display-2 {
  font-size: 5.5rem;
  font-weight: 300;
  line-height: 1.1;
}

.display-3 {
  font-size: 4.5rem;
  font-weight: 300;
  line-height: 1.1;
}

.display-4 {
  font-size: 3.5rem;
  font-weight: 300;
  line-height: 1.1;
}

hr {
  margin-top: 1rem;
  margin-bottom: 1rem;
  border: 0;
  border-top: 1px solid rgba(0, 0, 0, 0.1);
}

small,
.small {
  font-size: 80%;
  font-weight: normal;
}

mark,
.mark {
  padding: 0.2em;
  background-color: #fcf8e3;
}

.list-unstyled,
.comment-list {
  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: 5px;
}

.initialism {
  font-size: 90%;
  text-transform: uppercase;
}

.blockquote {
  padding: 0.5rem 1rem;
  margin-bottom: 1rem;
  font-size: 1.25rem;
  border-left: 0.25rem solid #eceeef;
}

.blockquote-footer {
  display: block;
  font-size: 80%;
  color: #636c72;
}

.blockquote-footer::before {
  content: "\2014 \00A0";
}

.blockquote-reverse {
  padding-right: 1rem;
  padding-left: 0;
  text-align: right;
  border-right: 0.25rem solid #eceeef;
  border-left: 0;
}

.blockquote-reverse .blockquote-footer::before {
  content: "";
}

.blockquote-reverse .blockquote-footer::after {
  content: "\00A0 \2014";
}

.img-fluid,
.wp-caption {
  max-width: 100%;
  height: auto;
}

.img-thumbnail {
  padding: 0.25rem;
  background-color: #fff;
  border: 1px solid #ddd;
  border-radius: 0.25rem;
  -webkit-transition: all 0.2s ease-in-out;
  transition: all 0.2s ease-in-out;
  max-width: 100%;
  height: auto;
}

.figure {
  display: inline-block;
}

.figure-img,
.wp-caption {
  margin-bottom: 0.5rem;
  line-height: 1;
}

.figure-caption,
.wp-caption-text {
  font-size: 90%;
  color: #636c72;
}

code,
kbd,
pre,
samp {
  font-family: Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;
}

code {
  padding: 0.2rem 0.4rem;
  font-size: 90%;
  color: #bd4147;
  background-color: #f7f7f9;
  border-radius: 0.25rem;
}

a > code {
  padding: 0;
  color: inherit;
  background-color: inherit;
}

kbd {
  padding: 0.2rem 0.4rem;
  font-size: 90%;
  color: #fff;
  background-color: #292b2c;
  border-radius: 0.2rem;
}

kbd kbd {
  padding: 0;
  font-size: 100%;
  font-weight: bold;
}

pre {
  display: block;
  margin-top: 0;
  margin-bottom: 1rem;
  font-size: 90%;
  color: #292b2c;
}

pre code {
  padding: 0;
  font-size: inherit;
  color: inherit;
  background-color: transparent;
  border-radius: 0;
}

.pre-scrollable {
  max-height: 340px;
  overflow-y: scroll;
}

.container {
  position: relative;
  margin-left: auto;
  margin-right: auto;
  padding-right: 15px;
  padding-left: 15px;
}

@media (min-width: 576px) {
  .container {
    padding-right: 15px;
    padding-left: 15px;
  }
}

@media (min-width: 768px) {
  .container {
    padding-right: 15px;
    padding-left: 15px;
  }
}

@media (min-width: 992px) {
  .container {
    padding-right: 15px;
    padding-left: 15px;
  }
}

@media (min-width: 1200px) {
  .container {
    padding-right: 15px;
    padding-left: 15px;
  }
}

@media (min-width: 576px) {
  .container {
    width: 540px;
    max-width: 100%;
  }
}

@media (min-width: 768px) {
  .container {
    width: 720px;
    max-width: 100%;
  }
}

@media (min-width: 992px) {
  .container {
    width: 960px;
    max-width: 100%;
  }
}

@media (min-width: 1200px) {
  .container {
    width: 1140px;
    max-width: 100%;
  }
}

.container-fluid {
  position: relative;
  margin-left: auto;
  margin-right: auto;
  padding-right: 15px;
  padding-left: 15px;
}

@media (min-width: 576px) {
  .container-fluid {
    padding-right: 15px;
    padding-left: 15px;
  }
}

@media (min-width: 768px) {
  .container-fluid {
    padding-right: 15px;
    padding-left: 15px;
  }
}

@media (min-width: 992px) {
  .container-fluid {
    padding-right: 15px;
    padding-left: 15px;
  }
}

@media (min-width: 1200px) {
  .container-fluid {
    padding-right: 15px;
    padding-left: 15px;
  }
}

.row {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  margin-right: -15px;
  margin-left: -15px;
}

@media (min-width: 576px) {
  .row {
    margin-right: -15px;
    margin-left: -15px;
  }
}

@media (min-width: 768px) {
  .row {
    margin-right: -15px;
    margin-left: -15px;
  }
}

@media (min-width: 992px) {
  .row {
    margin-right: -15px;
    margin-left: -15px;
  }
}

@media (min-width: 1200px) {
  .row {
    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-1,
.col-2,
.col-3,
.col-4,
.col-5,
.col-6,
.col-7,
.col-8,
.col-9,
.col-10,
.col-11,
.col-12,
.col,
.col-sm-1,
.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-10,
.col-sm-11,
.col-sm-12,
.col-sm,
.col-md-1,
.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-10,
.col-md-11,
.col-md-12,
.col-md,
.col-lg-1,
.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-10,
.col-lg-11,
.col-lg-12,
.col-lg,
.col-xl-1,
.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-10,
.col-xl-11,
.col-xl-12,
.col-xl {
  position: relative;
  width: 100%;
  min-height: 1px;
  padding-right: 15px;
  padding-left: 15px;
}

@media (min-width: 576px) {
  .col-1,
  .col-2,
  .col-3,
  .col-4,
  .col-5,
  .col-6,
  .col-7,
  .col-8,
  .col-9,
  .col-10,
  .col-11,
  .col-12,
  .col,
  .col-sm-1,
  .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-10,
  .col-sm-11,
  .col-sm-12,
  .col-sm,
  .col-md-1,
  .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-10,
  .col-md-11,
  .col-md-12,
  .col-md,
  .col-lg-1,
  .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-10,
  .col-lg-11,
  .col-lg-12,
  .col-lg,
  .col-xl-1,
  .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-10,
  .col-xl-11,
  .col-xl-12,
  .col-xl {
    padding-right: 15px;
    padding-left: 15px;
  }
}

@media (min-width: 768px) {
  .col-1,
  .col-2,
  .col-3,
  .col-4,
  .col-5,
  .col-6,
  .col-7,
  .col-8,
  .col-9,
  .col-10,
  .col-11,
  .col-12,
  .col,
  .col-sm-1,
  .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-10,
  .col-sm-11,
  .col-sm-12,
  .col-sm,
  .col-md-1,
  .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-10,
  .col-md-11,
  .col-md-12,
  .col-md,
  .col-lg-1,
  .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-10,
  .col-lg-11,
  .col-lg-12,
  .col-lg,
  .col-xl-1,
  .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-10,
  .col-xl-11,
  .col-xl-12,
  .col-xl {
    padding-right: 15px;
    padding-left: 15px;
  }
}

@media (min-width: 992px) {
  .col-1,
  .col-2,
  .col-3,
  .col-4,
  .col-5,
  .col-6,
  .col-7,
  .col-8,
  .col-9,
  .col-10,
  .col-11,
  .col-12,
  .col,
  .col-sm-1,
  .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-10,
  .col-sm-11,
  .col-sm-12,
  .col-sm,
  .col-md-1,
  .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-10,
  .col-md-11,
  .col-md-12,
  .col-md,
  .col-lg-1,
  .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-10,
  .col-lg-11,
  .col-lg-12,
  .col-lg,
  .col-xl-1,
  .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-10,
  .col-xl-11,
  .col-xl-12,
  .col-xl {
    padding-right: 15px;
    padding-left: 15px;
  }
}

@media (min-width: 1200px) {
  .col-1,
  .col-2,
  .col-3,
  .col-4,
  .col-5,
  .col-6,
  .col-7,
  .col-8,
  .col-9,
  .col-10,
  .col-11,
  .col-12,
  .col,
  .col-sm-1,
  .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-10,
  .col-sm-11,
  .col-sm-12,
  .col-sm,
  .col-md-1,
  .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-10,
  .col-md-11,
  .col-md-12,
  .col-md,
  .col-lg-1,
  .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-10,
  .col-lg-11,
  .col-lg-12,
  .col-lg,
  .col-xl-1,
  .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-10,
  .col-xl-11,
  .col-xl-12,
  .col-xl {
    padding-right: 15px;
    padding-left: 15px;
  }
}

.col {
  -ms-flex-preferred-size: 0;
      flex-basis: 0;
  -webkit-box-flex: 1;
      -ms-flex-positive: 1;
          flex-grow: 1;
  max-width: 100%;
}

.col-auto {
  -webkit-box-flex: 0;
      -ms-flex: 0 0 auto;
          flex: 0 0 auto;
  width: auto;
}

.col-1 {
  -webkit-box-flex: 0;
      -ms-flex: 0 0 8.33333333%;
          flex: 0 0 8.33333333%;
  max-width: 8.33333333%;
}

.col-2 {
  -webkit-box-flex: 0;
      -ms-flex: 0 0 16.66666667%;
          flex: 0 0 16.66666667%;
  max-width: 16.66666667%;
}

.col-3 {
  -webkit-box-flex: 0;
      -ms-flex: 0 0 25%;
          flex: 0 0 25%;
  max-width: 25%;
}

.col-4 {
  -webkit-box-flex: 0;
      -ms-flex: 0 0 33.33333333%;
          flex: 0 0 33.33333333%;
  max-width: 33.33333333%;
}

.col-5 {
  -webkit-box-flex: 0;
      -ms-flex: 0 0 41.66666667%;
          flex: 0 0 41.66666667%;
  max-width: 41.66666667%;
}

.col-6 {
  -webkit-box-flex: 0;
      -ms-flex: 0 0 50%;
          flex: 0 0 50%;
  max-width: 50%;
}

.col-7 {
  -webkit-box-flex: 0;
      -ms-flex: 0 0 58.33333333%;
          flex: 0 0 58.33333333%;
  max-width: 58.33333333%;
}

.col-8 {
  -webkit-box-flex: 0;
      -ms-flex: 0 0 66.66666667%;
          flex: 0 0 66.66666667%;
  max-width: 66.66666667%;
}

.col-9 {
  -webkit-box-flex: 0;
      -ms-flex: 0 0 75%;
          flex: 0 0 75%;
  max-width: 75%;
}

.col-10 {
  -webkit-box-flex: 0;
      -ms-flex: 0 0 83.33333333%;
          flex: 0 0 83.33333333%;
  max-width: 83.33333333%;
}

.col-11 {
  -webkit-box-flex: 0;
      -ms-flex: 0 0 91.66666667%;
          flex: 0 0 91.66666667%;
  max-width: 91.66666667%;
}

.col-12 {
  -webkit-box-flex: 0;
      -ms-flex: 0 0 100%;
          flex: 0 0 100%;
  max-width: 100%;
}

.pull-0 {
  right: auto;
}

.pull-1 {
  right: 8.33333333%;
}

.pull-2 {
  right: 16.66666667%;
}

.pull-3 {
  right: 25%;
}

.pull-4 {
  right: 33.33333333%;
}

.pull-5 {
  right: 41.66666667%;
}

.pull-6 {
  right: 50%;
}

.pull-7 {
  right: 58.33333333%;
}

.pull-8 {
  right: 66.66666667%;
}

.pull-9 {
  right: 75%;
}

.pull-10 {
  right: 83.33333333%;
}

.pull-11 {
  right: 91.66666667%;
}

.pull-12 {
  right: 100%;
}

.push-0 {
  left: auto;
}

.push-1 {
  left: 8.33333333%;
}

.push-2 {
  left: 16.66666667%;
}

.push-3 {
  left: 25%;
}

.push-4 {
  left: 33.33333333%;
}

.push-5 {
  left: 41.66666667%;
}

.push-6 {
  left: 50%;
}

.push-7 {
  left: 58.33333333%;
}

.push-8 {
  left: 66.66666667%;
}

.push-9 {
  left: 75%;
}

.push-10 {
  left: 83.33333333%;
}

.push-11 {
  left: 91.66666667%;
}

.push-12 {
  left: 100%;
}

.offset-1 {
  margin-left: 8.33333333%;
}

.offset-2 {
  margin-left: 16.66666667%;
}

.offset-3 {
  margin-left: 25%;
}

.offset-4 {
  margin-left: 33.33333333%;
}

.offset-5 {
  margin-left: 41.66666667%;
}

.offset-6 {
  margin-left: 50%;
}

.offset-7 {
  margin-left: 58.33333333%;
}

.offset-8 {
  margin-left: 66.66666667%;
}

.offset-9 {
  margin-left: 75%;
}

.offset-10 {
  margin-left: 83.33333333%;
}

.offset-11 {
  margin-left: 91.66666667%;
}

@media (min-width: 576px) {
  .col-sm {
    -ms-flex-preferred-size: 0;
        flex-basis: 0;
    -webkit-box-flex: 1;
        -ms-flex-positive: 1;
            flex-grow: 1;
    max-width: 100%;
  }

  .col-sm-auto {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 auto;
            flex: 0 0 auto;
    width: auto;
  }

  .col-sm-1 {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 8.33333333%;
            flex: 0 0 8.33333333%;
    max-width: 8.33333333%;
  }

  .col-sm-2 {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 16.66666667%;
            flex: 0 0 16.66666667%;
    max-width: 16.66666667%;
  }

  .col-sm-3 {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 25%;
            flex: 0 0 25%;
    max-width: 25%;
  }

  .col-sm-4 {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 33.33333333%;
            flex: 0 0 33.33333333%;
    max-width: 33.33333333%;
  }

  .col-sm-5 {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 41.66666667%;
            flex: 0 0 41.66666667%;
    max-width: 41.66666667%;
  }

  .col-sm-6 {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 50%;
            flex: 0 0 50%;
    max-width: 50%;
  }

  .col-sm-7 {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 58.33333333%;
            flex: 0 0 58.33333333%;
    max-width: 58.33333333%;
  }

  .col-sm-8 {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 66.66666667%;
            flex: 0 0 66.66666667%;
    max-width: 66.66666667%;
  }

  .col-sm-9 {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 75%;
            flex: 0 0 75%;
    max-width: 75%;
  }

  .col-sm-10 {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 83.33333333%;
            flex: 0 0 83.33333333%;
    max-width: 83.33333333%;
  }

  .col-sm-11 {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 91.66666667%;
            flex: 0 0 91.66666667%;
    max-width: 91.66666667%;
  }

  .col-sm-12 {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 100%;
            flex: 0 0 100%;
    max-width: 100%;
  }

  .pull-sm-0 {
    right: auto;
  }

  .pull-sm-1 {
    right: 8.33333333%;
  }

  .pull-sm-2 {
    right: 16.66666667%;
  }

  .pull-sm-3 {
    right: 25%;
  }

  .pull-sm-4 {
    right: 33.33333333%;
  }

  .pull-sm-5 {
    right: 41.66666667%;
  }

  .pull-sm-6 {
    right: 50%;
  }

  .pull-sm-7 {
    right: 58.33333333%;
  }

  .pull-sm-8 {
    right: 66.66666667%;
  }

  .pull-sm-9 {
    right: 75%;
  }

  .pull-sm-10 {
    right: 83.33333333%;
  }

  .pull-sm-11 {
    right: 91.66666667%;
  }

  .pull-sm-12 {
    right: 100%;
  }

  .push-sm-0 {
    left: auto;
  }

  .push-sm-1 {
    left: 8.33333333%;
  }

  .push-sm-2 {
    left: 16.66666667%;
  }

  .push-sm-3 {
    left: 25%;
  }

  .push-sm-4 {
    left: 33.33333333%;
  }

  .push-sm-5 {
    left: 41.66666667%;
  }

  .push-sm-6 {
    left: 50%;
  }

  .push-sm-7 {
    left: 58.33333333%;
  }

  .push-sm-8 {
    left: 66.66666667%;
  }

  .push-sm-9 {
    left: 75%;
  }

  .push-sm-10 {
    left: 83.33333333%;
  }

  .push-sm-11 {
    left: 91.66666667%;
  }

  .push-sm-12 {
    left: 100%;
  }

  .offset-sm-0 {
    margin-left: 0%;
  }

  .offset-sm-1 {
    margin-left: 8.33333333%;
  }

  .offset-sm-2 {
    margin-left: 16.66666667%;
  }

  .offset-sm-3 {
    margin-left: 25%;
  }

  .offset-sm-4 {
    margin-left: 33.33333333%;
  }

  .offset-sm-5 {
    margin-left: 41.66666667%;
  }

  .offset-sm-6 {
    margin-left: 50%;
  }

  .offset-sm-7 {
    margin-left: 58.33333333%;
  }

  .offset-sm-8 {
    margin-left: 66.66666667%;
  }

  .offset-sm-9 {
    margin-left: 75%;
  }

  .offset-sm-10 {
    margin-left: 83.33333333%;
  }

  .offset-sm-11 {
    margin-left: 91.66666667%;
  }
}

@media (min-width: 768px) {
  .col-md {
    -ms-flex-preferred-size: 0;
        flex-basis: 0;
    -webkit-box-flex: 1;
        -ms-flex-positive: 1;
            flex-grow: 1;
    max-width: 100%;
  }

  .col-md-auto {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 auto;
            flex: 0 0 auto;
    width: auto;
  }

  .col-md-1 {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 8.33333333%;
            flex: 0 0 8.33333333%;
    max-width: 8.33333333%;
  }

  .col-md-2 {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 16.66666667%;
            flex: 0 0 16.66666667%;
    max-width: 16.66666667%;
  }

  .col-md-3 {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 25%;
            flex: 0 0 25%;
    max-width: 25%;
  }

  .col-md-4 {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 33.33333333%;
            flex: 0 0 33.33333333%;
    max-width: 33.33333333%;
  }

  .col-md-5 {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 41.66666667%;
            flex: 0 0 41.66666667%;
    max-width: 41.66666667%;
  }

  .col-md-6 {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 50%;
            flex: 0 0 50%;
    max-width: 50%;
  }

  .col-md-7 {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 58.33333333%;
            flex: 0 0 58.33333333%;
    max-width: 58.33333333%;
  }

  .col-md-8 {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 66.66666667%;
            flex: 0 0 66.66666667%;
    max-width: 66.66666667%;
  }

  .col-md-9 {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 75%;
            flex: 0 0 75%;
    max-width: 75%;
  }

  .col-md-10 {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 83.33333333%;
            flex: 0 0 83.33333333%;
    max-width: 83.33333333%;
  }

  .col-md-11 {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 91.66666667%;
            flex: 0 0 91.66666667%;
    max-width: 91.66666667%;
  }

  .col-md-12 {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 100%;
            flex: 0 0 100%;
    max-width: 100%;
  }

  .pull-md-0 {
    right: auto;
  }

  .pull-md-1 {
    right: 8.33333333%;
  }

  .pull-md-2 {
    right: 16.66666667%;
  }

  .pull-md-3 {
    right: 25%;
  }

  .pull-md-4 {
    right: 33.33333333%;
  }

  .pull-md-5 {
    right: 41.66666667%;
  }

  .pull-md-6 {
    right: 50%;
  }

  .pull-md-7 {
    right: 58.33333333%;
  }

  .pull-md-8 {
    right: 66.66666667%;
  }

  .pull-md-9 {
    right: 75%;
  }

  .pull-md-10 {
    right: 83.33333333%;
  }

  .pull-md-11 {
    right: 91.66666667%;
  }

  .pull-md-12 {
    right: 100%;
  }

  .push-md-0 {
    left: auto;
  }

  .push-md-1 {
    left: 8.33333333%;
  }

  .push-md-2 {
    left: 16.66666667%;
  }

  .push-md-3 {
    left: 25%;
  }

  .push-md-4 {
    left: 33.33333333%;
  }

  .push-md-5 {
    left: 41.66666667%;
  }

  .push-md-6 {
    left: 50%;
  }

  .push-md-7 {
    left: 58.33333333%;
  }

  .push-md-8 {
    left: 66.66666667%;
  }

  .push-md-9 {
    left: 75%;
  }

  .push-md-10 {
    left: 83.33333333%;
  }

  .push-md-11 {
    left: 91.66666667%;
  }

  .push-md-12 {
    left: 100%;
  }

  .offset-md-0 {
    margin-left: 0%;
  }

  .offset-md-1 {
    margin-left: 8.33333333%;
  }

  .offset-md-2 {
    margin-left: 16.66666667%;
  }

  .offset-md-3 {
    margin-left: 25%;
  }

  .offset-md-4 {
    margin-left: 33.33333333%;
  }

  .offset-md-5 {
    margin-left: 41.66666667%;
  }

  .offset-md-6 {
    margin-left: 50%;
  }

  .offset-md-7 {
    margin-left: 58.33333333%;
  }

  .offset-md-8 {
    margin-left: 66.66666667%;
  }

  .offset-md-9 {
    margin-left: 75%;
  }

  .offset-md-10 {
    margin-left: 83.33333333%;
  }

  .offset-md-11 {
    margin-left: 91.66666667%;
  }
}

@media (min-width: 992px) {
  .col-lg {
    -ms-flex-preferred-size: 0;
        flex-basis: 0;
    -webkit-box-flex: 1;
        -ms-flex-positive: 1;
            flex-grow: 1;
    max-width: 100%;
  }

  .col-lg-auto {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 auto;
            flex: 0 0 auto;
    width: auto;
  }

  .col-lg-1 {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 8.33333333%;
            flex: 0 0 8.33333333%;
    max-width: 8.33333333%;
  }

  .col-lg-2 {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 16.66666667%;
            flex: 0 0 16.66666667%;
    max-width: 16.66666667%;
  }

  .col-lg-3 {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 25%;
            flex: 0 0 25%;
    max-width: 25%;
  }

  .col-lg-4 {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 33.33333333%;
            flex: 0 0 33.33333333%;
    max-width: 33.33333333%;
  }

  .col-lg-5 {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 41.66666667%;
            flex: 0 0 41.66666667%;
    max-width: 41.66666667%;
  }

  .col-lg-6 {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 50%;
            flex: 0 0 50%;
    max-width: 50%;
  }

  .col-lg-7 {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 58.33333333%;
            flex: 0 0 58.33333333%;
    max-width: 58.33333333%;
  }

  .col-lg-8 {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 66.66666667%;
            flex: 0 0 66.66666667%;
    max-width: 66.66666667%;
  }

  .col-lg-9 {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 75%;
            flex: 0 0 75%;
    max-width: 75%;
  }

  .col-lg-10 {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 83.33333333%;
            flex: 0 0 83.33333333%;
    max-width: 83.33333333%;
  }

  .col-lg-11 {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 91.66666667%;
            flex: 0 0 91.66666667%;
    max-width: 91.66666667%;
  }

  .col-lg-12 {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 100%;
            flex: 0 0 100%;
    max-width: 100%;
  }

  .pull-lg-0 {
    right: auto;
  }

  .pull-lg-1 {
    right: 8.33333333%;
  }

  .pull-lg-2 {
    right: 16.66666667%;
  }

  .pull-lg-3 {
    right: 25%;
  }

  .pull-lg-4 {
    right: 33.33333333%;
  }

  .pull-lg-5 {
    right: 41.66666667%;
  }

  .pull-lg-6 {
    right: 50%;
  }

  .pull-lg-7 {
    right: 58.33333333%;
  }

  .pull-lg-8 {
    right: 66.66666667%;
  }

  .pull-lg-9 {
    right: 75%;
  }

  .pull-lg-10 {
    right: 83.33333333%;
  }

  .pull-lg-11 {
    right: 91.66666667%;
  }

  .pull-lg-12 {
    right: 100%;
  }

  .push-lg-0 {
    left: auto;
  }

  .push-lg-1 {
    left: 8.33333333%;
  }

  .push-lg-2 {
    left: 16.66666667%;
  }

  .push-lg-3 {
    left: 25%;
  }

  .push-lg-4 {
    left: 33.33333333%;
  }

  .push-lg-5 {
    left: 41.66666667%;
  }

  .push-lg-6 {
    left: 50%;
  }

  .push-lg-7 {
    left: 58.33333333%;
  }

  .push-lg-8 {
    left: 66.66666667%;
  }

  .push-lg-9 {
    left: 75%;
  }

  .push-lg-10 {
    left: 83.33333333%;
  }

  .push-lg-11 {
    left: 91.66666667%;
  }

  .push-lg-12 {
    left: 100%;
  }

  .offset-lg-0 {
    margin-left: 0%;
  }

  .offset-lg-1 {
    margin-left: 8.33333333%;
  }

  .offset-lg-2 {
    margin-left: 16.66666667%;
  }

  .offset-lg-3 {
    margin-left: 25%;
  }

  .offset-lg-4 {
    margin-left: 33.33333333%;
  }

  .offset-lg-5 {
    margin-left: 41.66666667%;
  }

  .offset-lg-6 {
    margin-left: 50%;
  }

  .offset-lg-7 {
    margin-left: 58.33333333%;
  }

  .offset-lg-8 {
    margin-left: 66.66666667%;
  }

  .offset-lg-9 {
    margin-left: 75%;
  }

  .offset-lg-10 {
    margin-left: 83.33333333%;
  }

  .offset-lg-11 {
    margin-left: 91.66666667%;
  }
}

@media (min-width: 1200px) {
  .col-xl {
    -ms-flex-preferred-size: 0;
        flex-basis: 0;
    -webkit-box-flex: 1;
        -ms-flex-positive: 1;
            flex-grow: 1;
    max-width: 100%;
  }

  .col-xl-auto {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 auto;
            flex: 0 0 auto;
    width: auto;
  }

  .col-xl-1 {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 8.33333333%;
            flex: 0 0 8.33333333%;
    max-width: 8.33333333%;
  }

  .col-xl-2 {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 16.66666667%;
            flex: 0 0 16.66666667%;
    max-width: 16.66666667%;
  }

  .col-xl-3 {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 25%;
            flex: 0 0 25%;
    max-width: 25%;
  }

  .col-xl-4 {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 33.33333333%;
            flex: 0 0 33.33333333%;
    max-width: 33.33333333%;
  }

  .col-xl-5 {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 41.66666667%;
            flex: 0 0 41.66666667%;
    max-width: 41.66666667%;
  }

  .col-xl-6 {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 50%;
            flex: 0 0 50%;
    max-width: 50%;
  }

  .col-xl-7 {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 58.33333333%;
            flex: 0 0 58.33333333%;
    max-width: 58.33333333%;
  }

  .col-xl-8 {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 66.66666667%;
            flex: 0 0 66.66666667%;
    max-width: 66.66666667%;
  }

  .col-xl-9 {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 75%;
            flex: 0 0 75%;
    max-width: 75%;
  }

  .col-xl-10 {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 83.33333333%;
            flex: 0 0 83.33333333%;
    max-width: 83.33333333%;
  }

  .col-xl-11 {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 91.66666667%;
            flex: 0 0 91.66666667%;
    max-width: 91.66666667%;
  }

  .col-xl-12 {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 100%;
            flex: 0 0 100%;
    max-width: 100%;
  }

  .pull-xl-0 {
    right: auto;
  }

  .pull-xl-1 {
    right: 8.33333333%;
  }

  .pull-xl-2 {
    right: 16.66666667%;
  }

  .pull-xl-3 {
    right: 25%;
  }

  .pull-xl-4 {
    right: 33.33333333%;
  }

  .pull-xl-5 {
    right: 41.66666667%;
  }

  .pull-xl-6 {
    right: 50%;
  }

  .pull-xl-7 {
    right: 58.33333333%;
  }

  .pull-xl-8 {
    right: 66.66666667%;
  }

  .pull-xl-9 {
    right: 75%;
  }

  .pull-xl-10 {
    right: 83.33333333%;
  }

  .pull-xl-11 {
    right: 91.66666667%;
  }

  .pull-xl-12 {
    right: 100%;
  }

  .push-xl-0 {
    left: auto;
  }

  .push-xl-1 {
    left: 8.33333333%;
  }

  .push-xl-2 {
    left: 16.66666667%;
  }

  .push-xl-3 {
    left: 25%;
  }

  .push-xl-4 {
    left: 33.33333333%;
  }

  .push-xl-5 {
    left: 41.66666667%;
  }

  .push-xl-6 {
    left: 50%;
  }

  .push-xl-7 {
    left: 58.33333333%;
  }

  .push-xl-8 {
    left: 66.66666667%;
  }

  .push-xl-9 {
    left: 75%;
  }

  .push-xl-10 {
    left: 83.33333333%;
  }

  .push-xl-11 {
    left: 91.66666667%;
  }

  .push-xl-12 {
    left: 100%;
  }

  .offset-xl-0 {
    margin-left: 0%;
  }

  .offset-xl-1 {
    margin-left: 8.33333333%;
  }

  .offset-xl-2 {
    margin-left: 16.66666667%;
  }

  .offset-xl-3 {
    margin-left: 25%;
  }

  .offset-xl-4 {
    margin-left: 33.33333333%;
  }

  .offset-xl-5 {
    margin-left: 41.66666667%;
  }

  .offset-xl-6 {
    margin-left: 50%;
  }

  .offset-xl-7 {
    margin-left: 58.33333333%;
  }

  .offset-xl-8 {
    margin-left: 66.66666667%;
  }

  .offset-xl-9 {
    margin-left: 75%;
  }

  .offset-xl-10 {
    margin-left: 83.33333333%;
  }

  .offset-xl-11 {
    margin-left: 91.66666667%;
  }
}

.table {
  width: 100%;
  max-width: 100%;
  margin-bottom: 1rem;
}

.table th,
.table td {
  padding: 0.75rem;
  vertical-align: top;
  border-top: 1px solid #eceeef;
}

.table thead th {
  vertical-align: bottom;
  border-bottom: 2px solid #eceeef;
}

.table tbody + tbody {
  border-top: 2px solid #eceeef;
}

.table .table {
  background-color: #fff;
}

.table-sm th,
.table-sm td {
  padding: 0.3rem;
}

.table-bordered {
  border: 1px solid #eceeef;
}

.table-bordered th,
.table-bordered td {
  border: 1px solid #eceeef;
}

.table-bordered thead th,
.table-bordered thead td {
  border-bottom-width: 2px;
}

.table-striped tbody tr:nth-of-type(odd) {
  background-color: rgba(0, 0, 0, 0.05);
}

.table-hover tbody tr:hover {
  background-color: rgba(0, 0, 0, 0.075);
}

.table-active,
.table-active > th,
.table-active > td {
  background-color: rgba(0, 0, 0, 0.075);
}

.table-hover .table-active:hover {
  background-color: rgba(0, 0, 0, 0.075);
}

.table-hover .table-active:hover > td,
.table-hover .table-active:hover > th {
  background-color: rgba(0, 0, 0, 0.075);
}

.table-success,
.table-success > th,
.table-success > td {
  background-color: #dff0d8;
}

.table-hover .table-success:hover {
  background-color: #d0e9c6;
}

.table-hover .table-success:hover > td,
.table-hover .table-success:hover > th {
  background-color: #d0e9c6;
}

.table-info,
.table-info > th,
.table-info > td {
  background-color: #d9edf7;
}

.table-hover .table-info:hover {
  background-color: #c4e3f3;
}

.table-hover .table-info:hover > td,
.table-hover .table-info:hover > th {
  background-color: #c4e3f3;
}

.table-warning,
.table-warning > th,
.table-warning > td {
  background-color: #fcf8e3;
}

.table-hover .table-warning:hover {
  background-color: #faf2cc;
}

.table-hover .table-warning:hover > td,
.table-hover .table-warning:hover > th {
  background-color: #faf2cc;
}

.table-danger,
.table-danger > th,
.table-danger > td {
  background-color: #f2dede;
}

.table-hover .table-danger:hover {
  background-color: #ebcccc;
}

.table-hover .table-danger:hover > td,
.table-hover .table-danger:hover > th {
  background-color: #ebcccc;
}

.thead-inverse th {
  color: #fff;
  background-color: #292b2c;
}

.thead-default th {
  color: #464a4c;
  background-color: #eceeef;
}

.table-inverse {
  color: #fff;
  background-color: #292b2c;
}

.table-inverse th,
.table-inverse td,
.table-inverse thead th {
  border-color: #fff;
}

.table-inverse.table-bordered {
  border: 0;
}

.table-responsive {
  display: block;
  width: 100%;
  overflow-x: auto;
  -ms-overflow-style: -ms-autohiding-scrollbar;
}

.table-responsive.table-bordered {
  border: 0;
}

.form-control,
.comment-form input[type="text"],
.comment-form input[type="email"],
.comment-form input[type="url"],
.comment-form textarea,
.search-form .search-field {
  display: block;
  width: 100%;
  padding: 0.5rem 0.75rem;
  font-size: 1rem;
  line-height: 1.25;
  color: #464a4c;
  background-color: #fff;
  background-image: none;
  background-clip: padding-box;
  border: 1px solid rgba(0, 0, 0, 0.15);
  border-radius: 0.25rem;
  -webkit-transition: border-color ease-in-out 0.15s, box-shadow ease-in-out 0.15s;
  transition: border-color ease-in-out 0.15s, box-shadow ease-in-out 0.15s;
}

.form-control::-ms-expand,
.comment-form input[type="text"]::-ms-expand,
.comment-form input[type="email"]::-ms-expand,
.comment-form input[type="url"]::-ms-expand,
.comment-form textarea::-ms-expand,
.search-form .search-field::-ms-expand {
  background-color: transparent;
  border: 0;
}

.form-control:focus,
.comment-form input[type="text"]:focus,
.comment-form input[type="email"]:focus,
.comment-form input[type="url"]:focus,
.comment-form textarea:focus,
.search-form .search-field:focus {
  color: #464a4c;
  background-color: #fff;
  border-color: #75e0a2;
  outline: none;
}

.form-control::-webkit-input-placeholder,
.comment-form input[type="text"]::-webkit-input-placeholder,
.comment-form input[type="email"]::-webkit-input-placeholder,
.comment-form input[type="url"]::-webkit-input-placeholder,
.comment-form textarea::-webkit-input-placeholder,
.search-form .search-field::-webkit-input-placeholder {
  color: #636c72;
  opacity: 1;
}

.form-control:-ms-input-placeholder,
.comment-form input[type="text"]:-ms-input-placeholder,
.comment-form input[type="email"]:-ms-input-placeholder,
.comment-form input[type="url"]:-ms-input-placeholder,
.comment-form textarea:-ms-input-placeholder,
.search-form .search-field:-ms-input-placeholder {
  color: #636c72;
  opacity: 1;
}

.form-control::placeholder,
.comment-form input[type="text"]::placeholder,
.comment-form input[type="email"]::placeholder,
.comment-form input[type="url"]::placeholder,
.comment-form textarea::placeholder,
.search-form .search-field::placeholder {
  color: #636c72;
  opacity: 1;
}

.form-control:disabled,
.comment-form input[type="text"]:disabled,
.comment-form input[type="email"]:disabled,
.comment-form input[type="url"]:disabled,
.comment-form textarea:disabled,
.search-form .search-field:disabled,
.form-control[readonly],
.comment-form input[readonly][type="text"],
.comment-form input[readonly][type="email"],
.comment-form input[readonly][type="url"],
.comment-form textarea[readonly],
.search-form [readonly].search-field {
  background-color: #eceeef;
  opacity: 1;
}

.form-control:disabled,
.comment-form input[type="text"]:disabled,
.comment-form input[type="email"]:disabled,
.comment-form input[type="url"]:disabled,
.comment-form textarea:disabled,
.search-form .search-field:disabled {
  cursor: not-allowed;
}

select.form-control:not([size]):not([multiple]),
.search-form select.search-field:not([size]):not([multiple]) {
  height: calc(2.25rem + 2px);
}

select.form-control:focus::-ms-value,
.search-form select.search-field:focus::-ms-value {
  color: #464a4c;
  background-color: #fff;
}

.form-control-file,
.form-control-range {
  display: block;
}

.col-form-label {
  padding-top: calc(0.5rem - 1px * 2);
  padding-bottom: calc(0.5rem - 1px * 2);
  margin-bottom: 0;
}

.col-form-label-lg {
  padding-top: calc(0.75rem - 1px * 2);
  padding-bottom: calc(0.75rem - 1px * 2);
  font-size: 1.25rem;
}

.col-form-label-sm {
  padding-top: calc(0.25rem - 1px * 2);
  padding-bottom: calc(0.25rem - 1px * 2);
  font-size: 0.875rem;
}

.col-form-legend {
  padding-top: 0.5rem;
  padding-bottom: 0.5rem;
  margin-bottom: 0;
  font-size: 1rem;
}

.form-control-static {
  padding-top: 0.5rem;
  padding-bottom: 0.5rem;
  margin-bottom: 0;
  line-height: 1.25;
  border: solid transparent;
  border-width: 1px 0;
}

.form-control-static.form-control-sm,
.input-group-sm > .form-control-static.form-control,
.comment-form .input-group-sm > input.form-control-static[type="text"],
.comment-form .input-group-sm > input.form-control-static[type="email"],
.comment-form .input-group-sm > input.form-control-static[type="url"],
.comment-form .input-group-sm > textarea.form-control-static,
.search-form .input-group-sm > .form-control-static.search-field,
.input-group-sm > .form-control-static.input-group-addon,
.input-group-sm > .input-group-btn > .form-control-static.btn,
.comment-form
.input-group-sm > .input-group-btn > input.form-control-static[type="submit"],
.search-form
.input-group-sm > .input-group-btn > .form-control-static.search-submit,
.form-control-static.form-control-lg,
.input-group-lg > .form-control-static.form-control,
.comment-form .input-group-lg > input.form-control-static[type="text"],
.comment-form .input-group-lg > input.form-control-static[type="email"],
.comment-form .input-group-lg > input.form-control-static[type="url"],
.comment-form .input-group-lg > textarea.form-control-static,
.search-form .input-group-lg > .form-control-static.search-field,
.input-group-lg > .form-control-static.input-group-addon,
.input-group-lg > .input-group-btn > .form-control-static.btn,
.comment-form
.input-group-lg > .input-group-btn > input.form-control-static[type="submit"],
.search-form
.input-group-lg > .input-group-btn > .form-control-static.search-submit {
  padding-right: 0;
  padding-left: 0;
}

.form-control-sm,
.input-group-sm > .form-control,
.comment-form .input-group-sm > input[type="text"],
.comment-form .input-group-sm > input[type="email"],
.comment-form .input-group-sm > input[type="url"],
.comment-form .input-group-sm > textarea,
.search-form .input-group-sm > .search-field,
.input-group-sm > .input-group-addon,
.input-group-sm > .input-group-btn > .btn,
.comment-form
.input-group-sm > .input-group-btn > input[type="submit"],
.search-form
.input-group-sm > .input-group-btn > .search-submit {
  padding: 0.25rem 0.5rem;
  font-size: 0.875rem;
  border-radius: 0.2rem;
}

select.form-control-sm:not([size]):not([multiple]),
.input-group-sm > select.form-control:not([size]):not([multiple]),
.search-form .input-group-sm > select.search-field:not([size]):not([multiple]),
.input-group-sm > select.input-group-addon:not([size]):not([multiple]),
.input-group-sm > .input-group-btn > select.btn:not([size]):not([multiple]),
.search-form
.input-group-sm > .input-group-btn > select.search-submit:not([size]):not([multiple]) {
  height: 1.8125rem;
}

.form-control-lg,
.input-group-lg > .form-control,
.comment-form .input-group-lg > input[type="text"],
.comment-form .input-group-lg > input[type="email"],
.comment-form .input-group-lg > input[type="url"],
.comment-form .input-group-lg > textarea,
.search-form .input-group-lg > .search-field,
.input-group-lg > .input-group-addon,
.input-group-lg > .input-group-btn > .btn,
.comment-form
.input-group-lg > .input-group-btn > input[type="submit"],
.search-form
.input-group-lg > .input-group-btn > .search-submit {
  padding: 0.75rem 1.5rem;
  font-size: 1.25rem;
  border-radius: 0.3rem;
}

select.form-control-lg:not([size]):not([multiple]),
.input-group-lg > select.form-control:not([size]):not([multiple]),
.search-form .input-group-lg > select.search-field:not([size]):not([multiple]),
.input-group-lg > select.input-group-addon:not([size]):not([multiple]),
.input-group-lg > .input-group-btn > select.btn:not([size]):not([multiple]),
.search-form
.input-group-lg > .input-group-btn > select.search-submit:not([size]):not([multiple]) {
  height: 3.16666667rem;
}

.form-group,
.comment-form p,
.search-form label {
  margin-bottom: 1rem;
}

.form-text {
  display: block;
  margin-top: 0.25rem;
}

.form-check {
  position: relative;
  display: block;
  margin-bottom: 0.5rem;
}

.form-check.disabled .form-check-label {
  color: #636c72;
  cursor: not-allowed;
}

.form-check-label {
  padding-left: 1.25rem;
  margin-bottom: 0;
  cursor: pointer;
}

.form-check-input {
  position: absolute;
  margin-top: 0.25rem;
  margin-left: -1.25rem;
}

.form-check-input:only-child {
  position: static;
}

.form-check-inline {
  display: inline-block;
}

.form-check-inline .form-check-label {
  vertical-align: middle;
}

.form-check-inline + .form-check-inline {
  margin-left: 0.75rem;
}

.form-control-feedback {
  margin-top: 0.25rem;
}

.form-control-success,
.form-control-warning,
.form-control-danger {
  padding-right: 2.25rem;
  background-repeat: no-repeat;
  background-position: center right 0.5625rem;
  background-size: 1.125rem 1.125rem;
}

.has-success .form-control-feedback,
.has-success .form-control-label,
.has-success .col-form-label,
.has-success .form-check-label,
.has-success .custom-control {
  color: #5cb85c;
}

.has-success .form-control,
.has-success .comment-form input[type="text"],
.comment-form .has-success input[type="text"],
.has-success
.comment-form input[type="email"],
.comment-form .has-success input[type="email"],
.has-success
.comment-form input[type="url"],
.comment-form .has-success input[type="url"],
.has-success
.comment-form textarea,
.comment-form .has-success textarea,
.has-success .search-form .search-field,
.search-form .has-success .search-field {
  border-color: #5cb85c;
}

.has-success .input-group-addon {
  color: #5cb85c;
  border-color: #5cb85c;
  background-color: #eaf6ea;
}

.has-success .form-control-success {
  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='%235cb85c' d='M2.3 6.73L.6 4.53c-.4-1.04.46-1.4 1.1-.8l1.1 1.4 3.4-3.8c.6-.63 1.6-.27 1.2.7l-4 4.6c-.43.5-.8.4-1.1.1z'/%3E%3C/svg%3E");
}

.has-warning .form-control-feedback,
.has-warning .form-control-label,
.has-warning .col-form-label,
.has-warning .form-check-label,
.has-warning .custom-control {
  color: #f0ad4e;
}

.has-warning .form-control,
.has-warning .comment-form input[type="text"],
.comment-form .has-warning input[type="text"],
.has-warning
.comment-form input[type="email"],
.comment-form .has-warning input[type="email"],
.has-warning
.comment-form input[type="url"],
.comment-form .has-warning input[type="url"],
.has-warning
.comment-form textarea,
.comment-form .has-warning textarea,
.has-warning .search-form .search-field,
.search-form .has-warning .search-field {
  border-color: #f0ad4e;
}

.has-warning .input-group-addon {
  color: #f0ad4e;
  border-color: #f0ad4e;
  background-color: white;
}

.has-warning .form-control-warning {
  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='%23f0ad4e' d='M4.4 5.324h-.8v-2.46h.8zm0 1.42h-.8V5.89h.8zM3.76.63L.04 7.075c-.115.2.016.425.26.426h7.397c.242 0 .372-.226.258-.426C6.726 4.924 5.47 2.79 4.253.63c-.113-.174-.39-.174-.494 0z'/%3E%3C/svg%3E");
}

.has-danger .form-control-feedback,
.has-danger .form-control-label,
.has-danger .col-form-label,
.has-danger .form-check-label,
.has-danger .custom-control {
  color: #d9534f;
}

.has-danger .form-control,
.has-danger .comment-form input[type="text"],
.comment-form .has-danger input[type="text"],
.has-danger
.comment-form input[type="email"],
.comment-form .has-danger input[type="email"],
.has-danger
.comment-form input[type="url"],
.comment-form .has-danger input[type="url"],
.has-danger
.comment-form textarea,
.comment-form .has-danger textarea,
.has-danger .search-form .search-field,
.search-form .has-danger .search-field {
  border-color: #d9534f;
}

.has-danger .input-group-addon {
  color: #d9534f;
  border-color: #d9534f;
  background-color: #fdf7f7;
}

.has-danger .form-control-danger {
  background-image: url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='%23d9534f' viewBox='-2 -2 7 7'%3E%3Cpath stroke='%23d9534f' d='M0 0l3 3m0-3L0 3'/%3E%3Ccircle r='.5'/%3E%3Ccircle cx='3' r='.5'/%3E%3Ccircle cy='3' r='.5'/%3E%3Ccircle cx='3' cy='3' r='.5'/%3E%3C/svg%3E");
}

.form-inline,
.search-form {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-flow: row wrap;
          flex-flow: row wrap;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}

.form-inline .form-check,
.search-form .form-check {
  width: 100%;
}

@media (min-width: 576px) {
  .form-inline label,
  .search-form label {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    margin-bottom: 0;
  }

  .form-inline .form-group,
  .search-form .form-group,
  .form-inline .comment-form p,
  .comment-form .form-inline p,
  .search-form .comment-form p,
  .comment-form .search-form p,
  .form-inline .search-form label,
  .search-form .form-inline label,
  .search-form label {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-flex: 0;
        -ms-flex: 0 0 auto;
            flex: 0 0 auto;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-flow: row wrap;
            flex-flow: row wrap;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    margin-bottom: 0;
  }

  .form-inline .form-control,
  .search-form .form-control,
  .form-inline .comment-form input[type="text"],
  .comment-form .form-inline input[type="text"],
  .search-form .comment-form input[type="text"],
  .comment-form .search-form input[type="text"],
  .form-inline
  .comment-form input[type="email"],
  .comment-form .form-inline input[type="email"],
  .search-form
  .comment-form input[type="email"],
  .comment-form .search-form input[type="email"],
  .form-inline
  .comment-form input[type="url"],
  .comment-form .form-inline input[type="url"],
  .search-form
  .comment-form input[type="url"],
  .comment-form .search-form input[type="url"],
  .form-inline
  .comment-form textarea,
  .comment-form .form-inline textarea,
  .search-form
  .comment-form textarea,
  .comment-form .search-form textarea,
  .search-form .search-field {
    display: inline-block;
    width: auto;
    vertical-align: middle;
  }

  .form-inline .form-control-static,
  .search-form .form-control-static {
    display: inline-block;
  }

  .form-inline .input-group,
  .search-form .input-group {
    width: auto;
  }

  .form-inline .form-control-label,
  .search-form .form-control-label {
    margin-bottom: 0;
    vertical-align: middle;
  }

  .form-inline .form-check,
  .search-form .form-check {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    width: auto;
    margin-top: 0;
    margin-bottom: 0;
  }

  .form-inline .form-check-label,
  .search-form .form-check-label {
    padding-left: 0;
  }

  .form-inline .form-check-input,
  .search-form .form-check-input {
    position: relative;
    margin-top: 0;
    margin-right: 0.25rem;
    margin-left: 0;
  }

  .form-inline .custom-control,
  .search-form .custom-control {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    padding-left: 0;
  }

  .form-inline .custom-control-indicator,
  .search-form .custom-control-indicator {
    position: static;
    display: inline-block;
    margin-right: 0.25rem;
    vertical-align: text-bottom;
  }

  .form-inline .has-feedback .form-control-feedback,
  .search-form .has-feedback .form-control-feedback {
    top: 0;
  }
}

.btn,
.comment-form input[type="submit"],
.search-form .search-submit {
  display: inline-block;
  font-weight: normal;
  line-height: 1.25;
  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: 0.5rem 1rem;
  font-size: 1rem;
  border-radius: 0.25rem;
  -webkit-transition: all 0.2s ease-in-out;
  transition: all 0.2s ease-in-out;
}

.btn:focus,
.comment-form input[type="submit"]:focus,
.search-form .search-submit:focus,
.btn:hover,
.comment-form input[type="submit"]:hover,
.search-form .search-submit:hover {
  text-decoration: none;
}

.btn:focus,
.comment-form input[type="submit"]:focus,
.search-form .search-submit:focus,
.btn.focus,
.comment-form input.focus[type="submit"],
.search-form .focus.search-submit {
  outline: 0;
  box-shadow: 0 0 0 2px rgba(39, 174, 96, 0.25);
}

.btn.disabled,
.comment-form input.disabled[type="submit"],
.search-form .disabled.search-submit,
.btn:disabled,
.comment-form input[type="submit"]:disabled,
.search-form .search-submit:disabled {
  cursor: not-allowed;
  opacity: .65;
}

.btn:active,
.comment-form input[type="submit"]:active,
.search-form .search-submit:active,
.btn.active,
.comment-form input.active[type="submit"],
.search-form .active.search-submit {
  background-image: none;
}

a.btn.disabled,
.search-form a.disabled.search-submit,
fieldset[disabled] a.btn,
fieldset[disabled] .search-form a.search-submit,
.search-form
fieldset[disabled] a.search-submit {
  pointer-events: none;
}

.btn-primary {
  color: #fff;
  background-color: #27ae60;
  border-color: #27ae60;
}

.btn-primary:hover {
  color: #fff;
  background-color: #1e8449;
  border-color: #1c7c44;
}

.btn-primary:focus,
.btn-primary.focus {
  box-shadow: 0 0 0 2px rgba(39, 174, 96, 0.5);
}

.btn-primary.disabled,
.btn-primary:disabled {
  background-color: #27ae60;
  border-color: #27ae60;
}

.btn-primary:active,
.btn-primary.active,
.show > .btn-primary.dropdown-toggle {
  color: #fff;
  background-color: #1e8449;
  background-image: none;
  border-color: #1c7c44;
}

.btn-secondary,
.comment-form input[type="submit"],
.search-form .search-submit {
  color: #292b2c;
  background-color: #fff;
  border-color: #ccc;
}

.btn-secondary:hover,
.comment-form input[type="submit"]:hover,
.search-form .search-submit:hover {
  color: #292b2c;
  background-color: #e6e5e5;
  border-color: #adadad;
}

.btn-secondary:focus,
.comment-form input[type="submit"]:focus,
.search-form .search-submit:focus,
.btn-secondary.focus,
.comment-form input.focus[type="submit"],
.search-form .focus.search-submit {
  box-shadow: 0 0 0 2px rgba(204, 204, 204, 0.5);
}

.btn-secondary.disabled,
.comment-form input.disabled[type="submit"],
.search-form .disabled.search-submit,
.btn-secondary:disabled,
.comment-form input[type="submit"]:disabled,
.search-form .search-submit:disabled {
  background-color: #fff;
  border-color: #ccc;
}

.btn-secondary:active,
.comment-form input[type="submit"]:active,
.search-form .search-submit:active,
.btn-secondary.active,
.comment-form input.active[type="submit"],
.search-form .active.search-submit,
.show > .btn-secondary.dropdown-toggle,
.comment-form
.show > input.dropdown-toggle[type="submit"],
.search-form
.show > .dropdown-toggle.search-submit {
  color: #292b2c;
  background-color: #e6e5e5;
  background-image: none;
  border-color: #adadad;
}

.btn-info {
  color: #fff;
  background-color: #5bc0de;
  border-color: #5bc0de;
}

.btn-info:hover {
  color: #fff;
  background-color: #31b0d5;
  border-color: #2aabd2;
}

.btn-info:focus,
.btn-info.focus {
  box-shadow: 0 0 0 2px rgba(91, 192, 222, 0.5);
}

.btn-info.disabled,
.btn-info:disabled {
  background-color: #5bc0de;
  border-color: #5bc0de;
}

.btn-info:active,
.btn-info.active,
.show > .btn-info.dropdown-toggle {
  color: #fff;
  background-color: #31b0d5;
  background-image: none;
  border-color: #2aabd2;
}

.btn-success {
  color: #fff;
  background-color: #5cb85c;
  border-color: #5cb85c;
}

.btn-success:hover {
  color: #fff;
  background-color: #449d44;
  border-color: #419641;
}

.btn-success:focus,
.btn-success.focus {
  box-shadow: 0 0 0 2px rgba(92, 184, 92, 0.5);
}

.btn-success.disabled,
.btn-success:disabled {
  background-color: #5cb85c;
  border-color: #5cb85c;
}

.btn-success:active,
.btn-success.active,
.show > .btn-success.dropdown-toggle {
  color: #fff;
  background-color: #449d44;
  background-image: none;
  border-color: #419641;
}

.btn-warning {
  color: #fff;
  background-color: #f0ad4e;
  border-color: #f0ad4e;
}

.btn-warning:hover {
  color: #fff;
  background-color: #ec971f;
  border-color: #eb9316;
}

.btn-warning:focus,
.btn-warning.focus {
  box-shadow: 0 0 0 2px rgba(240, 173, 78, 0.5);
}

.btn-warning.disabled,
.btn-warning:disabled {
  background-color: #f0ad4e;
  border-color: #f0ad4e;
}

.btn-warning:active,
.btn-warning.active,
.show > .btn-warning.dropdown-toggle {
  color: #fff;
  background-color: #ec971f;
  background-image: none;
  border-color: #eb9316;
}

.btn-danger {
  color: #fff;
  background-color: #d9534f;
  border-color: #d9534f;
}

.btn-danger:hover {
  color: #fff;
  background-color: #c9302c;
  border-color: #c12e2a;
}

.btn-danger:focus,
.btn-danger.focus {
  box-shadow: 0 0 0 2px rgba(217, 83, 79, 0.5);
}

.btn-danger.disabled,
.btn-danger:disabled {
  background-color: #d9534f;
  border-color: #d9534f;
}

.btn-danger:active,
.btn-danger.active,
.show > .btn-danger.dropdown-toggle {
  color: #fff;
  background-color: #c9302c;
  background-image: none;
  border-color: #c12e2a;
}

.btn-outline-primary {
  color: #27ae60;
  background-image: none;
  background-color: transparent;
  border-color: #27ae60;
}

.btn-outline-primary:hover {
  color: #fff;
  background-color: #27ae60;
  border-color: #27ae60;
}

.btn-outline-primary:focus,
.btn-outline-primary.focus {
  box-shadow: 0 0 0 2px rgba(39, 174, 96, 0.5);
}

.btn-outline-primary.disabled,
.btn-outline-primary:disabled {
  color: #27ae60;
  background-color: transparent;
}

.btn-outline-primary:active,
.btn-outline-primary.active,
.show > .btn-outline-primary.dropdown-toggle {
  color: #fff;
  background-color: #27ae60;
  border-color: #27ae60;
}

.btn-outline-secondary {
  color: #ccc;
  background-image: none;
  background-color: transparent;
  border-color: #ccc;
}

.btn-outline-secondary:hover {
  color: #fff;
  background-color: #ccc;
  border-color: #ccc;
}

.btn-outline-secondary:focus,
.btn-outline-secondary.focus {
  box-shadow: 0 0 0 2px rgba(204, 204, 204, 0.5);
}

.btn-outline-secondary.disabled,
.btn-outline-secondary:disabled {
  color: #ccc;
  background-color: transparent;
}

.btn-outline-secondary:active,
.btn-outline-secondary.active,
.show > .btn-outline-secondary.dropdown-toggle {
  color: #fff;
  background-color: #ccc;
  border-color: #ccc;
}

.btn-outline-info {
  color: #5bc0de;
  background-image: none;
  background-color: transparent;
  border-color: #5bc0de;
}

.btn-outline-info:hover {
  color: #fff;
  background-color: #5bc0de;
  border-color: #5bc0de;
}

.btn-outline-info:focus,
.btn-outline-info.focus {
  box-shadow: 0 0 0 2px rgba(91, 192, 222, 0.5);
}

.btn-outline-info.disabled,
.btn-outline-info:disabled {
  color: #5bc0de;
  background-color: transparent;
}

.btn-outline-info:active,
.btn-outline-info.active,
.show > .btn-outline-info.dropdown-toggle {
  color: #fff;
  background-color: #5bc0de;
  border-color: #5bc0de;
}

.btn-outline-success {
  color: #5cb85c;
  background-image: none;
  background-color: transparent;
  border-color: #5cb85c;
}

.btn-outline-success:hover {
  color: #fff;
  background-color: #5cb85c;
  border-color: #5cb85c;
}

.btn-outline-success:focus,
.btn-outline-success.focus {
  box-shadow: 0 0 0 2px rgba(92, 184, 92, 0.5);
}

.btn-outline-success.disabled,
.btn-outline-success:disabled {
  color: #5cb85c;
  background-color: transparent;
}

.btn-outline-success:active,
.btn-outline-success.active,
.show > .btn-outline-success.dropdown-toggle {
  color: #fff;
  background-color: #5cb85c;
  border-color: #5cb85c;
}

.btn-outline-warning {
  color: #f0ad4e;
  background-image: none;
  background-color: transparent;
  border-color: #f0ad4e;
}

.btn-outline-warning:hover {
  color: #fff;
  background-color: #f0ad4e;
  border-color: #f0ad4e;
}

.btn-outline-warning:focus,
.btn-outline-warning.focus {
  box-shadow: 0 0 0 2px rgba(240, 173, 78, 0.5);
}

.btn-outline-warning.disabled,
.btn-outline-warning:disabled {
  color: #f0ad4e;
  background-color: transparent;
}

.btn-outline-warning:active,
.btn-outline-warning.active,
.show > .btn-outline-warning.dropdown-toggle {
  color: #fff;
  background-color: #f0ad4e;
  border-color: #f0ad4e;
}

.btn-outline-danger {
  color: #d9534f;
  background-image: none;
  background-color: transparent;
  border-color: #d9534f;
}

.btn-outline-danger:hover {
  color: #fff;
  background-color: #d9534f;
  border-color: #d9534f;
}

.btn-outline-danger:focus,
.btn-outline-danger.focus {
  box-shadow: 0 0 0 2px rgba(217, 83, 79, 0.5);
}

.btn-outline-danger.disabled,
.btn-outline-danger:disabled {
  color: #d9534f;
  background-color: transparent;
}

.btn-outline-danger:active,
.btn-outline-danger.active,
.show > .btn-outline-danger.dropdown-toggle {
  color: #fff;
  background-color: #d9534f;
  border-color: #d9534f;
}

.btn-link {
  font-weight: normal;
  color: #27ae60;
  border-radius: 0;
}

.btn-link,
.btn-link:active,
.btn-link.active,
.btn-link:disabled {
  background-color: transparent;
}

.btn-link,
.btn-link:focus,
.btn-link:active {
  border-color: transparent;
}

.btn-link:hover {
  border-color: transparent;
}

.btn-link:focus,
.btn-link:hover {
  color: #19703e;
  text-decoration: underline;
  background-color: transparent;
}

.btn-link:disabled {
  color: #636c72;
}

.btn-link:disabled:focus,
.btn-link:disabled:hover {
  text-decoration: none;
}

.btn-lg,
.btn-group-lg > .btn,
.comment-form .btn-group-lg > input[type="submit"],
.search-form .btn-group-lg > .search-submit {
  padding: 0.75rem 1.5rem;
  font-size: 1.25rem;
  border-radius: 0.3rem;
}

.btn-sm,
.btn-group-sm > .btn,
.comment-form .btn-group-sm > input[type="submit"],
.search-form .btn-group-sm > .search-submit {
  padding: 0.25rem 0.5rem;
  font-size: 0.875rem;
  border-radius: 0.2rem;
}

.btn-block {
  display: block;
  width: 100%;
}

.btn-block + .btn-block {
  margin-top: 0.5rem;
}

input[type="submit"].btn-block,
input[type="reset"].btn-block,
input[type="button"].btn-block {
  width: 100%;
}

.fade {
  opacity: 0;
  -webkit-transition: opacity 0.15s linear;
  transition: opacity 0.15s linear;
}

.fade.show {
  opacity: 1;
}

.collapse {
  display: none;
}

.collapse.show {
  display: block;
}

tr.collapse.show {
  display: table-row;
}

tbody.collapse.show {
  display: table-row-group;
}

.collapsing {
  position: relative;
  height: 0;
  overflow: hidden;
  -webkit-transition: height 0.35s ease;
  transition: height 0.35s ease;
}

.dropup,
.dropdown {
  position: relative;
}

.dropdown-toggle::after {
  display: inline-block;
  width: 0;
  height: 0;
  margin-left: 0.3em;
  vertical-align: middle;
  content: "";
  border-top: 0.3em solid;
  border-right: 0.3em solid transparent;
  border-left: 0.3em solid transparent;
}

.dropdown-toggle:focus {
  outline: 0;
}

.dropup .dropdown-toggle::after {
  border-top: 0;
  border-bottom: 0.3em solid;
}

.dropdown-menu {
  position: absolute;
  top: 100%;
  left: 0;
  z-index: 1000;
  display: none;
  float: left;
  min-width: 10rem;
  padding: 0.5rem 0;
  margin: 0.125rem 0 0;
  font-size: 1rem;
  color: #292b2c;
  text-align: left;
  list-style: none;
  background-color: #fff;
  background-clip: padding-box;
  border: 1px solid rgba(0, 0, 0, 0.15);
  border-radius: 0.25rem;
}

.dropdown-divider {
  height: 1px;
  margin: 0.5rem 0;
  overflow: hidden;
  background-color: #eceeef;
}

.dropdown-item {
  display: block;
  width: 100%;
  padding: 3px 1.5rem;
  clear: both;
  font-weight: normal;
  color: #292b2c;
  text-align: inherit;
  white-space: nowrap;
  background: none;
  border: 0;
}

.dropdown-item:focus,
.dropdown-item:hover {
  color: #1d1e1f;
  text-decoration: none;
  background-color: #f7f7f9;
}

.dropdown-item.active,
.dropdown-item:active {
  color: #fff;
  text-decoration: none;
  background-color: #27ae60;
}

.dropdown-item.disabled,
.dropdown-item:disabled {
  color: #636c72;
  cursor: not-allowed;
  background-color: transparent;
}

.show > .dropdown-menu {
  display: block;
}

.show > a {
  outline: 0;
}

.dropdown-menu-right {
  right: 0;
  left: auto;
}

.dropdown-menu-left {
  right: auto;
  left: 0;
}

.dropdown-header {
  display: block;
  padding: 0.5rem 1.5rem;
  margin-bottom: 0;
  font-size: 0.875rem;
  color: #636c72;
  white-space: nowrap;
}

.dropdown-backdrop {
  position: fixed;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 990;
}

.dropup .dropdown-menu {
  top: auto;
  bottom: 100%;
  margin-bottom: 0.125rem;
}

.btn-group,
.btn-group-vertical {
  position: relative;
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  vertical-align: middle;
}

.btn-group > .btn,
.comment-form .btn-group > input[type="submit"],
.search-form .btn-group > .search-submit,
.btn-group-vertical > .btn,
.comment-form
.btn-group-vertical > input[type="submit"],
.search-form
.btn-group-vertical > .search-submit {
  position: relative;
  -webkit-box-flex: 0;
      -ms-flex: 0 1 auto;
          flex: 0 1 auto;
}

.btn-group > .btn:hover,
.comment-form .btn-group > input[type="submit"]:hover,
.search-form .btn-group > .search-submit:hover,
.btn-group-vertical > .btn:hover,
.comment-form
.btn-group-vertical > input[type="submit"]:hover,
.search-form
.btn-group-vertical > .search-submit:hover {
  z-index: 2;
}

.btn-group > .btn:focus,
.comment-form .btn-group > input[type="submit"]:focus,
.search-form .btn-group > .search-submit:focus,
.btn-group > .btn:active,
.comment-form .btn-group > input[type="submit"]:active,
.search-form .btn-group > .search-submit:active,
.btn-group > .btn.active,
.comment-form .btn-group > input.active[type="submit"],
.search-form .btn-group > .active.search-submit,
.btn-group-vertical > .btn:focus,
.comment-form
.btn-group-vertical > input[type="submit"]:focus,
.search-form
.btn-group-vertical > .search-submit:focus,
.btn-group-vertical > .btn:active,
.comment-form
.btn-group-vertical > input[type="submit"]:active,
.search-form
.btn-group-vertical > .search-submit:active,
.btn-group-vertical > .btn.active,
.comment-form
.btn-group-vertical > input.active[type="submit"],
.search-form
.btn-group-vertical > .active.search-submit {
  z-index: 2;
}

.btn-group .btn + .btn,
.btn-group .comment-form input[type="submit"] + .btn,
.comment-form .btn-group input[type="submit"] + .btn,
.btn-group .search-form .search-submit + .btn,
.search-form .btn-group .search-submit + .btn,
.btn-group .comment-form .btn + input[type="submit"],
.comment-form .btn-group .btn + input[type="submit"],
.btn-group .comment-form input[type="submit"] + input[type="submit"],
.comment-form .btn-group input[type="submit"] + input[type="submit"],
.btn-group .search-form .comment-form .search-submit + input[type="submit"],
.comment-form .btn-group .search-form .search-submit + input[type="submit"],
.search-form .btn-group .comment-form .search-submit + input[type="submit"],
.comment-form .search-form .btn-group .search-submit + input[type="submit"],
.btn-group .search-form .btn + .search-submit,
.search-form .btn-group .btn + .search-submit,
.btn-group .comment-form .search-form input[type="submit"] + .search-submit,
.search-form .btn-group .comment-form input[type="submit"] + .search-submit,
.comment-form .btn-group .search-form input[type="submit"] + .search-submit,
.search-form .comment-form .btn-group input[type="submit"] + .search-submit,
.btn-group .search-form .search-submit + .search-submit,
.search-form .btn-group .search-submit + .search-submit,
.btn-group .btn + .btn-group,
.btn-group .comment-form input[type="submit"] + .btn-group,
.comment-form
.btn-group input[type="submit"] + .btn-group,
.btn-group .search-form .search-submit + .btn-group,
.search-form
.btn-group .search-submit + .btn-group,
.btn-group .btn-group + .btn,
.btn-group .comment-form .btn-group + input[type="submit"],
.comment-form
.btn-group .btn-group + input[type="submit"],
.btn-group .search-form .btn-group + .search-submit,
.search-form
.btn-group .btn-group + .search-submit,
.btn-group .btn-group + .btn-group,
.btn-group-vertical .btn + .btn,
.btn-group-vertical .comment-form input[type="submit"] + .btn,
.comment-form
.btn-group-vertical input[type="submit"] + .btn,
.btn-group-vertical .search-form .search-submit + .btn,
.search-form
.btn-group-vertical .search-submit + .btn,
.btn-group-vertical .comment-form .btn + input[type="submit"],
.comment-form
.btn-group-vertical .btn + input[type="submit"],
.btn-group-vertical .comment-form input[type="submit"] + input[type="submit"],
.comment-form
.btn-group-vertical input[type="submit"] + input[type="submit"],
.btn-group-vertical .search-form .comment-form .search-submit + input[type="submit"],
.comment-form
.btn-group-vertical .search-form .search-submit + input[type="submit"],
.search-form
.btn-group-vertical .comment-form .search-submit + input[type="submit"],
.comment-form .search-form
.btn-group-vertical .search-submit + input[type="submit"],
.btn-group-vertical .search-form .btn + .search-submit,
.search-form
.btn-group-vertical .btn + .search-submit,
.btn-group-vertical .comment-form .search-form input[type="submit"] + .search-submit,
.search-form
.btn-group-vertical .comment-form input[type="submit"] + .search-submit,
.comment-form
.btn-group-vertical .search-form input[type="submit"] + .search-submit,
.search-form .comment-form
.btn-group-vertical input[type="submit"] + .search-submit,
.btn-group-vertical .search-form .search-submit + .search-submit,
.search-form
.btn-group-vertical .search-submit + .search-submit,
.btn-group-vertical .btn + .btn-group,
.btn-group-vertical .comment-form input[type="submit"] + .btn-group,
.comment-form
.btn-group-vertical input[type="submit"] + .btn-group,
.btn-group-vertical .search-form .search-submit + .btn-group,
.search-form
.btn-group-vertical .search-submit + .btn-group,
.btn-group-vertical .btn-group + .btn,
.btn-group-vertical .comment-form .btn-group + input[type="submit"],
.comment-form
.btn-group-vertical .btn-group + input[type="submit"],
.btn-group-vertical .search-form .btn-group + .search-submit,
.search-form
.btn-group-vertical .btn-group + .search-submit,
.btn-group-vertical .btn-group + .btn-group {
  margin-left: -1px;
}

.btn-toolbar {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
}

.btn-toolbar .input-group {
  width: auto;
}

.btn-group > .btn:not(:first-child):not(:last-child):not(.dropdown-toggle),
.comment-form .btn-group > input[type="submit"]:not(:first-child):not(:last-child):not(.dropdown-toggle),
.search-form .btn-group > .search-submit:not(:first-child):not(:last-child):not(.dropdown-toggle) {
  border-radius: 0;
}

.btn-group > .btn:first-child,
.comment-form .btn-group > input[type="submit"]:first-child,
.search-form .btn-group > .search-submit:first-child {
  margin-left: 0;
}

.btn-group > .btn:first-child:not(:last-child):not(.dropdown-toggle),
.comment-form .btn-group > input[type="submit"]:first-child:not(:last-child):not(.dropdown-toggle),
.search-form .btn-group > .search-submit:first-child:not(:last-child):not(.dropdown-toggle) {
  border-bottom-right-radius: 0;
  border-top-right-radius: 0;
}

.btn-group > .btn:last-child:not(:first-child),
.comment-form .btn-group > input[type="submit"]:last-child:not(:first-child),
.search-form .btn-group > .search-submit:last-child:not(:first-child),
.btn-group > .dropdown-toggle:not(:first-child) {
  border-bottom-left-radius: 0;
  border-top-left-radius: 0;
}

.btn-group > .btn-group {
  float: left;
}

.btn-group > .btn-group:not(:first-child):not(:last-child) > .btn,
.comment-form .btn-group > .btn-group:not(:first-child):not(:last-child) > input[type="submit"],
.search-form .btn-group > .btn-group:not(:first-child):not(:last-child) > .search-submit {
  border-radius: 0;
}

.btn-group > .btn-group:first-child:not(:last-child) > .btn:last-child,
.comment-form .btn-group > .btn-group:first-child:not(:last-child) > input[type="submit"]:last-child,
.search-form .btn-group > .btn-group:first-child:not(:last-child) > .search-submit:last-child,
.btn-group > .btn-group:first-child:not(:last-child) > .dropdown-toggle {
  border-bottom-right-radius: 0;
  border-top-right-radius: 0;
}

.btn-group > .btn-group:last-child:not(:first-child) > .btn:first-child,
.comment-form .btn-group > .btn-group:last-child:not(:first-child) > input[type="submit"]:first-child,
.search-form .btn-group > .btn-group:last-child:not(:first-child) > .search-submit:first-child {
  border-bottom-left-radius: 0;
  border-top-left-radius: 0;
}

.btn-group .dropdown-toggle:active,
.btn-group.open .dropdown-toggle {
  outline: 0;
}

.btn + .dropdown-toggle-split,
.comment-form input[type="submit"] + .dropdown-toggle-split,
.search-form .search-submit + .dropdown-toggle-split {
  padding-right: 0.75rem;
  padding-left: 0.75rem;
}

.btn + .dropdown-toggle-split::after,
.comment-form input[type="submit"] + .dropdown-toggle-split::after,
.search-form .search-submit + .dropdown-toggle-split::after {
  margin-left: 0;
}

.btn-sm + .dropdown-toggle-split,
.btn-group-sm > .btn + .dropdown-toggle-split,
.comment-form .btn-group-sm > input[type="submit"] + .dropdown-toggle-split,
.search-form .btn-group-sm > .search-submit + .dropdown-toggle-split {
  padding-right: 0.375rem;
  padding-left: 0.375rem;
}

.btn-lg + .dropdown-toggle-split,
.btn-group-lg > .btn + .dropdown-toggle-split,
.comment-form .btn-group-lg > input[type="submit"] + .dropdown-toggle-split,
.search-form .btn-group-lg > .search-submit + .dropdown-toggle-split {
  padding-right: 1.125rem;
  padding-left: 1.125rem;
}

.btn-group-vertical {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}

.btn-group-vertical .btn,
.btn-group-vertical .comment-form input[type="submit"],
.comment-form .btn-group-vertical input[type="submit"],
.btn-group-vertical .search-form .search-submit,
.search-form .btn-group-vertical .search-submit,
.btn-group-vertical .btn-group {
  width: 100%;
}

.btn-group-vertical > .btn + .btn,
.comment-form .btn-group-vertical > input[type="submit"] + .btn,
.search-form .btn-group-vertical > .search-submit + .btn,
.comment-form .btn-group-vertical > .btn + input[type="submit"],
.comment-form .btn-group-vertical > input[type="submit"] + input[type="submit"],
.search-form .comment-form .btn-group-vertical > .search-submit + input[type="submit"],
.comment-form .search-form .btn-group-vertical > .search-submit + input[type="submit"],
.search-form .btn-group-vertical > .btn + .search-submit,
.comment-form .search-form .btn-group-vertical > input[type="submit"] + .search-submit,
.search-form .comment-form .btn-group-vertical > input[type="submit"] + .search-submit,
.search-form .btn-group-vertical > .search-submit + .search-submit,
.btn-group-vertical > .btn + .btn-group,
.comment-form
.btn-group-vertical > input[type="submit"] + .btn-group,
.search-form
.btn-group-vertical > .search-submit + .btn-group,
.btn-group-vertical > .btn-group + .btn,
.comment-form
.btn-group-vertical > .btn-group + input[type="submit"],
.search-form
.btn-group-vertical > .btn-group + .search-submit,
.btn-group-vertical > .btn-group + .btn-group {
  margin-top: -1px;
  margin-left: 0;
}

.btn-group-vertical > .btn:not(:first-child):not(:last-child),
.comment-form .btn-group-vertical > input[type="submit"]:not(:first-child):not(:last-child),
.search-form .btn-group-vertical > .search-submit:not(:first-child):not(:last-child) {
  border-radius: 0;
}

.btn-group-vertical > .btn:first-child:not(:last-child),
.comment-form .btn-group-vertical > input[type="submit"]:first-child:not(:last-child),
.search-form .btn-group-vertical > .search-submit:first-child:not(:last-child) {
  border-bottom-right-radius: 0;
  border-bottom-left-radius: 0;
}

.btn-group-vertical > .btn:last-child:not(:first-child),
.comment-form .btn-group-vertical > input[type="submit"]:last-child:not(:first-child),
.search-form .btn-group-vertical > .search-submit:last-child:not(:first-child) {
  border-top-right-radius: 0;
  border-top-left-radius: 0;
}

.btn-group-vertical > .btn-group:not(:first-child):not(:last-child) > .btn,
.comment-form .btn-group-vertical > .btn-group:not(:first-child):not(:last-child) > input[type="submit"],
.search-form .btn-group-vertical > .btn-group:not(:first-child):not(:last-child) > .search-submit {
  border-radius: 0;
}

.btn-group-vertical > .btn-group:first-child:not(:last-child) > .btn:last-child,
.comment-form .btn-group-vertical > .btn-group:first-child:not(:last-child) > input[type="submit"]:last-child,
.search-form .btn-group-vertical > .btn-group:first-child:not(:last-child) > .search-submit:last-child,
.btn-group-vertical > .btn-group:first-child:not(:last-child) > .dropdown-toggle {
  border-bottom-right-radius: 0;
  border-bottom-left-radius: 0;
}

.btn-group-vertical > .btn-group:last-child:not(:first-child) > .btn:first-child,
.comment-form .btn-group-vertical > .btn-group:last-child:not(:first-child) > input[type="submit"]:first-child,
.search-form .btn-group-vertical > .btn-group:last-child:not(:first-child) > .search-submit:first-child {
  border-top-right-radius: 0;
  border-top-left-radius: 0;
}

[data-toggle="buttons"] > .btn input[type="radio"],
.comment-form [data-toggle="buttons"] > input[type="submit"] input[type="radio"],
.search-form [data-toggle="buttons"] > .search-submit input[type="radio"],
[data-toggle="buttons"] > .btn input[type="checkbox"],
.comment-form
[data-toggle="buttons"] > input[type="submit"] input[type="checkbox"],
.search-form
[data-toggle="buttons"] > .search-submit input[type="checkbox"],
[data-toggle="buttons"] > .btn-group > .btn input[type="radio"],
.comment-form
[data-toggle="buttons"] > .btn-group > input[type="submit"] input[type="radio"],
.search-form
[data-toggle="buttons"] > .btn-group > .search-submit input[type="radio"],
[data-toggle="buttons"] > .btn-group > .btn input[type="checkbox"],
.comment-form
[data-toggle="buttons"] > .btn-group > input[type="submit"] input[type="checkbox"],
.search-form
[data-toggle="buttons"] > .btn-group > .search-submit input[type="checkbox"] {
  position: absolute;
  clip: rect(0, 0, 0, 0);
  pointer-events: none;
}

.input-group {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  width: 100%;
}

.input-group .form-control,
.input-group .comment-form input[type="text"],
.comment-form .input-group input[type="text"],
.input-group
.comment-form input[type="email"],
.comment-form .input-group input[type="email"],
.input-group
.comment-form input[type="url"],
.comment-form .input-group input[type="url"],
.input-group
.comment-form textarea,
.comment-form .input-group textarea,
.input-group .search-form .search-field,
.search-form .input-group .search-field {
  position: relative;
  z-index: 2;
  -webkit-box-flex: 1;
      -ms-flex: 1 1 auto;
          flex: 1 1 auto;
  width: 1%;
  margin-bottom: 0;
}

.input-group .form-control:focus,
.input-group .comment-form input[type="text"]:focus,
.comment-form .input-group input[type="text"]:focus,
.input-group
.comment-form input[type="email"]:focus,
.comment-form .input-group input[type="email"]:focus,
.input-group
.comment-form input[type="url"]:focus,
.comment-form .input-group input[type="url"]:focus,
.input-group
.comment-form textarea:focus,
.comment-form .input-group textarea:focus,
.input-group .search-form .search-field:focus,
.search-form .input-group .search-field:focus,
.input-group .form-control:active,
.input-group .comment-form input[type="text"]:active,
.comment-form .input-group input[type="text"]:active,
.input-group
.comment-form input[type="email"]:active,
.comment-form .input-group input[type="email"]:active,
.input-group
.comment-form input[type="url"]:active,
.comment-form .input-group input[type="url"]:active,
.input-group
.comment-form textarea:active,
.comment-form .input-group textarea:active,
.input-group .search-form .search-field:active,
.search-form .input-group .search-field:active,
.input-group .form-control:hover,
.input-group .comment-form input[type="text"]:hover,
.comment-form .input-group input[type="text"]:hover,
.input-group
.comment-form input[type="email"]:hover,
.comment-form .input-group input[type="email"]:hover,
.input-group
.comment-form input[type="url"]:hover,
.comment-form .input-group input[type="url"]:hover,
.input-group
.comment-form textarea:hover,
.comment-form .input-group textarea:hover,
.input-group .search-form .search-field:hover,
.search-form .input-group .search-field:hover {
  z-index: 3;
}

.input-group-addon,
.input-group-btn,
.input-group .form-control,
.input-group .comment-form input[type="text"],
.comment-form
.input-group input[type="text"],
.input-group
.comment-form input[type="email"],
.comment-form
.input-group input[type="email"],
.input-group
.comment-form input[type="url"],
.comment-form
.input-group input[type="url"],
.input-group
.comment-form textarea,
.comment-form
.input-group textarea,
.input-group .search-form .search-field,
.search-form
.input-group .search-field {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}

.input-group-addon:not(:first-child):not(:last-child),
.input-group-btn:not(:first-child):not(:last-child),
.input-group .form-control:not(:first-child):not(:last-child),
.input-group .comment-form input[type="text"]:not(:first-child):not(:last-child),
.comment-form
.input-group input[type="text"]:not(:first-child):not(:last-child),
.input-group
.comment-form input[type="email"]:not(:first-child):not(:last-child),
.comment-form
.input-group input[type="email"]:not(:first-child):not(:last-child),
.input-group
.comment-form input[type="url"]:not(:first-child):not(:last-child),
.comment-form
.input-group input[type="url"]:not(:first-child):not(:last-child),
.input-group
.comment-form textarea:not(:first-child):not(:last-child),
.comment-form
.input-group textarea:not(:first-child):not(:last-child),
.input-group .search-form .search-field:not(:first-child):not(:last-child),
.search-form
.input-group .search-field:not(:first-child):not(:last-child) {
  border-radius: 0;
}

.input-group-addon,
.input-group-btn {
  white-space: nowrap;
  vertical-align: middle;
}

.input-group-addon {
  padding: 0.5rem 0.75rem;
  margin-bottom: 0;
  font-size: 1rem;
  font-weight: normal;
  line-height: 1.25;
  color: #464a4c;
  text-align: center;
  background-color: #eceeef;
  border: 1px solid rgba(0, 0, 0, 0.15);
  border-radius: 0.25rem;
}

.input-group-addon.form-control-sm,
.comment-form .input-group-sm > input.input-group-addon[type="text"],
.comment-form .input-group-sm > input.input-group-addon[type="email"],
.comment-form .input-group-sm > input.input-group-addon[type="url"],
.comment-form .input-group-sm > textarea.input-group-addon,
.search-form .input-group-sm > .input-group-addon.search-field,
.input-group-sm > .input-group-addon,
.input-group-sm > .input-group-btn > .input-group-addon.btn,
.comment-form
.input-group-sm > .input-group-btn > input.input-group-addon[type="submit"],
.search-form
.input-group-sm > .input-group-btn > .input-group-addon.search-submit {
  padding: 0.25rem 0.5rem;
  font-size: 0.875rem;
  border-radius: 0.2rem;
}

.input-group-addon.form-control-lg,
.comment-form .input-group-lg > input.input-group-addon[type="text"],
.comment-form .input-group-lg > input.input-group-addon[type="email"],
.comment-form .input-group-lg > input.input-group-addon[type="url"],
.comment-form .input-group-lg > textarea.input-group-addon,
.search-form .input-group-lg > .input-group-addon.search-field,
.input-group-lg > .input-group-addon,
.input-group-lg > .input-group-btn > .input-group-addon.btn,
.comment-form
.input-group-lg > .input-group-btn > input.input-group-addon[type="submit"],
.search-form
.input-group-lg > .input-group-btn > .input-group-addon.search-submit {
  padding: 0.75rem 1.5rem;
  font-size: 1.25rem;
  border-radius: 0.3rem;
}

.input-group-addon input[type="radio"],
.input-group-addon input[type="checkbox"] {
  margin-top: 0;
}

.input-group .form-control:not(:last-child),
.input-group .comment-form input[type="text"]:not(:last-child),
.comment-form .input-group input[type="text"]:not(:last-child),
.input-group
.comment-form input[type="email"]:not(:last-child),
.comment-form .input-group input[type="email"]:not(:last-child),
.input-group
.comment-form input[type="url"]:not(:last-child),
.comment-form .input-group input[type="url"]:not(:last-child),
.input-group
.comment-form textarea:not(:last-child),
.comment-form .input-group textarea:not(:last-child),
.input-group .search-form .search-field:not(:last-child),
.search-form .input-group .search-field:not(:last-child),
.input-group-addon:not(:last-child),
.input-group-btn:not(:last-child) > .btn,
.comment-form
.input-group-btn:not(:last-child) > input[type="submit"],
.search-form
.input-group-btn:not(:last-child) > .search-submit,
.input-group-btn:not(:last-child) > .btn-group > .btn,
.comment-form
.input-group-btn:not(:last-child) > .btn-group > input[type="submit"],
.search-form
.input-group-btn:not(:last-child) > .btn-group > .search-submit,
.input-group-btn:not(:last-child) > .dropdown-toggle,
.input-group-btn:not(:first-child) > .btn:not(:last-child):not(.dropdown-toggle),
.comment-form
.input-group-btn:not(:first-child) > input[type="submit"]:not(:last-child):not(.dropdown-toggle),
.search-form
.input-group-btn:not(:first-child) > .search-submit:not(:last-child):not(.dropdown-toggle),
.input-group-btn:not(:first-child) > .btn-group:not(:last-child) > .btn,
.comment-form
.input-group-btn:not(:first-child) > .btn-group:not(:last-child) > input[type="submit"],
.search-form
.input-group-btn:not(:first-child) > .btn-group:not(:last-child) > .search-submit {
  border-bottom-right-radius: 0;
  border-top-right-radius: 0;
}

.input-group-addon:not(:last-child) {
  border-right: 0;
}

.input-group .form-control:not(:first-child),
.input-group .comment-form input[type="text"]:not(:first-child),
.comment-form .input-group input[type="text"]:not(:first-child),
.input-group
.comment-form input[type="email"]:not(:first-child),
.comment-form .input-group input[type="email"]:not(:first-child),
.input-group
.comment-form input[type="url"]:not(:first-child),
.comment-form .input-group input[type="url"]:not(:first-child),
.input-group
.comment-form textarea:not(:first-child),
.comment-form .input-group textarea:not(:first-child),
.input-group .search-form .search-field:not(:first-child),
.search-form .input-group .search-field:not(:first-child),
.input-group-addon:not(:first-child),
.input-group-btn:not(:first-child) > .btn,
.comment-form
.input-group-btn:not(:first-child) > input[type="submit"],
.search-form
.input-group-btn:not(:first-child) > .search-submit,
.input-group-btn:not(:first-child) > .btn-group > .btn,
.comment-form
.input-group-btn:not(:first-child) > .btn-group > input[type="submit"],
.search-form
.input-group-btn:not(:first-child) > .btn-group > .search-submit,
.input-group-btn:not(:first-child) > .dropdown-toggle,
.input-group-btn:not(:last-child) > .btn:not(:first-child),
.comment-form
.input-group-btn:not(:last-child) > input[type="submit"]:not(:first-child),
.search-form
.input-group-btn:not(:last-child) > .search-submit:not(:first-child),
.input-group-btn:not(:last-child) > .btn-group:not(:first-child) > .btn,
.comment-form
.input-group-btn:not(:last-child) > .btn-group:not(:first-child) > input[type="submit"],
.search-form
.input-group-btn:not(:last-child) > .btn-group:not(:first-child) > .search-submit {
  border-bottom-left-radius: 0;
  border-top-left-radius: 0;
}

.form-control + .input-group-addon:not(:first-child),
.comment-form input[type="text"] + .input-group-addon:not(:first-child),
.comment-form input[type="email"] + .input-group-addon:not(:first-child),
.comment-form input[type="url"] + .input-group-addon:not(:first-child),
.comment-form textarea + .input-group-addon:not(:first-child),
.search-form .search-field + .input-group-addon:not(:first-child) {
  border-left: 0;
}

.input-group-btn {
  position: relative;
  font-size: 0;
  white-space: nowrap;
}

.input-group-btn > .btn,
.comment-form .input-group-btn > input[type="submit"],
.search-form .input-group-btn > .search-submit {
  position: relative;
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
}

.input-group-btn > .btn + .btn,
.comment-form .input-group-btn > input[type="submit"] + .btn,
.search-form .input-group-btn > .search-submit + .btn,
.comment-form .input-group-btn > .btn + input[type="submit"],
.comment-form .input-group-btn > input[type="submit"] + input[type="submit"],
.search-form .comment-form .input-group-btn > .search-submit + input[type="submit"],
.comment-form .search-form .input-group-btn > .search-submit + input[type="submit"],
.search-form .input-group-btn > .btn + .search-submit,
.comment-form .search-form .input-group-btn > input[type="submit"] + .search-submit,
.search-form .comment-form .input-group-btn > input[type="submit"] + .search-submit,
.search-form .input-group-btn > .search-submit + .search-submit {
  margin-left: -1px;
}

.input-group-btn > .btn:focus,
.comment-form .input-group-btn > input[type="submit"]:focus,
.search-form .input-group-btn > .search-submit:focus,
.input-group-btn > .btn:active,
.comment-form .input-group-btn > input[type="submit"]:active,
.search-form .input-group-btn > .search-submit:active,
.input-group-btn > .btn:hover,
.comment-form .input-group-btn > input[type="submit"]:hover,
.search-form .input-group-btn > .search-submit:hover {
  z-index: 3;
}

.input-group-btn:not(:last-child) > .btn,
.comment-form .input-group-btn:not(:last-child) > input[type="submit"],
.search-form .input-group-btn:not(:last-child) > .search-submit,
.input-group-btn:not(:last-child) > .btn-group {
  margin-right: -1px;
}

.input-group-btn:not(:first-child) > .btn,
.comment-form .input-group-btn:not(:first-child) > input[type="submit"],
.search-form .input-group-btn:not(:first-child) > .search-submit,
.input-group-btn:not(:first-child) > .btn-group {
  z-index: 2;
  margin-left: -1px;
}

.input-group-btn:not(:first-child) > .btn:focus,
.comment-form .input-group-btn:not(:first-child) > input[type="submit"]:focus,
.search-form .input-group-btn:not(:first-child) > .search-submit:focus,
.input-group-btn:not(:first-child) > .btn:active,
.comment-form .input-group-btn:not(:first-child) > input[type="submit"]:active,
.search-form .input-group-btn:not(:first-child) > .search-submit:active,
.input-group-btn:not(:first-child) > .btn:hover,
.comment-form .input-group-btn:not(:first-child) > input[type="submit"]:hover,
.search-form .input-group-btn:not(:first-child) > .search-submit:hover,
.input-group-btn:not(:first-child) > .btn-group:focus,
.input-group-btn:not(:first-child) > .btn-group:active,
.input-group-btn:not(:first-child) > .btn-group:hover {
  z-index: 3;
}

.custom-control {
  position: relative;
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  min-height: 1.5rem;
  padding-left: 1.5rem;
  margin-right: 1rem;
  cursor: pointer;
}

.custom-control-input {
  position: absolute;
  z-index: -1;
  opacity: 0;
}

.custom-control-input:checked ~ .custom-control-indicator {
  color: #fff;
  background-color: #27ae60;
}

.custom-control-input:focus ~ .custom-control-indicator {
  box-shadow: 0 0 0 1px #fff, 0 0 0 3px #27ae60;
}

.custom-control-input:active ~ .custom-control-indicator {
  color: #fff;
  background-color: #9ee9be;
}

.custom-control-input:disabled ~ .custom-control-indicator {
  cursor: not-allowed;
  background-color: #eceeef;
}

.custom-control-input:disabled ~ .custom-control-description {
  color: #636c72;
  cursor: not-allowed;
}

.custom-control-indicator {
  position: absolute;
  top: 0.25rem;
  left: 0;
  display: block;
  width: 1rem;
  height: 1rem;
  pointer-events: none;
  -webkit-user-select: none;
     -moz-user-select: none;
      -ms-user-select: none;
          user-select: none;
  background-color: #ddd;
  background-repeat: no-repeat;
  background-position: center center;
  background-size: 50% 50%;
}

.custom-checkbox .custom-control-indicator {
  border-radius: 0.25rem;
}

.custom-checkbox .custom-control-input:checked ~ .custom-control-indicator {
  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-indicator {
  background-color: #27ae60;
  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-radio .custom-control-indicator {
  border-radius: 50%;
}

.custom-radio .custom-control-input:checked ~ .custom-control-indicator {
  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-controls-stacked {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
}

.custom-controls-stacked .custom-control {
  margin-bottom: 0.25rem;
}

.custom-controls-stacked .custom-control + .custom-control {
  margin-left: 0;
}

.custom-select {
  display: inline-block;
  max-width: 100%;
  height: calc(2.25rem + 2px);
  padding: 0.375rem 1.75rem 0.375rem 0.75rem;
  line-height: 1.25;
  color: #464a4c;
  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='%23333' d='M2 0L0 2h4zm0 5L0 3h4z'/%3E%3C/svg%3E") no-repeat right 0.75rem center;
  background-size: 8px 10px;
  border: 1px solid rgba(0, 0, 0, 0.15);
  border-radius: 0.25rem;
  -moz-appearance: none;
  -webkit-appearance: none;
}

.custom-select:focus {
  border-color: #75e0a2;
  outline: none;
}

.custom-select:focus::-ms-value {
  color: #464a4c;
  background-color: #fff;
}

.custom-select:disabled {
  color: #636c72;
  cursor: not-allowed;
  background-color: #eceeef;
}

.custom-select::-ms-expand {
  opacity: 0;
}

.custom-select-sm {
  padding-top: 0.375rem;
  padding-bottom: 0.375rem;
  font-size: 75%;
}

.custom-file {
  position: relative;
  display: inline-block;
  max-width: 100%;
  height: 2.5rem;
  margin-bottom: 0;
  cursor: pointer;
}

.custom-file-input {
  min-width: 14rem;
  max-width: 100%;
  height: 2.5rem;
  margin: 0;
  filter: alpha(opacity=0);
  opacity: 0;
}

.custom-file-control {
  position: absolute;
  top: 0;
  right: 0;
  left: 0;
  z-index: 5;
  height: 2.5rem;
  padding: 0.5rem 1rem;
  line-height: 1.5;
  color: #464a4c;
  pointer-events: none;
  -webkit-user-select: none;
     -moz-user-select: none;
      -ms-user-select: none;
          user-select: none;
  background-color: #fff;
  border: 1px solid rgba(0, 0, 0, 0.15);
  border-radius: 0.25rem;
}

.custom-file-control:lang(en)::after {
  content: "Choose file...";
}

.custom-file-control::before {
  position: absolute;
  top: -1px;
  right: -1px;
  bottom: -1px;
  z-index: 6;
  display: block;
  height: 2.5rem;
  padding: 0.5rem 1rem;
  line-height: 1.5;
  color: #464a4c;
  background-color: #eceeef;
  border: 1px solid rgba(0, 0, 0, 0.15);
  border-radius: 0 0.25rem 0.25rem 0;
}

.custom-file-control:lang(en)::before {
  content: "Browse";
}

.nav {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  padding-left: 0;
  margin-bottom: 0;
  list-style: none;
}

.nav-link,
.banner .nav a {
  display: block;
  padding: 0.5em 1em;
}

.nav-link:focus,
.banner .nav a:focus,
.nav-link:hover,
.banner .nav a:hover {
  text-decoration: none;
}

.nav-link.disabled,
.banner .nav a.disabled {
  color: #636c72;
  cursor: not-allowed;
}

.nav-tabs {
  border-bottom: 1px solid #ddd;
}

.nav-tabs .nav-item,
.nav-tabs .banner .nav li,
.banner .nav .nav-tabs li {
  margin-bottom: -1px;
}

.nav-tabs .nav-link,
.nav-tabs .banner .nav a,
.banner .nav .nav-tabs a {
  border: 1px solid transparent;
  border-top-right-radius: 0.25rem;
  border-top-left-radius: 0.25rem;
}

.nav-tabs .nav-link:focus,
.nav-tabs .banner .nav a:focus,
.banner .nav .nav-tabs a:focus,
.nav-tabs .nav-link:hover,
.nav-tabs .banner .nav a:hover,
.banner .nav .nav-tabs a:hover {
  border-color: #eceeef #eceeef #ddd;
}

.nav-tabs .nav-link.disabled,
.nav-tabs .banner .nav a.disabled,
.banner .nav .nav-tabs a.disabled {
  color: #636c72;
  background-color: transparent;
  border-color: transparent;
}

.nav-tabs .nav-link.active,
.nav-tabs .banner .nav a.active,
.banner .nav .nav-tabs a.active,
.nav-tabs .nav-item.show .nav-link,
.nav-tabs .banner .nav li.show .nav-link,
.banner .nav
.nav-tabs li.show .nav-link,
.nav-tabs .nav-item.show .banner .nav a,
.banner .nav
.nav-tabs .nav-item.show a,
.nav-tabs .banner .nav li.show a,
.banner .nav
.nav-tabs li.show a {
  color: #464a4c;
  background-color: #fff;
  border-color: #ddd #ddd #fff;
}

.nav-tabs .dropdown-menu {
  margin-top: -1px;
  border-top-right-radius: 0;
  border-top-left-radius: 0;
}

.nav-pills .nav-link,
.nav-pills .banner .nav a,
.banner .nav .nav-pills a {
  border-radius: 0.25rem;
}

.nav-pills .nav-link.active,
.nav-pills .banner .nav a.active,
.banner .nav .nav-pills a.active,
.nav-pills .nav-item.show .nav-link,
.nav-pills .banner .nav li.show .nav-link,
.banner .nav
.nav-pills li.show .nav-link,
.nav-pills .nav-item.show .banner .nav a,
.banner .nav
.nav-pills .nav-item.show a,
.nav-pills .banner .nav li.show a,
.banner .nav
.nav-pills li.show a {
  color: #fff;
  cursor: default;
  background-color: #27ae60;
}

.nav-fill .nav-item,
.nav-fill .banner .nav li,
.banner .nav .nav-fill li {
  -webkit-box-flex: 1;
      -ms-flex: 1 1 auto;
          flex: 1 1 auto;
  text-align: center;
}

.nav-justified .nav-item,
.nav-justified .banner .nav li,
.banner .nav .nav-justified li {
  -webkit-box-flex: 1;
      -ms-flex: 1 1 100%;
          flex: 1 1 100%;
  text-align: center;
}

.tab-content > .tab-pane {
  display: none;
}

.tab-content > .active {
  display: block;
}

.navbar {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  padding: 0.5rem 1rem;
}

.navbar-brand {
  display: inline-block;
  padding-top: .25rem;
  padding-bottom: .25rem;
  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: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  padding-left: 0;
  margin-bottom: 0;
  list-style: none;
}

.navbar-nav .nav-link,
.navbar-nav .banner .nav a,
.banner .nav .navbar-nav a {
  padding-right: 0;
  padding-left: 0;
}

.navbar-text {
  display: inline-block;
  padding-top: .425rem;
  padding-bottom: .425rem;
}

.navbar-toggler {
  -ms-flex-item-align: start;
      align-self: flex-start;
  padding: 0.25rem 0.75rem;
  font-size: 1.25rem;
  line-height: 1;
  background: transparent;
  border: 1px solid transparent;
  border-radius: 0.25rem;
}

.navbar-toggler:focus,
.navbar-toggler:hover {
  text-decoration: none;
}

.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%;
}

.navbar-toggler-left {
  position: absolute;
  left: 1rem;
}

.navbar-toggler-right {
  position: absolute;
  right: 1rem;
}

@media (max-width: 575px) {
  .navbar-toggleable .navbar-nav .dropdown-menu {
    position: static;
    float: none;
  }

  .navbar-toggleable > .container {
    padding-right: 0;
    padding-left: 0;
  }
}

@media (min-width: 576px) {
  .navbar-toggleable {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    -ms-flex-wrap: nowrap;
        flex-wrap: nowrap;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
  }

  .navbar-toggleable .navbar-nav {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
  }

  .navbar-toggleable .navbar-nav .nav-link,
  .navbar-toggleable .navbar-nav .banner .nav a,
  .banner .nav .navbar-toggleable .navbar-nav a {
    padding-right: .5rem;
    padding-left: .5rem;
  }

  .navbar-toggleable > .container {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: nowrap;
        flex-wrap: nowrap;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
  }

  .navbar-toggleable .navbar-collapse {
    display: -webkit-box !important;
    display: -ms-flexbox !important;
    display: flex !important;
    width: 100%;
  }

  .navbar-toggleable .navbar-toggler {
    display: none;
  }
}

@media (max-width: 767px) {
  .navbar-toggleable-sm .navbar-nav .dropdown-menu {
    position: static;
    float: none;
  }

  .navbar-toggleable-sm > .container {
    padding-right: 0;
    padding-left: 0;
  }
}

@media (min-width: 768px) {
  .navbar-toggleable-sm {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    -ms-flex-wrap: nowrap;
        flex-wrap: nowrap;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
  }

  .navbar-toggleable-sm .navbar-nav {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
  }

  .navbar-toggleable-sm .navbar-nav .nav-link,
  .navbar-toggleable-sm .navbar-nav .banner .nav a,
  .banner .nav .navbar-toggleable-sm .navbar-nav a {
    padding-right: .5rem;
    padding-left: .5rem;
  }

  .navbar-toggleable-sm > .container {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: nowrap;
        flex-wrap: nowrap;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
  }

  .navbar-toggleable-sm .navbar-collapse {
    display: -webkit-box !important;
    display: -ms-flexbox !important;
    display: flex !important;
    width: 100%;
  }

  .navbar-toggleable-sm .navbar-toggler {
    display: none;
  }
}

@media (max-width: 991px) {
  .navbar-toggleable-md .navbar-nav .dropdown-menu {
    position: static;
    float: none;
  }

  .navbar-toggleable-md > .container {
    padding-right: 0;
    padding-left: 0;
  }
}

@media (min-width: 992px) {
  .navbar-toggleable-md {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    -ms-flex-wrap: nowrap;
        flex-wrap: nowrap;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
  }

  .navbar-toggleable-md .navbar-nav {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
  }

  .navbar-toggleable-md .navbar-nav .nav-link,
  .navbar-toggleable-md .navbar-nav .banner .nav a,
  .banner .nav .navbar-toggleable-md .navbar-nav a {
    padding-right: .5rem;
    padding-left: .5rem;
  }

  .navbar-toggleable-md > .container {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: nowrap;
        flex-wrap: nowrap;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
  }

  .navbar-toggleable-md .navbar-collapse {
    display: -webkit-box !important;
    display: -ms-flexbox !important;
    display: flex !important;
    width: 100%;
  }

  .navbar-toggleable-md .navbar-toggler {
    display: none;
  }
}

@media (max-width: 1199px) {
  .navbar-toggleable-lg .navbar-nav .dropdown-menu {
    position: static;
    float: none;
  }

  .navbar-toggleable-lg > .container {
    padding-right: 0;
    padding-left: 0;
  }
}

@media (min-width: 1200px) {
  .navbar-toggleable-lg {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    -ms-flex-wrap: nowrap;
        flex-wrap: nowrap;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
  }

  .navbar-toggleable-lg .navbar-nav {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
  }

  .navbar-toggleable-lg .navbar-nav .nav-link,
  .navbar-toggleable-lg .navbar-nav .banner .nav a,
  .banner .nav .navbar-toggleable-lg .navbar-nav a {
    padding-right: .5rem;
    padding-left: .5rem;
  }

  .navbar-toggleable-lg > .container {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: nowrap;
        flex-wrap: nowrap;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
  }

  .navbar-toggleable-lg .navbar-collapse {
    display: -webkit-box !important;
    display: -ms-flexbox !important;
    display: flex !important;
    width: 100%;
  }

  .navbar-toggleable-lg .navbar-toggler {
    display: none;
  }
}

.navbar-toggleable-xl {
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row;
  -ms-flex-wrap: nowrap;
      flex-wrap: nowrap;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}

.navbar-toggleable-xl .navbar-nav .dropdown-menu {
  position: static;
  float: none;
}

.navbar-toggleable-xl > .container {
  padding-right: 0;
  padding-left: 0;
}

.navbar-toggleable-xl .navbar-nav {
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row;
}

.navbar-toggleable-xl .navbar-nav .nav-link,
.navbar-toggleable-xl .navbar-nav .banner .nav a,
.banner .nav .navbar-toggleable-xl .navbar-nav a {
  padding-right: .5rem;
  padding-left: .5rem;
}

.navbar-toggleable-xl > .container {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: nowrap;
      flex-wrap: nowrap;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}

.navbar-toggleable-xl .navbar-collapse {
  display: -webkit-box !important;
  display: -ms-flexbox !important;
  display: flex !important;
  width: 100%;
}

.navbar-toggleable-xl .navbar-toggler {
  display: none;
}

.navbar-light .navbar-brand,
.navbar-light .navbar-toggler {
  color: rgba(0, 0, 0, 0.9);
}

.navbar-light .navbar-brand:focus,
.navbar-light .navbar-brand:hover,
.navbar-light .navbar-toggler:focus,
.navbar-light .navbar-toggler:hover {
  color: rgba(0, 0, 0, 0.9);
}

.navbar-light .navbar-nav .nav-link,
.navbar-light .navbar-nav .banner .nav a,
.banner .nav .navbar-light .navbar-nav a {
  color: rgba(0, 0, 0, 0.5);
}

.navbar-light .navbar-nav .nav-link:focus,
.navbar-light .navbar-nav .banner .nav a:focus,
.banner .nav .navbar-light .navbar-nav a:focus,
.navbar-light .navbar-nav .nav-link:hover,
.navbar-light .navbar-nav .banner .nav a:hover,
.banner .nav .navbar-light .navbar-nav a:hover {
  color: rgba(0, 0, 0, 0.7);
}

.navbar-light .navbar-nav .nav-link.disabled,
.navbar-light .navbar-nav .banner .nav a.disabled,
.banner .nav .navbar-light .navbar-nav a.disabled {
  color: rgba(0, 0, 0, 0.3);
}

.navbar-light .navbar-nav .open > .nav-link,
.navbar-light .navbar-nav .banner .nav .open > a,
.banner .nav .navbar-light .navbar-nav .open > a,
.navbar-light .navbar-nav .active > .nav-link,
.navbar-light .navbar-nav .banner .nav .active > a,
.banner .nav
.navbar-light .navbar-nav .active > a,
.navbar-light .navbar-nav .nav-link.open,
.navbar-light .navbar-nav .banner .nav a.open,
.banner .nav
.navbar-light .navbar-nav a.open,
.navbar-light .navbar-nav .nav-link.active,
.navbar-light .navbar-nav .banner .nav a.active,
.banner .nav
.navbar-light .navbar-nav a.active {
  color: rgba(0, 0, 0, 0.9);
}

.navbar-light .navbar-toggler {
  border-color: rgba(0, 0, 0, 0.1);
}

.navbar-light .navbar-toggler-icon {
  background-image: url("data:image/svg+xml;charset=utf8,%3Csvg viewBox='0 0 32 32' 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 8h24M4 16h24M4 24h24'/%3E%3C/svg%3E");
}

.navbar-light .navbar-text {
  color: rgba(0, 0, 0, 0.5);
}

.navbar-inverse .navbar-brand,
.navbar-inverse .navbar-toggler {
  color: white;
}

.navbar-inverse .navbar-brand:focus,
.navbar-inverse .navbar-brand:hover,
.navbar-inverse .navbar-toggler:focus,
.navbar-inverse .navbar-toggler:hover {
  color: white;
}

.navbar-inverse .navbar-nav .nav-link,
.navbar-inverse .navbar-nav .banner .nav a,
.banner .nav .navbar-inverse .navbar-nav a {
  color: rgba(255, 255, 255, 0.5);
}

.navbar-inverse .navbar-nav .nav-link:focus,
.navbar-inverse .navbar-nav .banner .nav a:focus,
.banner .nav .navbar-inverse .navbar-nav a:focus,
.navbar-inverse .navbar-nav .nav-link:hover,
.navbar-inverse .navbar-nav .banner .nav a:hover,
.banner .nav .navbar-inverse .navbar-nav a:hover {
  color: rgba(255, 255, 255, 0.75);
}

.navbar-inverse .navbar-nav .nav-link.disabled,
.navbar-inverse .navbar-nav .banner .nav a.disabled,
.banner .nav .navbar-inverse .navbar-nav a.disabled {
  color: rgba(255, 255, 255, 0.25);
}

.navbar-inverse .navbar-nav .open > .nav-link,
.navbar-inverse .navbar-nav .banner .nav .open > a,
.banner .nav .navbar-inverse .navbar-nav .open > a,
.navbar-inverse .navbar-nav .active > .nav-link,
.navbar-inverse .navbar-nav .banner .nav .active > a,
.banner .nav
.navbar-inverse .navbar-nav .active > a,
.navbar-inverse .navbar-nav .nav-link.open,
.navbar-inverse .navbar-nav .banner .nav a.open,
.banner .nav
.navbar-inverse .navbar-nav a.open,
.navbar-inverse .navbar-nav .nav-link.active,
.navbar-inverse .navbar-nav .banner .nav a.active,
.banner .nav
.navbar-inverse .navbar-nav a.active {
  color: white;
}

.navbar-inverse .navbar-toggler {
  border-color: rgba(255, 255, 255, 0.1);
}

.navbar-inverse .navbar-toggler-icon {
  background-image: url("data:image/svg+xml;charset=utf8,%3Csvg viewBox='0 0 32 32' 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 8h24M4 16h24M4 24h24'/%3E%3C/svg%3E");
}

.navbar-inverse .navbar-text {
  color: rgba(255, 255, 255, 0.5);
}

.card {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  background-color: #fff;
  border: 1px solid rgba(0, 0, 0, 0.125);
  border-radius: 0.25rem;
}

.card-block {
  -webkit-box-flex: 1;
      -ms-flex: 1 1 auto;
          flex: 1 1 auto;
  padding: 1.25rem;
}

.card-title {
  margin-bottom: 0.75rem;
}

.card-subtitle {
  margin-top: -0.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 > .list-group:first-child .list-group-item:first-child {
  border-top-right-radius: 0.25rem;
  border-top-left-radius: 0.25rem;
}

.card > .list-group:last-child .list-group-item:last-child {
  border-bottom-right-radius: 0.25rem;
  border-bottom-left-radius: 0.25rem;
}

.card-header {
  padding: 0.75rem 1.25rem;
  margin-bottom: 0;
  background-color: #f7f7f9;
  border-bottom: 1px solid rgba(0, 0, 0, 0.125);
}

.card-header:first-child {
  border-radius: calc(0.25rem - 1px) calc(0.25rem - 1px) 0 0;
}

.card-footer {
  padding: 0.75rem 1.25rem;
  background-color: #f7f7f9;
  border-top: 1px solid rgba(0, 0, 0, 0.125);
}

.card-footer:last-child {
  border-radius: 0 0 calc(0.25rem - 1px) calc(0.25rem - 1px);
}

.card-header-tabs {
  margin-right: -0.625rem;
  margin-bottom: -0.75rem;
  margin-left: -0.625rem;
  border-bottom: 0;
}

.card-header-pills {
  margin-right: -0.625rem;
  margin-left: -0.625rem;
}

.card-primary {
  background-color: #27ae60;
  border-color: #27ae60;
}

.card-primary .card-header,
.card-primary .card-footer {
  background-color: transparent;
}

.card-success {
  background-color: #5cb85c;
  border-color: #5cb85c;
}

.card-success .card-header,
.card-success .card-footer {
  background-color: transparent;
}

.card-info {
  background-color: #5bc0de;
  border-color: #5bc0de;
}

.card-info .card-header,
.card-info .card-footer {
  background-color: transparent;
}

.card-warning {
  background-color: #f0ad4e;
  border-color: #f0ad4e;
}

.card-warning .card-header,
.card-warning .card-footer {
  background-color: transparent;
}

.card-danger {
  background-color: #d9534f;
  border-color: #d9534f;
}

.card-danger .card-header,
.card-danger .card-footer {
  background-color: transparent;
}

.card-outline-primary {
  background-color: transparent;
  border-color: #27ae60;
}

.card-outline-secondary {
  background-color: transparent;
  border-color: #ccc;
}

.card-outline-info {
  background-color: transparent;
  border-color: #5bc0de;
}

.card-outline-success {
  background-color: transparent;
  border-color: #5cb85c;
}

.card-outline-warning {
  background-color: transparent;
  border-color: #f0ad4e;
}

.card-outline-danger {
  background-color: transparent;
  border-color: #d9534f;
}

.card-inverse {
  color: rgba(255, 255, 255, 0.65);
}

.card-inverse .card-header,
.card-inverse .card-footer {
  background-color: transparent;
  border-color: rgba(255, 255, 255, 0.2);
}

.card-inverse .card-header,
.card-inverse .card-footer,
.card-inverse .card-title,
.card-inverse .card-blockquote {
  color: #fff;
}

.card-inverse .card-link,
.card-inverse .card-text,
.card-inverse .card-subtitle,
.card-inverse .card-blockquote .blockquote-footer {
  color: rgba(255, 255, 255, 0.65);
}

.card-inverse .card-link:focus,
.card-inverse .card-link:hover {
  color: #fff;
}

.card-blockquote {
  padding: 0;
  margin-bottom: 0;
  border-left: 0;
}

.card-img {
  border-radius: calc(0.25rem - 1px);
}

.card-img-overlay {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  padding: 1.25rem;
}

.card-img-top {
  border-top-right-radius: calc(0.25rem - 1px);
  border-top-left-radius: calc(0.25rem - 1px);
}

.card-img-bottom {
  border-bottom-right-radius: calc(0.25rem - 1px);
  border-bottom-left-radius: calc(0.25rem - 1px);
}

@media (min-width: 576px) {
  .card-deck {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-flow: row wrap;
            flex-flow: row wrap;
  }

  .card-deck .card {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-flex: 1;
        -ms-flex: 1 0 0px;
            flex: 1 0 0;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }

  .card-deck .card:not(:first-child) {
    margin-left: 15px;
  }

  .card-deck .card:not(:last-child) {
    margin-right: 15px;
  }
}

@media (min-width: 576px) {
  .card-group {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-flow: row wrap;
            flex-flow: row wrap;
  }

  .card-group .card {
    -webkit-box-flex: 1;
        -ms-flex: 1 0 0px;
            flex: 1 0 0;
  }

  .card-group .card + .card {
    margin-left: 0;
    border-left: 0;
  }

  .card-group .card:first-child {
    border-bottom-right-radius: 0;
    border-top-right-radius: 0;
  }

  .card-group .card:first-child .card-img-top {
    border-top-right-radius: 0;
  }

  .card-group .card:first-child .card-img-bottom {
    border-bottom-right-radius: 0;
  }

  .card-group .card:last-child {
    border-bottom-left-radius: 0;
    border-top-left-radius: 0;
  }

  .card-group .card:last-child .card-img-top {
    border-top-left-radius: 0;
  }

  .card-group .card:last-child .card-img-bottom {
    border-bottom-left-radius: 0;
  }

  .card-group .card:not(:first-child):not(:last-child) {
    border-radius: 0;
  }

  .card-group .card:not(:first-child):not(:last-child) .card-img-top,
  .card-group .card:not(:first-child):not(:last-child) .card-img-bottom {
    border-radius: 0;
  }
}

@media (min-width: 576px) {
  .card-columns {
    -webkit-column-count: 3;
       -moz-column-count: 3;
            column-count: 3;
    -webkit-column-gap: 1.25rem;
       -moz-column-gap: 1.25rem;
            column-gap: 1.25rem;
  }

  .card-columns .card {
    display: inline-block;
    width: 100%;
    margin-bottom: 0.75rem;
  }
}

.breadcrumb {
  padding: 0.75rem 1rem;
  margin-bottom: 1rem;
  list-style: none;
  background-color: #eceeef;
  border-radius: 0.25rem;
}

.breadcrumb::after {
  display: block;
  content: "";
  clear: both;
}

.breadcrumb-item {
  float: left;
}

.breadcrumb-item + .breadcrumb-item::before {
  display: inline-block;
  padding-right: 0.5rem;
  padding-left: 0.5rem;
  color: #636c72;
  content: "/";
}

.breadcrumb-item + .breadcrumb-item:hover::before {
  text-decoration: underline;
}

.breadcrumb-item + .breadcrumb-item:hover::before {
  text-decoration: none;
}

.breadcrumb-item.active {
  color: #636c72;
}

.pagination {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  padding-left: 0;
  list-style: none;
  border-radius: 0.25rem;
}

.page-item:first-child .page-link {
  margin-left: 0;
  border-bottom-left-radius: 0.25rem;
  border-top-left-radius: 0.25rem;
}

.page-item:last-child .page-link {
  border-bottom-right-radius: 0.25rem;
  border-top-right-radius: 0.25rem;
}

.page-item.active .page-link {
  z-index: 2;
  color: #fff;
  background-color: #27ae60;
  border-color: #27ae60;
}

.page-item.disabled .page-link {
  color: #636c72;
  pointer-events: none;
  cursor: not-allowed;
  background-color: #fff;
  border-color: #ddd;
}

.page-link {
  position: relative;
  display: block;
  padding: 0.5rem 0.75rem;
  margin-left: -1px;
  line-height: 1.25;
  color: #27ae60;
  background-color: #fff;
  border: 1px solid #ddd;
}

.page-link:focus,
.page-link:hover {
  color: #19703e;
  text-decoration: none;
  background-color: #eceeef;
  border-color: #ddd;
}

.pagination-lg .page-link {
  padding: 0.75rem 1.5rem;
  font-size: 1.25rem;
}

.pagination-lg .page-item:first-child .page-link {
  border-bottom-left-radius: 0.3rem;
  border-top-left-radius: 0.3rem;
}

.pagination-lg .page-item:last-child .page-link {
  border-bottom-right-radius: 0.3rem;
  border-top-right-radius: 0.3rem;
}

.pagination-sm .page-link {
  padding: 0.25rem 0.5rem;
  font-size: 0.875rem;
}

.pagination-sm .page-item:first-child .page-link {
  border-bottom-left-radius: 0.2rem;
  border-top-left-radius: 0.2rem;
}

.pagination-sm .page-item:last-child .page-link {
  border-bottom-right-radius: 0.2rem;
  border-top-right-radius: 0.2rem;
}

.badge {
  display: inline-block;
  padding: 0.25em 0.4em;
  font-size: 75%;
  font-weight: bold;
  line-height: 1;
  color: #fff;
  text-align: center;
  white-space: nowrap;
  vertical-align: baseline;
  border-radius: 0.25rem;
}

.badge:empty {
  display: none;
}

.btn .badge,
.comment-form input[type="submit"] .badge,
.search-form .search-submit .badge {
  position: relative;
  top: -1px;
}

a.badge:focus,
a.badge:hover {
  color: #fff;
  text-decoration: none;
  cursor: pointer;
}

.badge-pill {
  padding-right: 0.6em;
  padding-left: 0.6em;
  border-radius: 10rem;
}

.badge-default {
  background-color: #636c72;
}

.badge-default[href]:focus,
.badge-default[href]:hover {
  background-color: #4b5257;
}

.badge-primary {
  background-color: #27ae60;
}

.badge-primary[href]:focus,
.badge-primary[href]:hover {
  background-color: #1e8449;
}

.badge-success {
  background-color: #5cb85c;
}

.badge-success[href]:focus,
.badge-success[href]:hover {
  background-color: #449d44;
}

.badge-info {
  background-color: #5bc0de;
}

.badge-info[href]:focus,
.badge-info[href]:hover {
  background-color: #31b0d5;
}

.badge-warning {
  background-color: #f0ad4e;
}

.badge-warning[href]:focus,
.badge-warning[href]:hover {
  background-color: #ec971f;
}

.badge-danger {
  background-color: #d9534f;
}

.badge-danger[href]:focus,
.badge-danger[href]:hover {
  background-color: #c9302c;
}

.jumbotron {
  padding: 2rem 1rem;
  margin-bottom: 2rem;
  background-color: #eceeef;
  border-radius: 0.3rem;
}

@media (min-width: 576px) {
  .jumbotron {
    padding: 4rem 2rem;
  }
}

.jumbotron-hr {
  border-top-color: #d0d5d8;
}

.jumbotron-fluid {
  padding-right: 0;
  padding-left: 0;
  border-radius: 0;
}

.alert {
  padding: 0.75rem 1.25rem;
  margin-bottom: 1rem;
  border: 1px solid transparent;
  border-radius: 0.25rem;
}

.alert-heading {
  color: inherit;
}

.alert-link {
  font-weight: bold;
}

.alert-dismissible .close {
  position: relative;
  top: -0.75rem;
  right: -1.25rem;
  padding: 0.75rem 1.25rem;
  color: inherit;
}

.alert-success {
  background-color: #dff0d8;
  border-color: #d0e9c6;
  color: #3c763d;
}

.alert-success hr {
  border-top-color: #c1e2b3;
}

.alert-success .alert-link {
  color: #2b542c;
}

.alert-info {
  background-color: #d9edf7;
  border-color: #bcdff1;
  color: #31708f;
}

.alert-info hr {
  border-top-color: #a6d5ec;
}

.alert-info .alert-link {
  color: #245269;
}

.alert-warning {
  background-color: #fcf8e3;
  border-color: #faf2cc;
  color: #8a6d3b;
}

.alert-warning hr {
  border-top-color: #f7ecb5;
}

.alert-warning .alert-link {
  color: #66512c;
}

.alert-danger {
  background-color: #f2dede;
  border-color: #ebcccc;
  color: #a94442;
}

.alert-danger hr {
  border-top-color: #e4b9b9;
}

.alert-danger .alert-link {
  color: #843534;
}

@-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: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  overflow: hidden;
  font-size: 0.75rem;
  line-height: 1rem;
  text-align: center;
  background-color: #eceeef;
  border-radius: 0.25rem;
}

.progress-bar {
  height: 1rem;
  color: #fff;
  background-color: #27ae60;
}

.progress-bar-striped {
  background-image: -webkit-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);
  background-image: linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.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: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
}

.media-body {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
}

.list-group {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  padding-left: 0;
  margin-bottom: 0;
}

.list-group-item-action {
  width: 100%;
  color: #464a4c;
  text-align: inherit;
}

.list-group-item-action .list-group-item-heading {
  color: #292b2c;
}

.list-group-item-action:focus,
.list-group-item-action:hover {
  color: #464a4c;
  text-decoration: none;
  background-color: #f7f7f9;
}

.list-group-item-action:active {
  color: #292b2c;
  background-color: #eceeef;
}

.list-group-item {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-flow: row wrap;
          flex-flow: row wrap;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  padding: 0.75rem 1.25rem;
  margin-bottom: -1px;
  background-color: #fff;
  border: 1px solid rgba(0, 0, 0, 0.125);
}

.list-group-item:first-child {
  border-top-right-radius: 0.25rem;
  border-top-left-radius: 0.25rem;
}

.list-group-item:last-child {
  margin-bottom: 0;
  border-bottom-right-radius: 0.25rem;
  border-bottom-left-radius: 0.25rem;
}

.list-group-item:focus,
.list-group-item:hover {
  text-decoration: none;
}

.list-group-item.disabled,
.list-group-item:disabled {
  color: #636c72;
  cursor: not-allowed;
  background-color: #fff;
}

.list-group-item.disabled .list-group-item-heading,
.list-group-item:disabled .list-group-item-heading {
  color: inherit;
}

.list-group-item.disabled .list-group-item-text,
.list-group-item:disabled .list-group-item-text {
  color: #636c72;
}

.list-group-item.active {
  z-index: 2;
  color: #fff;
  background-color: #27ae60;
  border-color: #27ae60;
}

.list-group-item.active .list-group-item-heading,
.list-group-item.active .list-group-item-heading > small,
.list-group-item.active .list-group-item-heading > .small {
  color: inherit;
}

.list-group-item.active .list-group-item-text {
  color: #ddf7e8;
}

.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-success {
  color: #3c763d;
  background-color: #dff0d8;
}

a.list-group-item-success,
button.list-group-item-success {
  color: #3c763d;
}

a.list-group-item-success .list-group-item-heading,
button.list-group-item-success .list-group-item-heading {
  color: inherit;
}

a.list-group-item-success:focus,
a.list-group-item-success:hover,
button.list-group-item-success:focus,
button.list-group-item-success:hover {
  color: #3c763d;
  background-color: #d0e9c6;
}

a.list-group-item-success.active,
button.list-group-item-success.active {
  color: #fff;
  background-color: #3c763d;
  border-color: #3c763d;
}

.list-group-item-info {
  color: #31708f;
  background-color: #d9edf7;
}

a.list-group-item-info,
button.list-group-item-info {
  color: #31708f;
}

a.list-group-item-info .list-group-item-heading,
button.list-group-item-info .list-group-item-heading {
  color: inherit;
}

a.list-group-item-info:focus,
a.list-group-item-info:hover,
button.list-group-item-info:focus,
button.list-group-item-info:hover {
  color: #31708f;
  background-color: #c4e3f3;
}

a.list-group-item-info.active,
button.list-group-item-info.active {
  color: #fff;
  background-color: #31708f;
  border-color: #31708f;
}

.list-group-item-warning {
  color: #8a6d3b;
  background-color: #fcf8e3;
}

a.list-group-item-warning,
button.list-group-item-warning {
  color: #8a6d3b;
}

a.list-group-item-warning .list-group-item-heading,
button.list-group-item-warning .list-group-item-heading {
  color: inherit;
}

a.list-group-item-warning:focus,
a.list-group-item-warning:hover,
button.list-group-item-warning:focus,
button.list-group-item-warning:hover {
  color: #8a6d3b;
  background-color: #faf2cc;
}

a.list-group-item-warning.active,
button.list-group-item-warning.active {
  color: #fff;
  background-color: #8a6d3b;
  border-color: #8a6d3b;
}

.list-group-item-danger {
  color: #a94442;
  background-color: #f2dede;
}

a.list-group-item-danger,
button.list-group-item-danger {
  color: #a94442;
}

a.list-group-item-danger .list-group-item-heading,
button.list-group-item-danger .list-group-item-heading {
  color: inherit;
}

a.list-group-item-danger:focus,
a.list-group-item-danger:hover,
button.list-group-item-danger:focus,
button.list-group-item-danger:hover {
  color: #a94442;
  background-color: #ebcccc;
}

a.list-group-item-danger.active,
button.list-group-item-danger.active {
  color: #fff;
  background-color: #a94442;
  border-color: #a94442;
}

.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 iframe,
.embed-responsive embed,
.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.85714286%;
}

.embed-responsive-16by9::before {
  padding-top: 56.25%;
}

.embed-responsive-4by3::before {
  padding-top: 75%;
}

.embed-responsive-1by1::before {
  padding-top: 100%;
}

.close {
  float: right;
  font-size: 1.5rem;
  font-weight: bold;
  line-height: 1;
  color: #000;
  text-shadow: 0 1px 0 #fff;
  opacity: .5;
}

.close:focus,
.close:hover {
  color: #000;
  text-decoration: none;
  cursor: pointer;
  opacity: .75;
}

button.close {
  padding: 0;
  cursor: pointer;
  background: transparent;
  border: 0;
  -webkit-appearance: none;
}

.modal-open {
  overflow: hidden;
}

.modal {
  position: fixed;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 1050;
  display: none;
  overflow: hidden;
  outline: 0;
}

.modal.fade .modal-dialog {
  -webkit-transition: -webkit-transform 0.3s ease-out;
  transition: -webkit-transform 0.3s ease-out;
  transition: transform 0.3s ease-out;
  transition: transform 0.3s ease-out, -webkit-transform 0.3s ease-out;
  -webkit-transform: translate(0, -25%);
          transform: translate(0, -25%);
}

.modal.show .modal-dialog {
  -webkit-transform: translate(0, 0);
          transform: translate(0, 0);
}

.modal-open .modal {
  overflow-x: hidden;
  overflow-y: auto;
}

.modal-dialog {
  position: relative;
  width: auto;
  margin: 10px;
}

.modal-content {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  background-color: #fff;
  background-clip: padding-box;
  border: 1px solid rgba(0, 0, 0, 0.2);
  border-radius: 0.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: 0.5;
}

.modal-header {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  padding: 15px;
  border-bottom: 1px solid #eceeef;
}

.modal-title {
  margin-bottom: 0;
  line-height: 1.5;
}

.modal-body {
  position: relative;
  -webkit-box-flex: 1;
      -ms-flex: 1 1 auto;
          flex: 1 1 auto;
  padding: 15px;
}

.modal-footer {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: flex-end;
  padding: 15px;
  border-top: 1px solid #eceeef;
}

.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: 30px auto;
  }

  .modal-sm {
    max-width: 300px;
  }
}

@media (min-width: 992px) {
  .modal-lg {
    max-width: 800px;
  }
}

.tooltip {
  position: absolute;
  z-index: 1070;
  display: block;
  font-family: -apple-system, system-ui, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
  font-style: normal;
  font-weight: normal;
  letter-spacing: normal;
  line-break: auto;
  line-height: 1.5;
  text-align: left;
  text-align: start;
  text-decoration: none;
  text-shadow: none;
  text-transform: none;
  white-space: normal;
  word-break: normal;
  word-spacing: normal;
  font-size: 0.875rem;
  word-wrap: break-word;
  opacity: 0;
}

.tooltip.show {
  opacity: 0.9;
}

.tooltip.tooltip-top,
.tooltip.bs-tether-element-attached-bottom {
  padding: 5px 0;
  margin-top: -3px;
}

.tooltip.tooltip-top .tooltip-inner::before,
.tooltip.bs-tether-element-attached-bottom .tooltip-inner::before {
  bottom: 0;
  left: 50%;
  margin-left: -5px;
  content: "";
  border-width: 5px 5px 0;
  border-top-color: #000;
}

.tooltip.tooltip-right,
.tooltip.bs-tether-element-attached-left {
  padding: 0 5px;
  margin-left: 3px;
}

.tooltip.tooltip-right .tooltip-inner::before,
.tooltip.bs-tether-element-attached-left .tooltip-inner::before {
  top: 50%;
  left: 0;
  margin-top: -5px;
  content: "";
  border-width: 5px 5px 5px 0;
  border-right-color: #000;
}

.tooltip.tooltip-bottom,
.tooltip.bs-tether-element-attached-top {
  padding: 5px 0;
  margin-top: 3px;
}

.tooltip.tooltip-bottom .tooltip-inner::before,
.tooltip.bs-tether-element-attached-top .tooltip-inner::before {
  top: 0;
  left: 50%;
  margin-left: -5px;
  content: "";
  border-width: 0 5px 5px;
  border-bottom-color: #000;
}

.tooltip.tooltip-left,
.tooltip.bs-tether-element-attached-right {
  padding: 0 5px;
  margin-left: -3px;
}

.tooltip.tooltip-left .tooltip-inner::before,
.tooltip.bs-tether-element-attached-right .tooltip-inner::before {
  top: 50%;
  right: 0;
  margin-top: -5px;
  content: "";
  border-width: 5px 0 5px 5px;
  border-left-color: #000;
}

.tooltip-inner {
  max-width: 200px;
  padding: 3px 8px;
  color: #fff;
  text-align: center;
  background-color: #000;
  border-radius: 0.25rem;
}

.tooltip-inner::before {
  position: absolute;
  width: 0;
  height: 0;
  border-color: transparent;
  border-style: solid;
}

.popover {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 1060;
  display: block;
  max-width: 276px;
  padding: 1px;
  font-family: -apple-system, system-ui, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
  font-style: normal;
  font-weight: normal;
  letter-spacing: normal;
  line-break: auto;
  line-height: 1.5;
  text-align: left;
  text-align: start;
  text-decoration: none;
  text-shadow: none;
  text-transform: none;
  white-space: normal;
  word-break: normal;
  word-spacing: normal;
  font-size: 0.875rem;
  word-wrap: break-word;
  background-color: #fff;
  background-clip: padding-box;
  border: 1px solid rgba(0, 0, 0, 0.2);
  border-radius: 0.3rem;
}

.popover.popover-top,
.popover.bs-tether-element-attached-bottom {
  margin-top: -10px;
}

.popover.popover-top::before,
.popover.popover-top::after,
.popover.bs-tether-element-attached-bottom::before,
.popover.bs-tether-element-attached-bottom::after {
  left: 50%;
  border-bottom-width: 0;
}

.popover.popover-top::before,
.popover.bs-tether-element-attached-bottom::before {
  bottom: -11px;
  margin-left: -11px;
  border-top-color: rgba(0, 0, 0, 0.25);
}

.popover.popover-top::after,
.popover.bs-tether-element-attached-bottom::after {
  bottom: -10px;
  margin-left: -10px;
  border-top-color: #fff;
}

.popover.popover-right,
.popover.bs-tether-element-attached-left {
  margin-left: 10px;
}

.popover.popover-right::before,
.popover.popover-right::after,
.popover.bs-tether-element-attached-left::before,
.popover.bs-tether-element-attached-left::after {
  top: 50%;
  border-left-width: 0;
}

.popover.popover-right::before,
.popover.bs-tether-element-attached-left::before {
  left: -11px;
  margin-top: -11px;
  border-right-color: rgba(0, 0, 0, 0.25);
}

.popover.popover-right::after,
.popover.bs-tether-element-attached-left::after {
  left: -10px;
  margin-top: -10px;
  border-right-color: #fff;
}

.popover.popover-bottom,
.popover.bs-tether-element-attached-top {
  margin-top: 10px;
}

.popover.popover-bottom::before,
.popover.popover-bottom::after,
.popover.bs-tether-element-attached-top::before,
.popover.bs-tether-element-attached-top::after {
  left: 50%;
  border-top-width: 0;
}

.popover.popover-bottom::before,
.popover.bs-tether-element-attached-top::before {
  top: -11px;
  margin-left: -11px;
  border-bottom-color: rgba(0, 0, 0, 0.25);
}

.popover.popover-bottom::after,
.popover.bs-tether-element-attached-top::after {
  top: -10px;
  margin-left: -10px;
  border-bottom-color: #f7f7f7;
}

.popover.popover-bottom .popover-title::before,
.popover.bs-tether-element-attached-top .popover-title::before {
  position: absolute;
  top: 0;
  left: 50%;
  display: block;
  width: 20px;
  margin-left: -10px;
  content: "";
  border-bottom: 1px solid #f7f7f7;
}

.popover.popover-left,
.popover.bs-tether-element-attached-right {
  margin-left: -10px;
}

.popover.popover-left::before,
.popover.popover-left::after,
.popover.bs-tether-element-attached-right::before,
.popover.bs-tether-element-attached-right::after {
  top: 50%;
  border-right-width: 0;
}

.popover.popover-left::before,
.popover.bs-tether-element-attached-right::before {
  right: -11px;
  margin-top: -11px;
  border-left-color: rgba(0, 0, 0, 0.25);
}

.popover.popover-left::after,
.popover.bs-tether-element-attached-right::after {
  right: -10px;
  margin-top: -10px;
  border-left-color: #fff;
}

.popover-title {
  padding: 8px 14px;
  margin-bottom: 0;
  font-size: 1rem;
  background-color: #f7f7f7;
  border-bottom: 1px solid #ebebeb;
  border-top-right-radius: calc(0.3rem - 1px);
  border-top-left-radius: calc(0.3rem - 1px);
}

.popover-title:empty {
  display: none;
}

.popover-content {
  padding: 9px 14px;
}

.popover::before,
.popover::after {
  position: absolute;
  display: block;
  width: 0;
  height: 0;
  border-color: transparent;
  border-style: solid;
}

.popover::before {
  content: "";
  border-width: 11px;
}

.popover::after {
  content: "";
  border-width: 10px;
}

.carousel {
  position: relative;
}

.carousel-inner {
  position: relative;
  width: 100%;
  overflow: hidden;
}

.carousel-item {
  position: relative;
  display: none;
  width: 100%;
}

@media (-webkit-transform-3d) {
  .carousel-item {
    -webkit-transition: -webkit-transform 0.6s ease-in-out;
    transition: -webkit-transform 0.6s ease-in-out;
    transition: transform 0.6s ease-in-out;
    transition: transform 0.6s ease-in-out, -webkit-transform 0.6s ease-in-out;
    -webkit-backface-visibility: hidden;
            backface-visibility: hidden;
    -webkit-perspective: 1000px;
            perspective: 1000px;
  }
}

@supports ((-webkit-transform: translate3d(0, 0, 0)) or (transform: translate3d(0, 0, 0))) {
  .carousel-item {
    -webkit-transition: -webkit-transform 0.6s ease-in-out;
    transition: -webkit-transform 0.6s ease-in-out;
    transition: transform 0.6s ease-in-out;
    transition: transform 0.6s ease-in-out, -webkit-transform 0.6s ease-in-out;
    -webkit-backface-visibility: hidden;
            backface-visibility: hidden;
    -webkit-perspective: 1000px;
            perspective: 1000px;
  }
}

.carousel-item.active,
.carousel-item-next,
.carousel-item-prev {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}

.carousel-item-next,
.carousel-item-prev {
  position: absolute;
  top: 0;
}

@media (-webkit-transform-3d) {
  .carousel-item-next.carousel-item-left,
  .carousel-item-prev.carousel-item-right {
    -webkit-transform: translate3d(0, 0, 0);
            transform: translate3d(0, 0, 0);
  }

  .carousel-item-next,
  .active.carousel-item-right {
    -webkit-transform: translate3d(100%, 0, 0);
            transform: translate3d(100%, 0, 0);
  }

  .carousel-item-prev,
  .active.carousel-item-left {
    -webkit-transform: translate3d(-100%, 0, 0);
            transform: translate3d(-100%, 0, 0);
  }
}

@supports ((-webkit-transform: translate3d(0, 0, 0)) or (transform: translate3d(0, 0, 0))) {
  .carousel-item-next.carousel-item-left,
  .carousel-item-prev.carousel-item-right {
    -webkit-transform: translate3d(0, 0, 0);
            transform: translate3d(0, 0, 0);
  }

  .carousel-item-next,
  .active.carousel-item-right {
    -webkit-transform: translate3d(100%, 0, 0);
            transform: translate3d(100%, 0, 0);
  }

  .carousel-item-prev,
  .active.carousel-item-left {
    -webkit-transform: translate3d(-100%, 0, 0);
            transform: translate3d(-100%, 0, 0);
  }
}

.carousel-control-prev,
.carousel-control-next {
  position: absolute;
  top: 0;
  bottom: 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  width: 15%;
  color: #fff;
  text-align: center;
  opacity: 0.5;
}

.carousel-control-prev:focus,
.carousel-control-prev:hover,
.carousel-control-next:focus,
.carousel-control-next:hover {
  color: #fff;
  text-decoration: none;
  outline: 0;
  opacity: .9;
}

.carousel-control-prev {
  left: 0;
}

.carousel-control-next {
  right: 0;
}

.carousel-control-prev-icon,
.carousel-control-next-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='M4 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='M1.5 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: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  padding-left: 0;
  margin-right: 15%;
  margin-left: 15%;
  list-style: none;
}

.carousel-indicators li {
  position: relative;
  -webkit-box-flex: 1;
      -ms-flex: 1 0 auto;
          flex: 1 0 auto;
  max-width: 30px;
  height: 3px;
  margin-right: 3px;
  margin-left: 3px;
  text-indent: -999px;
  cursor: pointer;
  background-color: rgba(255, 255, 255, 0.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-faded {
  background-color: #f7f7f7;
}

.bg-primary {
  background-color: #27ae60 !important;
}

a.bg-primary:focus,
a.bg-primary:hover {
  background-color: #1e8449 !important;
}

.bg-success {
  background-color: #5cb85c !important;
}

a.bg-success:focus,
a.bg-success:hover {
  background-color: #449d44 !important;
}

.bg-info {
  background-color: #5bc0de !important;
}

a.bg-info:focus,
a.bg-info:hover {
  background-color: #31b0d5 !important;
}

.bg-warning {
  background-color: #f0ad4e !important;
}

a.bg-warning:focus,
a.bg-warning:hover {
  background-color: #ec971f !important;
}

.bg-danger {
  background-color: #d9534f !important;
}

a.bg-danger:focus,
a.bg-danger:hover {
  background-color: #c9302c !important;
}

.bg-inverse {
  background-color: #292b2c !important;
}

a.bg-inverse:focus,
a.bg-inverse:hover {
  background-color: #101112 !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;
}

.rounded {
  border-radius: 0.25rem;
}

.rounded-top {
  border-top-right-radius: 0.25rem;
  border-top-left-radius: 0.25rem;
}

.rounded-right {
  border-bottom-right-radius: 0.25rem;
  border-top-right-radius: 0.25rem;
}

.rounded-bottom {
  border-bottom-right-radius: 0.25rem;
  border-bottom-left-radius: 0.25rem;
}

.rounded-left {
  border-bottom-left-radius: 0.25rem;
  border-top-left-radius: 0.25rem;
}

.rounded-circle {
  border-radius: 50%;
}

.rounded-0 {
  border-radius: 0;
}

.clearfix::after {
  display: block;
  content: "";
  clear: both;
}

.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-cell {
  display: table-cell !important;
}

.d-flex {
  display: -webkit-box !important;
  display: -ms-flexbox !important;
  display: flex !important;
}

.d-inline-flex {
  display: -webkit-inline-box !important;
  display: -ms-inline-flexbox !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-cell {
    display: table-cell !important;
  }

  .d-sm-flex {
    display: -webkit-box !important;
    display: -ms-flexbox !important;
    display: flex !important;
  }

  .d-sm-inline-flex {
    display: -webkit-inline-box !important;
    display: -ms-inline-flexbox !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-cell {
    display: table-cell !important;
  }

  .d-md-flex {
    display: -webkit-box !important;
    display: -ms-flexbox !important;
    display: flex !important;
  }

  .d-md-inline-flex {
    display: -webkit-inline-box !important;
    display: -ms-inline-flexbox !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-cell {
    display: table-cell !important;
  }

  .d-lg-flex {
    display: -webkit-box !important;
    display: -ms-flexbox !important;
    display: flex !important;
  }

  .d-lg-inline-flex {
    display: -webkit-inline-box !important;
    display: -ms-inline-flexbox !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-cell {
    display: table-cell !important;
  }

  .d-xl-flex {
    display: -webkit-box !important;
    display: -ms-flexbox !important;
    display: flex !important;
  }

  .d-xl-inline-flex {
    display: -webkit-inline-box !important;
    display: -ms-inline-flexbox !important;
    display: inline-flex !important;
  }
}

.flex-first {
  -webkit-box-ordinal-group: 0;
      -ms-flex-order: -1;
          order: -1;
}

.flex-last {
  -webkit-box-ordinal-group: 2;
      -ms-flex-order: 1;
          order: 1;
}

.flex-unordered {
  -webkit-box-ordinal-group: 1;
      -ms-flex-order: 0;
          order: 0;
}

.flex-row {
  -webkit-box-orient: horizontal !important;
  -webkit-box-direction: normal !important;
      -ms-flex-direction: row !important;
          flex-direction: row !important;
}

.flex-column {
  -webkit-box-orient: vertical !important;
  -webkit-box-direction: normal !important;
      -ms-flex-direction: column !important;
          flex-direction: column !important;
}

.flex-row-reverse {
  -webkit-box-orient: horizontal !important;
  -webkit-box-direction: reverse !important;
      -ms-flex-direction: row-reverse !important;
          flex-direction: row-reverse !important;
}

.flex-column-reverse {
  -webkit-box-orient: vertical !important;
  -webkit-box-direction: reverse !important;
      -ms-flex-direction: column-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;
}

.justify-content-start {
  -webkit-box-pack: start !important;
      -ms-flex-pack: start !important;
          justify-content: flex-start !important;
}

.justify-content-end {
  -webkit-box-pack: end !important;
      -ms-flex-pack: end !important;
          justify-content: flex-end !important;
}

.justify-content-center {
  -webkit-box-pack: center !important;
      -ms-flex-pack: center !important;
          justify-content: center !important;
}

.justify-content-between {
  -webkit-box-pack: justify !important;
      -ms-flex-pack: justify !important;
          justify-content: space-between !important;
}

.justify-content-around {
  -ms-flex-pack: distribute !important;
      justify-content: space-around !important;
}

.align-items-start {
  -webkit-box-align: start !important;
      -ms-flex-align: start !important;
          align-items: flex-start !important;
}

.align-items-end {
  -webkit-box-align: end !important;
      -ms-flex-align: end !important;
          align-items: flex-end !important;
}

.align-items-center {
  -webkit-box-align: center !important;
      -ms-flex-align: center !important;
          align-items: center !important;
}

.align-items-baseline {
  -webkit-box-align: baseline !important;
      -ms-flex-align: baseline !important;
          align-items: baseline !important;
}

.align-items-stretch {
  -webkit-box-align: stretch !important;
      -ms-flex-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;
      -ms-grid-row-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;
      -ms-grid-row-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;
      -ms-grid-row-align: stretch !important;
      align-self: stretch !important;
}

@media (min-width: 576px) {
  .flex-sm-first {
    -webkit-box-ordinal-group: 0;
        -ms-flex-order: -1;
            order: -1;
  }

  .flex-sm-last {
    -webkit-box-ordinal-group: 2;
        -ms-flex-order: 1;
            order: 1;
  }

  .flex-sm-unordered {
    -webkit-box-ordinal-group: 1;
        -ms-flex-order: 0;
            order: 0;
  }

  .flex-sm-row {
    -webkit-box-orient: horizontal !important;
    -webkit-box-direction: normal !important;
        -ms-flex-direction: row !important;
            flex-direction: row !important;
  }

  .flex-sm-column {
    -webkit-box-orient: vertical !important;
    -webkit-box-direction: normal !important;
        -ms-flex-direction: column !important;
            flex-direction: column !important;
  }

  .flex-sm-row-reverse {
    -webkit-box-orient: horizontal !important;
    -webkit-box-direction: reverse !important;
        -ms-flex-direction: row-reverse !important;
            flex-direction: row-reverse !important;
  }

  .flex-sm-column-reverse {
    -webkit-box-orient: vertical !important;
    -webkit-box-direction: reverse !important;
        -ms-flex-direction: column-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;
  }

  .justify-content-sm-start {
    -webkit-box-pack: start !important;
        -ms-flex-pack: start !important;
            justify-content: flex-start !important;
  }

  .justify-content-sm-end {
    -webkit-box-pack: end !important;
        -ms-flex-pack: end !important;
            justify-content: flex-end !important;
  }

  .justify-content-sm-center {
    -webkit-box-pack: center !important;
        -ms-flex-pack: center !important;
            justify-content: center !important;
  }

  .justify-content-sm-between {
    -webkit-box-pack: justify !important;
        -ms-flex-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 {
    -webkit-box-align: start !important;
        -ms-flex-align: start !important;
            align-items: flex-start !important;
  }

  .align-items-sm-end {
    -webkit-box-align: end !important;
        -ms-flex-align: end !important;
            align-items: flex-end !important;
  }

  .align-items-sm-center {
    -webkit-box-align: center !important;
        -ms-flex-align: center !important;
            align-items: center !important;
  }

  .align-items-sm-baseline {
    -webkit-box-align: baseline !important;
        -ms-flex-align: baseline !important;
            align-items: baseline !important;
  }

  .align-items-sm-stretch {
    -webkit-box-align: stretch !important;
        -ms-flex-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;
        -ms-grid-row-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;
        -ms-grid-row-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;
        -ms-grid-row-align: stretch !important;
        align-self: stretch !important;
  }
}

@media (min-width: 768px) {
  .flex-md-first {
    -webkit-box-ordinal-group: 0;
        -ms-flex-order: -1;
            order: -1;
  }

  .flex-md-last {
    -webkit-box-ordinal-group: 2;
        -ms-flex-order: 1;
            order: 1;
  }

  .flex-md-unordered {
    -webkit-box-ordinal-group: 1;
        -ms-flex-order: 0;
            order: 0;
  }

  .flex-md-row {
    -webkit-box-orient: horizontal !important;
    -webkit-box-direction: normal !important;
        -ms-flex-direction: row !important;
            flex-direction: row !important;
  }

  .flex-md-column {
    -webkit-box-orient: vertical !important;
    -webkit-box-direction: normal !important;
        -ms-flex-direction: column !important;
            flex-direction: column !important;
  }

  .flex-md-row-reverse {
    -webkit-box-orient: horizontal !important;
    -webkit-box-direction: reverse !important;
        -ms-flex-direction: row-reverse !important;
            flex-direction: row-reverse !important;
  }

  .flex-md-column-reverse {
    -webkit-box-orient: vertical !important;
    -webkit-box-direction: reverse !important;
        -ms-flex-direction: column-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;
  }

  .justify-content-md-start {
    -webkit-box-pack: start !important;
        -ms-flex-pack: start !important;
            justify-content: flex-start !important;
  }

  .justify-content-md-end {
    -webkit-box-pack: end !important;
        -ms-flex-pack: end !important;
            justify-content: flex-end !important;
  }

  .justify-content-md-center {
    -webkit-box-pack: center !important;
        -ms-flex-pack: center !important;
            justify-content: center !important;
  }

  .justify-content-md-between {
    -webkit-box-pack: justify !important;
        -ms-flex-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 {
    -webkit-box-align: start !important;
        -ms-flex-align: start !important;
            align-items: flex-start !important;
  }

  .align-items-md-end {
    -webkit-box-align: end !important;
        -ms-flex-align: end !important;
            align-items: flex-end !important;
  }

  .align-items-md-center {
    -webkit-box-align: center !important;
        -ms-flex-align: center !important;
            align-items: center !important;
  }

  .align-items-md-baseline {
    -webkit-box-align: baseline !important;
        -ms-flex-align: baseline !important;
            align-items: baseline !important;
  }

  .align-items-md-stretch {
    -webkit-box-align: stretch !important;
        -ms-flex-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;
        -ms-grid-row-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;
        -ms-grid-row-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;
        -ms-grid-row-align: stretch !important;
        align-self: stretch !important;
  }
}

@media (min-width: 992px) {
  .flex-lg-first {
    -webkit-box-ordinal-group: 0;
        -ms-flex-order: -1;
            order: -1;
  }

  .flex-lg-last {
    -webkit-box-ordinal-group: 2;
        -ms-flex-order: 1;
            order: 1;
  }

  .flex-lg-unordered {
    -webkit-box-ordinal-group: 1;
        -ms-flex-order: 0;
            order: 0;
  }

  .flex-lg-row {
    -webkit-box-orient: horizontal !important;
    -webkit-box-direction: normal !important;
        -ms-flex-direction: row !important;
            flex-direction: row !important;
  }

  .flex-lg-column {
    -webkit-box-orient: vertical !important;
    -webkit-box-direction: normal !important;
        -ms-flex-direction: column !important;
            flex-direction: column !important;
  }

  .flex-lg-row-reverse {
    -webkit-box-orient: horizontal !important;
    -webkit-box-direction: reverse !important;
        -ms-flex-direction: row-reverse !important;
            flex-direction: row-reverse !important;
  }

  .flex-lg-column-reverse {
    -webkit-box-orient: vertical !important;
    -webkit-box-direction: reverse !important;
        -ms-flex-direction: column-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;
  }

  .justify-content-lg-start {
    -webkit-box-pack: start !important;
        -ms-flex-pack: start !important;
            justify-content: flex-start !important;
  }

  .justify-content-lg-end {
    -webkit-box-pack: end !important;
        -ms-flex-pack: end !important;
            justify-content: flex-end !important;
  }

  .justify-content-lg-center {
    -webkit-box-pack: center !important;
        -ms-flex-pack: center !important;
            justify-content: center !important;
  }

  .justify-content-lg-between {
    -webkit-box-pack: justify !important;
        -ms-flex-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 {
    -webkit-box-align: start !important;
        -ms-flex-align: start !important;
            align-items: flex-start !important;
  }

  .align-items-lg-end {
    -webkit-box-align: end !important;
        -ms-flex-align: end !important;
            align-items: flex-end !important;
  }

  .align-items-lg-center {
    -webkit-box-align: center !important;
        -ms-flex-align: center !important;
            align-items: center !important;
  }

  .align-items-lg-baseline {
    -webkit-box-align: baseline !important;
        -ms-flex-align: baseline !important;
            align-items: baseline !important;
  }

  .align-items-lg-stretch {
    -webkit-box-align: stretch !important;
        -ms-flex-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;
        -ms-grid-row-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;
        -ms-grid-row-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;
        -ms-grid-row-align: stretch !important;
        align-self: stretch !important;
  }
}

@media (min-width: 1200px) {
  .flex-xl-first {
    -webkit-box-ordinal-group: 0;
        -ms-flex-order: -1;
            order: -1;
  }

  .flex-xl-last {
    -webkit-box-ordinal-group: 2;
        -ms-flex-order: 1;
            order: 1;
  }

  .flex-xl-unordered {
    -webkit-box-ordinal-group: 1;
        -ms-flex-order: 0;
            order: 0;
  }

  .flex-xl-row {
    -webkit-box-orient: horizontal !important;
    -webkit-box-direction: normal !important;
        -ms-flex-direction: row !important;
            flex-direction: row !important;
  }

  .flex-xl-column {
    -webkit-box-orient: vertical !important;
    -webkit-box-direction: normal !important;
        -ms-flex-direction: column !important;
            flex-direction: column !important;
  }

  .flex-xl-row-reverse {
    -webkit-box-orient: horizontal !important;
    -webkit-box-direction: reverse !important;
        -ms-flex-direction: row-reverse !important;
            flex-direction: row-reverse !important;
  }

  .flex-xl-column-reverse {
    -webkit-box-orient: vertical !important;
    -webkit-box-direction: reverse !important;
        -ms-flex-direction: column-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;
  }

  .justify-content-xl-start {
    -webkit-box-pack: start !important;
        -ms-flex-pack: start !important;
            justify-content: flex-start !important;
  }

  .justify-content-xl-end {
    -webkit-box-pack: end !important;
        -ms-flex-pack: end !important;
            justify-content: flex-end !important;
  }

  .justify-content-xl-center {
    -webkit-box-pack: center !important;
        -ms-flex-pack: center !important;
            justify-content: center !important;
  }

  .justify-content-xl-between {
    -webkit-box-pack: justify !important;
        -ms-flex-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 {
    -webkit-box-align: start !important;
        -ms-flex-align: start !important;
            align-items: flex-start !important;
  }

  .align-items-xl-end {
    -webkit-box-align: end !important;
        -ms-flex-align: end !important;
            align-items: flex-end !important;
  }

  .align-items-xl-center {
    -webkit-box-align: center !important;
        -ms-flex-align: center !important;
            align-items: center !important;
  }

  .align-items-xl-baseline {
    -webkit-box-align: baseline !important;
        -ms-flex-align: baseline !important;
            align-items: baseline !important;
  }

  .align-items-xl-stretch {
    -webkit-box-align: stretch !important;
        -ms-flex-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;
        -ms-grid-row-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;
        -ms-grid-row-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;
        -ms-grid-row-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;
  }
}

.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;
}

.sticky-top {
  position: -webkit-sticky;
  position: sticky;
  top: 0;
  z-index: 1030;
}

.sr-only,
.screen-reader-text {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  border: 0;
}

.sr-only-focusable:active,
.screen-reader-text:active,
.sr-only-focusable:focus,
.screen-reader-text:focus {
  position: static;
  width: auto;
  height: auto;
  margin: 0;
  overflow: visible;
  clip: auto;
}

.w-25 {
  width: 25% !important;
}

.w-50 {
  width: 50% !important;
}

.w-75 {
  width: 75% !important;
}

.w-100 {
  width: 100% !important;
}

.h-25 {
  height: 25% !important;
}

.h-50 {
  height: 50% !important;
}

.h-75 {
  height: 75% !important;
}

.h-100 {
  height: 100% !important;
}

.mw-100 {
  max-width: 100% !important;
}

.mh-100 {
  max-height: 100% !important;
}

.m-0 {
  margin: 0 0 !important;
}

.mt-0 {
  margin-top: 0 !important;
}

.mr-0 {
  margin-right: 0 !important;
}

.mb-0 {
  margin-bottom: 0 !important;
}

.ml-0 {
  margin-left: 0 !important;
}

.mx-0 {
  margin-right: 0 !important;
  margin-left: 0 !important;
}

.my-0 {
  margin-top: 0 !important;
  margin-bottom: 0 !important;
}

.m-1 {
  margin: 0.25rem 0.25rem !important;
}

.mt-1 {
  margin-top: 0.25rem !important;
}

.mr-1 {
  margin-right: 0.25rem !important;
}

.mb-1 {
  margin-bottom: 0.25rem !important;
}

.ml-1 {
  margin-left: 0.25rem !important;
}

.mx-1 {
  margin-right: 0.25rem !important;
  margin-left: 0.25rem !important;
}

.my-1 {
  margin-top: 0.25rem !important;
  margin-bottom: 0.25rem !important;
}

.m-2 {
  margin: 0.5rem 0.5rem !important;
}

.mt-2 {
  margin-top: 0.5rem !important;
}

.mr-2 {
  margin-right: 0.5rem !important;
}

.mb-2 {
  margin-bottom: 0.5rem !important;
}

.ml-2 {
  margin-left: 0.5rem !important;
}

.mx-2 {
  margin-right: 0.5rem !important;
  margin-left: 0.5rem !important;
}

.my-2 {
  margin-top: 0.5rem !important;
  margin-bottom: 0.5rem !important;
}

.m-3 {
  margin: 1rem 1rem !important;
}

.mt-3 {
  margin-top: 1rem !important;
}

.mr-3 {
  margin-right: 1rem !important;
}

.mb-3 {
  margin-bottom: 1rem !important;
}

.ml-3 {
  margin-left: 1rem !important;
}

.mx-3 {
  margin-right: 1rem !important;
  margin-left: 1rem !important;
}

.my-3 {
  margin-top: 1rem !important;
  margin-bottom: 1rem !important;
}

.m-4 {
  margin: 1.5rem 1.5rem !important;
}

.mt-4 {
  margin-top: 1.5rem !important;
}

.mr-4 {
  margin-right: 1.5rem !important;
}

.mb-4 {
  margin-bottom: 1.5rem !important;
}

.ml-4 {
  margin-left: 1.5rem !important;
}

.mx-4 {
  margin-right: 1.5rem !important;
  margin-left: 1.5rem !important;
}

.my-4 {
  margin-top: 1.5rem !important;
  margin-bottom: 1.5rem !important;
}

.m-5 {
  margin: 3rem 3rem !important;
}

.mt-5 {
  margin-top: 3rem !important;
}

.mr-5 {
  margin-right: 3rem !important;
}

.mb-5 {
  margin-bottom: 3rem !important;
}

.ml-5 {
  margin-left: 3rem !important;
}

.mx-5 {
  margin-right: 3rem !important;
  margin-left: 3rem !important;
}

.my-5 {
  margin-top: 3rem !important;
  margin-bottom: 3rem !important;
}

.p-0 {
  padding: 0 0 !important;
}

.pt-0 {
  padding-top: 0 !important;
}

.pr-0 {
  padding-right: 0 !important;
}

.pb-0 {
  padding-bottom: 0 !important;
}

.pl-0 {
  padding-left: 0 !important;
}

.px-0 {
  padding-right: 0 !important;
  padding-left: 0 !important;
}

.py-0 {
  padding-top: 0 !important;
  padding-bottom: 0 !important;
}

.p-1 {
  padding: 0.25rem 0.25rem !important;
}

.pt-1 {
  padding-top: 0.25rem !important;
}

.pr-1 {
  padding-right: 0.25rem !important;
}

.pb-1 {
  padding-bottom: 0.25rem !important;
}

.pl-1 {
  padding-left: 0.25rem !important;
}

.px-1 {
  padding-right: 0.25rem !important;
  padding-left: 0.25rem !important;
}

.py-1 {
  padding-top: 0.25rem !important;
  padding-bottom: 0.25rem !important;
}

.p-2 {
  padding: 0.5rem 0.5rem !important;
}

.pt-2 {
  padding-top: 0.5rem !important;
}

.pr-2 {
  padding-right: 0.5rem !important;
}

.pb-2 {
  padding-bottom: 0.5rem !important;
}

.pl-2 {
  padding-left: 0.5rem !important;
}

.px-2 {
  padding-right: 0.5rem !important;
  padding-left: 0.5rem !important;
}

.py-2 {
  padding-top: 0.5rem !important;
  padding-bottom: 0.5rem !important;
}

.p-3 {
  padding: 1rem 1rem !important;
}

.pt-3 {
  padding-top: 1rem !important;
}

.pr-3 {
  padding-right: 1rem !important;
}

.pb-3 {
  padding-bottom: 1rem !important;
}

.pl-3 {
  padding-left: 1rem !important;
}

.px-3 {
  padding-right: 1rem !important;
  padding-left: 1rem !important;
}

.py-3 {
  padding-top: 1rem !important;
  padding-bottom: 1rem !important;
}

.p-4 {
  padding: 1.5rem 1.5rem !important;
}

.pt-4 {
  padding-top: 1.5rem !important;
}

.pr-4 {
  padding-right: 1.5rem !important;
}

.pb-4 {
  padding-bottom: 1.5rem !important;
}

.pl-4 {
  padding-left: 1.5rem !important;
}

.px-4 {
  padding-right: 1.5rem !important;
  padding-left: 1.5rem !important;
}

.py-4 {
  padding-top: 1.5rem !important;
  padding-bottom: 1.5rem !important;
}

.p-5 {
  padding: 3rem 3rem !important;
}

.pt-5 {
  padding-top: 3rem !important;
}

.pr-5 {
  padding-right: 3rem !important;
}

.pb-5 {
  padding-bottom: 3rem !important;
}

.pl-5 {
  padding-left: 3rem !important;
}

.px-5 {
  padding-right: 3rem !important;
  padding-left: 3rem !important;
}

.py-5 {
  padding-top: 3rem !important;
  padding-bottom: 3rem !important;
}

.m-auto {
  margin: auto !important;
}

.mt-auto {
  margin-top: auto !important;
}

.mr-auto {
  margin-right: auto !important;
}

.mb-auto {
  margin-bottom: auto !important;
}

.ml-auto {
  margin-left: auto !important;
}

.mx-auto {
  margin-right: auto !important;
  margin-left: auto !important;
}

.my-auto {
  margin-top: auto !important;
  margin-bottom: auto !important;
}

@media (min-width: 576px) {
  .m-sm-0 {
    margin: 0 0 !important;
  }

  .mt-sm-0 {
    margin-top: 0 !important;
  }

  .mr-sm-0 {
    margin-right: 0 !important;
  }

  .mb-sm-0 {
    margin-bottom: 0 !important;
  }

  .ml-sm-0 {
    margin-left: 0 !important;
  }

  .mx-sm-0 {
    margin-right: 0 !important;
    margin-left: 0 !important;
  }

  .my-sm-0 {
    margin-top: 0 !important;
    margin-bottom: 0 !important;
  }

  .m-sm-1 {
    margin: 0.25rem 0.25rem !important;
  }

  .mt-sm-1 {
    margin-top: 0.25rem !important;
  }

  .mr-sm-1 {
    margin-right: 0.25rem !important;
  }

  .mb-sm-1 {
    margin-bottom: 0.25rem !important;
  }

  .ml-sm-1 {
    margin-left: 0.25rem !important;
  }

  .mx-sm-1 {
    margin-right: 0.25rem !important;
    margin-left: 0.25rem !important;
  }

  .my-sm-1 {
    margin-top: 0.25rem !important;
    margin-bottom: 0.25rem !important;
  }

  .m-sm-2 {
    margin: 0.5rem 0.5rem !important;
  }

  .mt-sm-2 {
    margin-top: 0.5rem !important;
  }

  .mr-sm-2 {
    margin-right: 0.5rem !important;
  }

  .mb-sm-2 {
    margin-bottom: 0.5rem !important;
  }

  .ml-sm-2 {
    margin-left: 0.5rem !important;
  }

  .mx-sm-2 {
    margin-right: 0.5rem !important;
    margin-left: 0.5rem !important;
  }

  .my-sm-2 {
    margin-top: 0.5rem !important;
    margin-bottom: 0.5rem !important;
  }

  .m-sm-3 {
    margin: 1rem 1rem !important;
  }

  .mt-sm-3 {
    margin-top: 1rem !important;
  }

  .mr-sm-3 {
    margin-right: 1rem !important;
  }

  .mb-sm-3 {
    margin-bottom: 1rem !important;
  }

  .ml-sm-3 {
    margin-left: 1rem !important;
  }

  .mx-sm-3 {
    margin-right: 1rem !important;
    margin-left: 1rem !important;
  }

  .my-sm-3 {
    margin-top: 1rem !important;
    margin-bottom: 1rem !important;
  }

  .m-sm-4 {
    margin: 1.5rem 1.5rem !important;
  }

  .mt-sm-4 {
    margin-top: 1.5rem !important;
  }

  .mr-sm-4 {
    margin-right: 1.5rem !important;
  }

  .mb-sm-4 {
    margin-bottom: 1.5rem !important;
  }

  .ml-sm-4 {
    margin-left: 1.5rem !important;
  }

  .mx-sm-4 {
    margin-right: 1.5rem !important;
    margin-left: 1.5rem !important;
  }

  .my-sm-4 {
    margin-top: 1.5rem !important;
    margin-bottom: 1.5rem !important;
  }

  .m-sm-5 {
    margin: 3rem 3rem !important;
  }

  .mt-sm-5 {
    margin-top: 3rem !important;
  }

  .mr-sm-5 {
    margin-right: 3rem !important;
  }

  .mb-sm-5 {
    margin-bottom: 3rem !important;
  }

  .ml-sm-5 {
    margin-left: 3rem !important;
  }

  .mx-sm-5 {
    margin-right: 3rem !important;
    margin-left: 3rem !important;
  }

  .my-sm-5 {
    margin-top: 3rem !important;
    margin-bottom: 3rem !important;
  }

  .p-sm-0 {
    padding: 0 0 !important;
  }

  .pt-sm-0 {
    padding-top: 0 !important;
  }

  .pr-sm-0 {
    padding-right: 0 !important;
  }

  .pb-sm-0 {
    padding-bottom: 0 !important;
  }

  .pl-sm-0 {
    padding-left: 0 !important;
  }

  .px-sm-0 {
    padding-right: 0 !important;
    padding-left: 0 !important;
  }

  .py-sm-0 {
    padding-top: 0 !important;
    padding-bottom: 0 !important;
  }

  .p-sm-1 {
    padding: 0.25rem 0.25rem !important;
  }

  .pt-sm-1 {
    padding-top: 0.25rem !important;
  }

  .pr-sm-1 {
    padding-right: 0.25rem !important;
  }

  .pb-sm-1 {
    padding-bottom: 0.25rem !important;
  }

  .pl-sm-1 {
    padding-left: 0.25rem !important;
  }

  .px-sm-1 {
    padding-right: 0.25rem !important;
    padding-left: 0.25rem !important;
  }

  .py-sm-1 {
    padding-top: 0.25rem !important;
    padding-bottom: 0.25rem !important;
  }

  .p-sm-2 {
    padding: 0.5rem 0.5rem !important;
  }

  .pt-sm-2 {
    padding-top: 0.5rem !important;
  }

  .pr-sm-2 {
    padding-right: 0.5rem !important;
  }

  .pb-sm-2 {
    padding-bottom: 0.5rem !important;
  }

  .pl-sm-2 {
    padding-left: 0.5rem !important;
  }

  .px-sm-2 {
    padding-right: 0.5rem !important;
    padding-left: 0.5rem !important;
  }

  .py-sm-2 {
    padding-top: 0.5rem !important;
    padding-bottom: 0.5rem !important;
  }

  .p-sm-3 {
    padding: 1rem 1rem !important;
  }

  .pt-sm-3 {
    padding-top: 1rem !important;
  }

  .pr-sm-3 {
    padding-right: 1rem !important;
  }

  .pb-sm-3 {
    padding-bottom: 1rem !important;
  }

  .pl-sm-3 {
    padding-left: 1rem !important;
  }

  .px-sm-3 {
    padding-right: 1rem !important;
    padding-left: 1rem !important;
  }

  .py-sm-3 {
    padding-top: 1rem !important;
    padding-bottom: 1rem !important;
  }

  .p-sm-4 {
    padding: 1.5rem 1.5rem !important;
  }

  .pt-sm-4 {
    padding-top: 1.5rem !important;
  }

  .pr-sm-4 {
    padding-right: 1.5rem !important;
  }

  .pb-sm-4 {
    padding-bottom: 1.5rem !important;
  }

  .pl-sm-4 {
    padding-left: 1.5rem !important;
  }

  .px-sm-4 {
    padding-right: 1.5rem !important;
    padding-left: 1.5rem !important;
  }

  .py-sm-4 {
    padding-top: 1.5rem !important;
    padding-bottom: 1.5rem !important;
  }

  .p-sm-5 {
    padding: 3rem 3rem !important;
  }

  .pt-sm-5 {
    padding-top: 3rem !important;
  }

  .pr-sm-5 {
    padding-right: 3rem !important;
  }

  .pb-sm-5 {
    padding-bottom: 3rem !important;
  }

  .pl-sm-5 {
    padding-left: 3rem !important;
  }

  .px-sm-5 {
    padding-right: 3rem !important;
    padding-left: 3rem !important;
  }

  .py-sm-5 {
    padding-top: 3rem !important;
    padding-bottom: 3rem !important;
  }

  .m-sm-auto {
    margin: auto !important;
  }

  .mt-sm-auto {
    margin-top: auto !important;
  }

  .mr-sm-auto {
    margin-right: auto !important;
  }

  .mb-sm-auto {
    margin-bottom: auto !important;
  }

  .ml-sm-auto {
    margin-left: auto !important;
  }

  .mx-sm-auto {
    margin-right: auto !important;
    margin-left: auto !important;
  }

  .my-sm-auto {
    margin-top: auto !important;
    margin-bottom: auto !important;
  }
}

@media (min-width: 768px) {
  .m-md-0 {
    margin: 0 0 !important;
  }

  .mt-md-0 {
    margin-top: 0 !important;
  }

  .mr-md-0 {
    margin-right: 0 !important;
  }

  .mb-md-0 {
    margin-bottom: 0 !important;
  }

  .ml-md-0 {
    margin-left: 0 !important;
  }

  .mx-md-0 {
    margin-right: 0 !important;
    margin-left: 0 !important;
  }

  .my-md-0 {
    margin-top: 0 !important;
    margin-bottom: 0 !important;
  }

  .m-md-1 {
    margin: 0.25rem 0.25rem !important;
  }

  .mt-md-1 {
    margin-top: 0.25rem !important;
  }

  .mr-md-1 {
    margin-right: 0.25rem !important;
  }

  .mb-md-1 {
    margin-bottom: 0.25rem !important;
  }

  .ml-md-1 {
    margin-left: 0.25rem !important;
  }

  .mx-md-1 {
    margin-right: 0.25rem !important;
    margin-left: 0.25rem !important;
  }

  .my-md-1 {
    margin-top: 0.25rem !important;
    margin-bottom: 0.25rem !important;
  }

  .m-md-2 {
    margin: 0.5rem 0.5rem !important;
  }

  .mt-md-2 {
    margin-top: 0.5rem !important;
  }

  .mr-md-2 {
    margin-right: 0.5rem !important;
  }

  .mb-md-2 {
    margin-bottom: 0.5rem !important;
  }

  .ml-md-2 {
    margin-left: 0.5rem !important;
  }

  .mx-md-2 {
    margin-right: 0.5rem !important;
    margin-left: 0.5rem !important;
  }

  .my-md-2 {
    margin-top: 0.5rem !important;
    margin-bottom: 0.5rem !important;
  }

  .m-md-3 {
    margin: 1rem 1rem !important;
  }

  .mt-md-3 {
    margin-top: 1rem !important;
  }

  .mr-md-3 {
    margin-right: 1rem !important;
  }

  .mb-md-3 {
    margin-bottom: 1rem !important;
  }

  .ml-md-3 {
    margin-left: 1rem !important;
  }

  .mx-md-3 {
    margin-right: 1rem !important;
    margin-left: 1rem !important;
  }

  .my-md-3 {
    margin-top: 1rem !important;
    margin-bottom: 1rem !important;
  }

  .m-md-4 {
    margin: 1.5rem 1.5rem !important;
  }

  .mt-md-4 {
    margin-top: 1.5rem !important;
  }

  .mr-md-4 {
    margin-right: 1.5rem !important;
  }

  .mb-md-4 {
    margin-bottom: 1.5rem !important;
  }

  .ml-md-4 {
    margin-left: 1.5rem !important;
  }

  .mx-md-4 {
    margin-right: 1.5rem !important;
    margin-left: 1.5rem !important;
  }

  .my-md-4 {
    margin-top: 1.5rem !important;
    margin-bottom: 1.5rem !important;
  }

  .m-md-5 {
    margin: 3rem 3rem !important;
  }

  .mt-md-5 {
    margin-top: 3rem !important;
  }

  .mr-md-5 {
    margin-right: 3rem !important;
  }

  .mb-md-5 {
    margin-bottom: 3rem !important;
  }

  .ml-md-5 {
    margin-left: 3rem !important;
  }

  .mx-md-5 {
    margin-right: 3rem !important;
    margin-left: 3rem !important;
  }

  .my-md-5 {
    margin-top: 3rem !important;
    margin-bottom: 3rem !important;
  }

  .p-md-0 {
    padding: 0 0 !important;
  }

  .pt-md-0 {
    padding-top: 0 !important;
  }

  .pr-md-0 {
    padding-right: 0 !important;
  }

  .pb-md-0 {
    padding-bottom: 0 !important;
  }

  .pl-md-0 {
    padding-left: 0 !important;
  }

  .px-md-0 {
    padding-right: 0 !important;
    padding-left: 0 !important;
  }

  .py-md-0 {
    padding-top: 0 !important;
    padding-bottom: 0 !important;
  }

  .p-md-1 {
    padding: 0.25rem 0.25rem !important;
  }

  .pt-md-1 {
    padding-top: 0.25rem !important;
  }

  .pr-md-1 {
    padding-right: 0.25rem !important;
  }

  .pb-md-1 {
    padding-bottom: 0.25rem !important;
  }

  .pl-md-1 {
    padding-left: 0.25rem !important;
  }

  .px-md-1 {
    padding-right: 0.25rem !important;
    padding-left: 0.25rem !important;
  }

  .py-md-1 {
    padding-top: 0.25rem !important;
    padding-bottom: 0.25rem !important;
  }

  .p-md-2 {
    padding: 0.5rem 0.5rem !important;
  }

  .pt-md-2 {
    padding-top: 0.5rem !important;
  }

  .pr-md-2 {
    padding-right: 0.5rem !important;
  }

  .pb-md-2 {
    padding-bottom: 0.5rem !important;
  }

  .pl-md-2 {
    padding-left: 0.5rem !important;
  }

  .px-md-2 {
    padding-right: 0.5rem !important;
    padding-left: 0.5rem !important;
  }

  .py-md-2 {
    padding-top: 0.5rem !important;
    padding-bottom: 0.5rem !important;
  }

  .p-md-3 {
    padding: 1rem 1rem !important;
  }

  .pt-md-3 {
    padding-top: 1rem !important;
  }

  .pr-md-3 {
    padding-right: 1rem !important;
  }

  .pb-md-3 {
    padding-bottom: 1rem !important;
  }

  .pl-md-3 {
    padding-left: 1rem !important;
  }

  .px-md-3 {
    padding-right: 1rem !important;
    padding-left: 1rem !important;
  }

  .py-md-3 {
    padding-top: 1rem !important;
    padding-bottom: 1rem !important;
  }

  .p-md-4 {
    padding: 1.5rem 1.5rem !important;
  }

  .pt-md-4 {
    padding-top: 1.5rem !important;
  }

  .pr-md-4 {
    padding-right: 1.5rem !important;
  }

  .pb-md-4 {
    padding-bottom: 1.5rem !important;
  }

  .pl-md-4 {
    padding-left: 1.5rem !important;
  }

  .px-md-4 {
    padding-right: 1.5rem !important;
    padding-left: 1.5rem !important;
  }

  .py-md-4 {
    padding-top: 1.5rem !important;
    padding-bottom: 1.5rem !important;
  }

  .p-md-5 {
    padding: 3rem 3rem !important;
  }

  .pt-md-5 {
    padding-top: 3rem !important;
  }

  .pr-md-5 {
    padding-right: 3rem !important;
  }

  .pb-md-5 {
    padding-bottom: 3rem !important;
  }

  .pl-md-5 {
    padding-left: 3rem !important;
  }

  .px-md-5 {
    padding-right: 3rem !important;
    padding-left: 3rem !important;
  }

  .py-md-5 {
    padding-top: 3rem !important;
    padding-bottom: 3rem !important;
  }

  .m-md-auto {
    margin: auto !important;
  }

  .mt-md-auto {
    margin-top: auto !important;
  }

  .mr-md-auto {
    margin-right: auto !important;
  }

  .mb-md-auto {
    margin-bottom: auto !important;
  }

  .ml-md-auto {
    margin-left: auto !important;
  }

  .mx-md-auto {
    margin-right: auto !important;
    margin-left: auto !important;
  }

  .my-md-auto {
    margin-top: auto !important;
    margin-bottom: auto !important;
  }
}

@media (min-width: 992px) {
  .m-lg-0 {
    margin: 0 0 !important;
  }

  .mt-lg-0 {
    margin-top: 0 !important;
  }

  .mr-lg-0 {
    margin-right: 0 !important;
  }

  .mb-lg-0 {
    margin-bottom: 0 !important;
  }

  .ml-lg-0 {
    margin-left: 0 !important;
  }

  .mx-lg-0 {
    margin-right: 0 !important;
    margin-left: 0 !important;
  }

  .my-lg-0 {
    margin-top: 0 !important;
    margin-bottom: 0 !important;
  }

  .m-lg-1 {
    margin: 0.25rem 0.25rem !important;
  }

  .mt-lg-1 {
    margin-top: 0.25rem !important;
  }

  .mr-lg-1 {
    margin-right: 0.25rem !important;
  }

  .mb-lg-1 {
    margin-bottom: 0.25rem !important;
  }

  .ml-lg-1 {
    margin-left: 0.25rem !important;
  }

  .mx-lg-1 {
    margin-right: 0.25rem !important;
    margin-left: 0.25rem !important;
  }

  .my-lg-1 {
    margin-top: 0.25rem !important;
    margin-bottom: 0.25rem !important;
  }

  .m-lg-2 {
    margin: 0.5rem 0.5rem !important;
  }

  .mt-lg-2 {
    margin-top: 0.5rem !important;
  }

  .mr-lg-2 {
    margin-right: 0.5rem !important;
  }

  .mb-lg-2 {
    margin-bottom: 0.5rem !important;
  }

  .ml-lg-2 {
    margin-left: 0.5rem !important;
  }

  .mx-lg-2 {
    margin-right: 0.5rem !important;
    margin-left: 0.5rem !important;
  }

  .my-lg-2 {
    margin-top: 0.5rem !important;
    margin-bottom: 0.5rem !important;
  }

  .m-lg-3 {
    margin: 1rem 1rem !important;
  }

  .mt-lg-3 {
    margin-top: 1rem !important;
  }

  .mr-lg-3 {
    margin-right: 1rem !important;
  }

  .mb-lg-3 {
    margin-bottom: 1rem !important;
  }

  .ml-lg-3 {
    margin-left: 1rem !important;
  }

  .mx-lg-3 {
    margin-right: 1rem !important;
    margin-left: 1rem !important;
  }

  .my-lg-3 {
    margin-top: 1rem !important;
    margin-bottom: 1rem !important;
  }

  .m-lg-4 {
    margin: 1.5rem 1.5rem !important;
  }

  .mt-lg-4 {
    margin-top: 1.5rem !important;
  }

  .mr-lg-4 {
    margin-right: 1.5rem !important;
  }

  .mb-lg-4 {
    margin-bottom: 1.5rem !important;
  }

  .ml-lg-4 {
    margin-left: 1.5rem !important;
  }

  .mx-lg-4 {
    margin-right: 1.5rem !important;
    margin-left: 1.5rem !important;
  }

  .my-lg-4 {
    margin-top: 1.5rem !important;
    margin-bottom: 1.5rem !important;
  }

  .m-lg-5 {
    margin: 3rem 3rem !important;
  }

  .mt-lg-5 {
    margin-top: 3rem !important;
  }

  .mr-lg-5 {
    margin-right: 3rem !important;
  }

  .mb-lg-5 {
    margin-bottom: 3rem !important;
  }

  .ml-lg-5 {
    margin-left: 3rem !important;
  }

  .mx-lg-5 {
    margin-right: 3rem !important;
    margin-left: 3rem !important;
  }

  .my-lg-5 {
    margin-top: 3rem !important;
    margin-bottom: 3rem !important;
  }

  .p-lg-0 {
    padding: 0 0 !important;
  }

  .pt-lg-0 {
    padding-top: 0 !important;
  }

  .pr-lg-0 {
    padding-right: 0 !important;
  }

  .pb-lg-0 {
    padding-bottom: 0 !important;
  }

  .pl-lg-0 {
    padding-left: 0 !important;
  }

  .px-lg-0 {
    padding-right: 0 !important;
    padding-left: 0 !important;
  }

  .py-lg-0 {
    padding-top: 0 !important;
    padding-bottom: 0 !important;
  }

  .p-lg-1 {
    padding: 0.25rem 0.25rem !important;
  }

  .pt-lg-1 {
    padding-top: 0.25rem !important;
  }

  .pr-lg-1 {
    padding-right: 0.25rem !important;
  }

  .pb-lg-1 {
    padding-bottom: 0.25rem !important;
  }

  .pl-lg-1 {
    padding-left: 0.25rem !important;
  }

  .px-lg-1 {
    padding-right: 0.25rem !important;
    padding-left: 0.25rem !important;
  }

  .py-lg-1 {
    padding-top: 0.25rem !important;
    padding-bottom: 0.25rem !important;
  }

  .p-lg-2 {
    padding: 0.5rem 0.5rem !important;
  }

  .pt-lg-2 {
    padding-top: 0.5rem !important;
  }

  .pr-lg-2 {
    padding-right: 0.5rem !important;
  }

  .pb-lg-2 {
    padding-bottom: 0.5rem !important;
  }

  .pl-lg-2 {
    padding-left: 0.5rem !important;
  }

  .px-lg-2 {
    padding-right: 0.5rem !important;
    padding-left: 0.5rem !important;
  }

  .py-lg-2 {
    padding-top: 0.5rem !important;
    padding-bottom: 0.5rem !important;
  }

  .p-lg-3 {
    padding: 1rem 1rem !important;
  }

  .pt-lg-3 {
    padding-top: 1rem !important;
  }

  .pr-lg-3 {
    padding-right: 1rem !important;
  }

  .pb-lg-3 {
    padding-bottom: 1rem !important;
  }

  .pl-lg-3 {
    padding-left: 1rem !important;
  }

  .px-lg-3 {
    padding-right: 1rem !important;
    padding-left: 1rem !important;
  }

  .py-lg-3 {
    padding-top: 1rem !important;
    padding-bottom: 1rem !important;
  }

  .p-lg-4 {
    padding: 1.5rem 1.5rem !important;
  }

  .pt-lg-4 {
    padding-top: 1.5rem !important;
  }

  .pr-lg-4 {
    padding-right: 1.5rem !important;
  }

  .pb-lg-4 {
    padding-bottom: 1.5rem !important;
  }

  .pl-lg-4 {
    padding-left: 1.5rem !important;
  }

  .px-lg-4 {
    padding-right: 1.5rem !important;
    padding-left: 1.5rem !important;
  }

  .py-lg-4 {
    padding-top: 1.5rem !important;
    padding-bottom: 1.5rem !important;
  }

  .p-lg-5 {
    padding: 3rem 3rem !important;
  }

  .pt-lg-5 {
    padding-top: 3rem !important;
  }

  .pr-lg-5 {
    padding-right: 3rem !important;
  }

  .pb-lg-5 {
    padding-bottom: 3rem !important;
  }

  .pl-lg-5 {
    padding-left: 3rem !important;
  }

  .px-lg-5 {
    padding-right: 3rem !important;
    padding-left: 3rem !important;
  }

  .py-lg-5 {
    padding-top: 3rem !important;
    padding-bottom: 3rem !important;
  }

  .m-lg-auto {
    margin: auto !important;
  }

  .mt-lg-auto {
    margin-top: auto !important;
  }

  .mr-lg-auto {
    margin-right: auto !important;
  }

  .mb-lg-auto {
    margin-bottom: auto !important;
  }

  .ml-lg-auto {
    margin-left: auto !important;
  }

  .mx-lg-auto {
    margin-right: auto !important;
    margin-left: auto !important;
  }

  .my-lg-auto {
    margin-top: auto !important;
    margin-bottom: auto !important;
  }
}

@media (min-width: 1200px) {
  .m-xl-0 {
    margin: 0 0 !important;
  }

  .mt-xl-0 {
    margin-top: 0 !important;
  }

  .mr-xl-0 {
    margin-right: 0 !important;
  }

  .mb-xl-0 {
    margin-bottom: 0 !important;
  }

  .ml-xl-0 {
    margin-left: 0 !important;
  }

  .mx-xl-0 {
    margin-right: 0 !important;
    margin-left: 0 !important;
  }

  .my-xl-0 {
    margin-top: 0 !important;
    margin-bottom: 0 !important;
  }

  .m-xl-1 {
    margin: 0.25rem 0.25rem !important;
  }

  .mt-xl-1 {
    margin-top: 0.25rem !important;
  }

  .mr-xl-1 {
    margin-right: 0.25rem !important;
  }

  .mb-xl-1 {
    margin-bottom: 0.25rem !important;
  }

  .ml-xl-1 {
    margin-left: 0.25rem !important;
  }

  .mx-xl-1 {
    margin-right: 0.25rem !important;
    margin-left: 0.25rem !important;
  }

  .my-xl-1 {
    margin-top: 0.25rem !important;
    margin-bottom: 0.25rem !important;
  }

  .m-xl-2 {
    margin: 0.5rem 0.5rem !important;
  }

  .mt-xl-2 {
    margin-top: 0.5rem !important;
  }

  .mr-xl-2 {
    margin-right: 0.5rem !important;
  }

  .mb-xl-2 {
    margin-bottom: 0.5rem !important;
  }

  .ml-xl-2 {
    margin-left: 0.5rem !important;
  }

  .mx-xl-2 {
    margin-right: 0.5rem !important;
    margin-left: 0.5rem !important;
  }

  .my-xl-2 {
    margin-top: 0.5rem !important;
    margin-bottom: 0.5rem !important;
  }

  .m-xl-3 {
    margin: 1rem 1rem !important;
  }

  .mt-xl-3 {
    margin-top: 1rem !important;
  }

  .mr-xl-3 {
    margin-right: 1rem !important;
  }

  .mb-xl-3 {
    margin-bottom: 1rem !important;
  }

  .ml-xl-3 {
    margin-left: 1rem !important;
  }

  .mx-xl-3 {
    margin-right: 1rem !important;
    margin-left: 1rem !important;
  }

  .my-xl-3 {
    margin-top: 1rem !important;
    margin-bottom: 1rem !important;
  }

  .m-xl-4 {
    margin: 1.5rem 1.5rem !important;
  }

  .mt-xl-4 {
    margin-top: 1.5rem !important;
  }

  .mr-xl-4 {
    margin-right: 1.5rem !important;
  }

  .mb-xl-4 {
    margin-bottom: 1.5rem !important;
  }

  .ml-xl-4 {
    margin-left: 1.5rem !important;
  }

  .mx-xl-4 {
    margin-right: 1.5rem !important;
    margin-left: 1.5rem !important;
  }

  .my-xl-4 {
    margin-top: 1.5rem !important;
    margin-bottom: 1.5rem !important;
  }

  .m-xl-5 {
    margin: 3rem 3rem !important;
  }

  .mt-xl-5 {
    margin-top: 3rem !important;
  }

  .mr-xl-5 {
    margin-right: 3rem !important;
  }

  .mb-xl-5 {
    margin-bottom: 3rem !important;
  }

  .ml-xl-5 {
    margin-left: 3rem !important;
  }

  .mx-xl-5 {
    margin-right: 3rem !important;
    margin-left: 3rem !important;
  }

  .my-xl-5 {
    margin-top: 3rem !important;
    margin-bottom: 3rem !important;
  }

  .p-xl-0 {
    padding: 0 0 !important;
  }

  .pt-xl-0 {
    padding-top: 0 !important;
  }

  .pr-xl-0 {
    padding-right: 0 !important;
  }

  .pb-xl-0 {
    padding-bottom: 0 !important;
  }

  .pl-xl-0 {
    padding-left: 0 !important;
  }

  .px-xl-0 {
    padding-right: 0 !important;
    padding-left: 0 !important;
  }

  .py-xl-0 {
    padding-top: 0 !important;
    padding-bottom: 0 !important;
  }

  .p-xl-1 {
    padding: 0.25rem 0.25rem !important;
  }

  .pt-xl-1 {
    padding-top: 0.25rem !important;
  }

  .pr-xl-1 {
    padding-right: 0.25rem !important;
  }

  .pb-xl-1 {
    padding-bottom: 0.25rem !important;
  }

  .pl-xl-1 {
    padding-left: 0.25rem !important;
  }

  .px-xl-1 {
    padding-right: 0.25rem !important;
    padding-left: 0.25rem !important;
  }

  .py-xl-1 {
    padding-top: 0.25rem !important;
    padding-bottom: 0.25rem !important;
  }

  .p-xl-2 {
    padding: 0.5rem 0.5rem !important;
  }

  .pt-xl-2 {
    padding-top: 0.5rem !important;
  }

  .pr-xl-2 {
    padding-right: 0.5rem !important;
  }

  .pb-xl-2 {
    padding-bottom: 0.5rem !important;
  }

  .pl-xl-2 {
    padding-left: 0.5rem !important;
  }

  .px-xl-2 {
    padding-right: 0.5rem !important;
    padding-left: 0.5rem !important;
  }

  .py-xl-2 {
    padding-top: 0.5rem !important;
    padding-bottom: 0.5rem !important;
  }

  .p-xl-3 {
    padding: 1rem 1rem !important;
  }

  .pt-xl-3 {
    padding-top: 1rem !important;
  }

  .pr-xl-3 {
    padding-right: 1rem !important;
  }

  .pb-xl-3 {
    padding-bottom: 1rem !important;
  }

  .pl-xl-3 {
    padding-left: 1rem !important;
  }

  .px-xl-3 {
    padding-right: 1rem !important;
    padding-left: 1rem !important;
  }

  .py-xl-3 {
    padding-top: 1rem !important;
    padding-bottom: 1rem !important;
  }

  .p-xl-4 {
    padding: 1.5rem 1.5rem !important;
  }

  .pt-xl-4 {
    padding-top: 1.5rem !important;
  }

  .pr-xl-4 {
    padding-right: 1.5rem !important;
  }

  .pb-xl-4 {
    padding-bottom: 1.5rem !important;
  }

  .pl-xl-4 {
    padding-left: 1.5rem !important;
  }

  .px-xl-4 {
    padding-right: 1.5rem !important;
    padding-left: 1.5rem !important;
  }

  .py-xl-4 {
    padding-top: 1.5rem !important;
    padding-bottom: 1.5rem !important;
  }

  .p-xl-5 {
    padding: 3rem 3rem !important;
  }

  .pt-xl-5 {
    padding-top: 3rem !important;
  }

  .pr-xl-5 {
    padding-right: 3rem !important;
  }

  .pb-xl-5 {
    padding-bottom: 3rem !important;
  }

  .pl-xl-5 {
    padding-left: 3rem !important;
  }

  .px-xl-5 {
    padding-right: 3rem !important;
    padding-left: 3rem !important;
  }

  .py-xl-5 {
    padding-top: 3rem !important;
    padding-bottom: 3rem !important;
  }

  .m-xl-auto {
    margin: auto !important;
  }

  .mt-xl-auto {
    margin-top: auto !important;
  }

  .mr-xl-auto {
    margin-right: auto !important;
  }

  .mb-xl-auto {
    margin-bottom: auto !important;
  }

  .ml-xl-auto {
    margin-left: auto !important;
  }

  .mx-xl-auto {
    margin-right: auto !important;
    margin-left: auto !important;
  }

  .my-xl-auto {
    margin-top: auto !important;
    margin-bottom: auto !important;
  }
}

.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-normal {
  font-weight: normal;
}

.font-weight-bold {
  font-weight: bold;
}

.font-italic {
  font-style: italic;
}

.text-white {
  color: #fff !important;
}

.text-muted {
  color: #636c72 !important;
}

a.text-muted:focus,
a.text-muted:hover {
  color: #4b5257 !important;
}

.text-primary {
  color: #27ae60 !important;
}

a.text-primary:focus,
a.text-primary:hover {
  color: #1e8449 !important;
}

.text-success {
  color: #5cb85c !important;
}

a.text-success:focus,
a.text-success:hover {
  color: #449d44 !important;
}

.text-info {
  color: #5bc0de !important;
}

a.text-info:focus,
a.text-info:hover {
  color: #31b0d5 !important;
}

.text-warning {
  color: #f0ad4e !important;
}

a.text-warning:focus,
a.text-warning:hover {
  color: #ec971f !important;
}

.text-danger {
  color: #d9534f !important;
}

a.text-danger:focus,
a.text-danger:hover {
  color: #c9302c !important;
}

.text-gray-dark {
  color: #292b2c !important;
}

a.text-gray-dark:focus,
a.text-gray-dark:hover {
  color: #101112 !important;
}

.text-hide {
  font: 0/0 a;
  color: transparent;
  text-shadow: none;
  background-color: transparent;
  border: 0;
}

.invisible {
  visibility: hidden !important;
}

.hidden-xs-up {
  display: none !important;
}

@media (max-width: 575px) {
  .hidden-xs-down {
    display: none !important;
  }
}

@media (min-width: 576px) {
  .hidden-sm-up {
    display: none !important;
  }
}

@media (max-width: 767px) {
  .hidden-sm-down {
    display: none !important;
  }
}

@media (min-width: 768px) {
  .hidden-md-up {
    display: none !important;
  }
}

@media (max-width: 991px) {
  .hidden-md-down {
    display: none !important;
  }
}

@media (min-width: 992px) {
  .hidden-lg-up {
    display: none !important;
  }
}

@media (max-width: 1199px) {
  .hidden-lg-down {
    display: none !important;
  }
}

@media (min-width: 1200px) {
  .hidden-xl-up {
    display: none !important;
  }
}

.hidden-xl-down {
  display: none !important;
}

.visible-print-block {
  display: none !important;
}

@media print {
  .visible-print-block {
    display: block !important;
  }
}

.visible-print-inline {
  display: none !important;
}

@media print {
  .visible-print-inline {
    display: inline !important;
  }
}

.visible-print-inline-block {
  display: none !important;
}

@media print {
  .visible-print-inline-block {
    display: inline-block !important;
  }
}

@media print {
  .hidden-print {
    display: none !important;
  }
}

.btn:hover,
.comment-form input[type="submit"]:hover,
.search-form .search-submit:hover,
.btn-large:hover {
  background-color: #3048CB;
}

.comment-list ol {
  list-style: none;
}

.search-form label {
  font-weight: normal;
}

.alignnone {
  margin-left: 0;
  margin-right: 0;
  max-width: 100%;
  height: auto;
}

.aligncenter {
  display: block;
  margin: 0.5rem auto;
  height: auto;
}

.alignleft,
.alignright {
  margin-bottom: 0.5rem;
  height: auto;
}

@media (min-width: 576px) {
  .alignleft {
    float: left;
    margin-right: 0.5rem;
  }

  .alignright {
    float: right;
    margin-left: 0.5rem;
  }
}

body#tinymce {
  margin: 12px !important;
}

.nav-item,
.banner .nav li {
  list-style-type: none !important;
  opacity: 0.8;
}

.nav-item:first-child,
.banner .nav li:first-child {
  margin-right: 20px;
}

.nav-item a,
.banner .nav li a {
  font-size: 16px;
  font-weight: bold;
}

.hero_fullscreen.background_solid.solid_02 {
  height: 100vh;
}

.logo_home {
  margin-bottom: 0;
}

.font-handwrite {
  font-weight: 700;
  font-family: 'La Belle Aurore', cursive;
  margin-bottom: -15px;
  margin-left: 200px;
  word-spacing: -1rem;
  color: #3D5AFE;
}

.slogan {
  margin-top: 0;
}

.feature_box.feature_box_final {
  border-bottom: none;
}

.strike {
  position: relative;
  display: inline-block;
}

.strike::before {
  content: '';
  width: 100%;
  position: absolute;
  right: 0;
  top: 50%;
}

.strike::before {
  border-bottom: 4px solid #3D5AFE;
  -webkit-transform: skewY(-10deg);
  transform: skewY(-10deg);
}

p.description {
  font-size: 1.2rem;
}

p.launch-description {
  opacity: 1;
}

p.launch-description .launch-text {
  opacity: 0.64;
}

.smiley {
  opacity: 1;
}

#more_info ul {
  font-size: 1.2rem;
  display: inline-block;
  opacity: 0.64;
  list-style-type: circle;
  text-align: center;
}

#more_info ul li {
  text-align: left;
}

.ml-button-iframe {
  background-color: transparent !important;
  border: 0px none transparent !important;
  overflow: hidden !important;
  position: fixed !important;
  visibility: visible !important;
  margin: 0px !important;
  padding: 0px !important;
  left: 0px !important;
  top: 0px !important;
  width: 100% !important;
  height: 100% !important;
  z-index: 9999 !important;
  display: none;
}

#footer.subsection {
  padding-top: 0;
}

/*------------------------------------------------------------------
[Stylesheet]
JAMES Framework - Reset & Typography
-------------------------------------------------------------------*/

/*! normalize.css v3.0.1 | MIT License | git.io/normalize */

/**
 * 1. Set default font family to sans-serif.
 * 2. Prevent iOS text size adjust after orientation change, without disabling
 *    user zoom.
 */

html {
  font-family: sans-serif;
  /* 1 */
  -ms-text-size-adjust: 100%;
  /* 2 */
  -webkit-text-size-adjust: 100%;
  /* 2 */
}

/**
 * Remove default margin.
 */

body {
  margin: 0;
}

/* HTML5 display definitions
   ========================================================================== */

/**
 * Correct `block` display not defined for any HTML5 element in IE 8/9.
 * Correct `block` display not defined for `details` or `summary` in IE 10/11 and Firefox.
 * Correct `block` display not defined for `main` in IE 11.
 */

article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
main,
nav,
section,
summary {
  display: block;
}

/**
 * 1. Correct `inline-block` display not defined in IE 8/9.
 * 2. Normalize vertical alignment of `progress` in Chrome, Firefox, and Opera.
 */

audio,
canvas,
progress,
video {
  display: inline-block;
  /* 1 */
  vertical-align: baseline;
  /* 2 */
}

/**
 * Prevent modern browsers from displaying `audio` without controls.
 * Remove excess height in iOS 5 devices.
 */

audio:not([controls]) {
  display: none;
  height: 0;
}

/**
 * Address `[hidden]` styling not present in IE 8/9/10.
 * Hide the `template` element in IE 8/9/11, Safari, and Firefox < 22.
 */

[hidden],
template {
  display: none;
}

/* Links
   ========================================================================== */

/**
 * Remove the gray background color from active links in IE 10.
 */

a {
  background: transparent;
}

/**
 * Improve readability when focused and also mouse hovered in all browsers.
 */

a:active,
a:hover {
  outline: 0;
}

/* Text-level semantics
   ========================================================================== */

/**
 * Address styling not present in IE 8/9/10/11, Safari, and Chrome.
 */

abbr[title] {
  border-bottom: 1px dotted;
}

/**
 * Address style set to `bolder` in Firefox 4+, Safari, and Chrome.
 */

b,
strong {
  font-weight: bold;
}

/**
 * Address styling not present in Safari and Chrome.
 */

dfn {
  font-style: italic;
}

/**
 * Address variable `h1` font-size and margin within `section` and `article`
 * contexts in Firefox 4+, Safari, and Chrome.
 */

h1 {
  font-size: 2em;
  margin: 0.67em 0;
}

/**
 * Address styling not present in IE 8/9.
 */

mark {
  background: #ff0;
  color: #000;
}

/**
 * Address inconsistent and variable font size in all browsers.
 */

small {
  font-size: 80%;
}

/**
 * Prevent `sub` and `sup` affecting `line-height` in all browsers.
 */

sub,
sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline;
}

sup {
  top: -0.5em;
}

sub {
  bottom: -0.25em;
}

/* Embedded content
   ========================================================================== */

/**
 * Remove border when inside `a` element in IE 8/9/10.
 */

img {
  border: 0;
}

/**
 * Correct overflow not hidden in IE 9/10/11.
 */

svg:not(:root) {
  overflow: hidden;
}

/* Grouping content
   ========================================================================== */

/**
 * Address margin not present in IE 8/9 and Safari.
 */

figure {
  margin: 1em 40px;
}

/**
 * Address differences between Firefox and other browsers.
 */

hr {
  box-sizing: content-box;
  height: 0;
}

/**
 * Contain overflow in all browsers.
 */

pre {
  overflow: auto;
}

/**
 * Address odd `em`-unit font size rendering in all browsers.
 */

code,
kbd,
pre,
samp {
  font-family: monospace, monospace;
  font-size: 1em;
}

/* Forms
   ========================================================================== */

/**
 * Known limitation: by default, Chrome and Safari on OS X allow very limited
 * styling of `select`, unless a `border` property is set.
 */

/**
 * 1. Correct color not being inherited.
 *    Known issue: affects color of disabled elements.
 * 2. Correct font properties not being inherited.
 * 3. Address margins set differently in Firefox 4+, Safari, and Chrome.
 */

button,
input,
optgroup,
select,
textarea {
  color: inherit;
  /* 1 */
  font: inherit;
  /* 2 */
  margin: 0;
  /* 3 */
}

/**
 * Address `overflow` set to `hidden` in IE 8/9/10/11.
 */

button {
  overflow: visible;
}

/**
 * Address inconsistent `text-transform` inheritance for `button` and `select`.
 * All other form control elements do not inherit `text-transform` values.
 * Correct `button` style inheritance in Firefox, IE 8/9/10/11, and Opera.
 * Correct `select` style inheritance in Firefox.
 */

button,
select {
  text-transform: none;
}

/**
 * 1. Avoid the WebKit bug in Android 4.0.* where (2) destroys native `audio`
 *    and `video` controls.
 * 2. Correct inability to style clickable `input` types in iOS.
 * 3. Improve usability and consistency of cursor style between image-type
 *    `input` and others.
 */

button,
html input[type="button"],
input[type="reset"],
input[type="submit"] {
  -webkit-appearance: button;
  /* 2 */
  cursor: pointer;
  /* 3 */
}

/**
 * Re-set default cursor for disabled elements.
 */

button[disabled],
html input[disabled] {
  cursor: default;
}

/**
 * Remove inner padding and border in Firefox 4+.
 */

button::-moz-focus-inner,
input::-moz-focus-inner {
  border: 0;
  padding: 0;
}

/**
 * Address Firefox 4+ setting `line-height` on `input` using `!important` in
 * the UA stylesheet.
 */

input {
  line-height: normal;
}

/**
 * It's recommended that you don't attempt to style these elements.
 * Firefox's implementation doesn't respect box-sizing, padding, or width.
 *
 * 1. Address box sizing set to `content-box` in IE 8/9/10.
 * 2. Remove excess padding in IE 8/9/10.
 */

input[type="checkbox"],
input[type="radio"] {
  box-sizing: border-box;
  /* 1 */
  padding: 0;
  /* 2 */
}

/**
 * Fix the cursor style for Chrome's increment/decrement buttons. For certain
 * `font-size` values of the `input`, it causes the cursor style of the
 * decrement button to change from `default` to `text`.
 */

input[type="number"]::-webkit-inner-spin-button,
input[type="number"]::-webkit-outer-spin-button {
  height: auto;
}

/**
 * 1. Address `appearance` set to `searchfield` in Safari and Chrome.
 * 2. Address `box-sizing` set to `border-box` in Safari and Chrome
 *    (include `-moz` to future-proof).
 */

input[type="search"] {
  -webkit-appearance: textfield;
  /* 1 */
  /* 2 */
  box-sizing: content-box;
}

/**
 * Remove inner padding and search cancel button in Safari and Chrome on OS X.
 * Safari (but not Chrome) clips the cancel button when the search input has
 * padding (and `textfield` appearance).
 */

input[type="search"]::-webkit-search-cancel-button,
input[type="search"]::-webkit-search-decoration {
  -webkit-appearance: none;
}

/**
 * Define consistent border, margin, and padding.
 */

fieldset {
  border: 1px solid #c0c0c0;
  margin: 0 2px;
  padding: 0.35em 0.625em 0.75em;
}

/**
 * 1. Correct `color` not being inherited in IE 8/9/10/11.
 * 2. Remove padding so people aren't caught out if they zero out fieldsets.
 */

legend {
  border: 0;
  /* 1 */
  padding: 0;
  /* 2 */
}

/**
 * Remove default vertical scrollbar in IE 8/9/10/11.
 */

textarea {
  overflow: auto;
}

/**
 * Don't inherit the `font-weight` (applied by a rule above).
 * NOTE: the default cannot safely be changed in Chrome and Safari on OS X.
 */

optgroup {
  font-weight: bold;
}

/* Tables
   ========================================================================== */

/**
 * Remove most spacing between table cells.
 */

table {
  border-collapse: collapse;
  border-spacing: 0;
}

td,
th {
  padding: 0;
}

html {
  box-sizing: border-box;
}

*,
*:before,
*:after {
  box-sizing: inherit;
}

ul {
  list-style-type: none;
  padding: 0;
}

/* Typography 
   ========================================================================== */

a {
  text-decoration: none;
}

html {
  -webkit-font-smoothing: antialiased !important;
  text-rendering: optimizeLegibility !important;
  font-size: 14px;
  line-height: 1.72rem;
  font-family: 'Merriweather', serif;
  font-weight: normal;
}

h1,
h2,
h3,
h4,
h6,
.btn,
.comment-form input[type="submit"],
.search-form .search-submit,
.btn-large,
.btn-flat,
.menu_bar_navigation,
.cbp-spmenu a {
  font-family: 'Lato', sans-serif;
}

@media (max-width: 479px) {
  html {
    font-size: 12px;
  }
}

@media (min-width: 480px) and (max-width: 767px) {
  html {
    font-size: 12px;
  }
}

@media (min-width: 768px) and (max-width: 991px) {
  html {
    font-size: 13px;
  }
}

@media (min-width: 992px) and (max-width: 1199px) {
  html {
    font-size: 14px;
  }
}

@media (min-width: 1200px) {
  html {
    font-size: 17px;
  }
}

body {
  -webkit-font-smoothing: antialiased !important;
  text-rendering: geometricPrecision !important;
}

p {
  opacity: 0.64;
  font-weight: 300;
  font-size: 0.92rem;
  letter-spacing: 0.02rem;
  line-height: 1.72rem;
  margin: 0px 0px 1.72rem 0px;
}

p a {
  font-weight: 400;
  opacity: 1 !important;
}

h1 a,
h2 a,
h3 a,
h4 a,
h5 a,
h6 a {
  font-weight: inherit;
}

h1 {
  opacity: 0.64;
  font-weight: 300;
  letter-spacing: -0.2rem;
  font-size: 4rem;
  line-height: 4.28rem;
  margin: 1.72rem 0px 1.72rem 0px;
}

h2 {
  opacity: 1;
  font-weight: 300;
  letter-spacing: 0.01rem;
  font-size: 3.21rem;
  line-height: 3.44rem;
  margin: 1.72rem 0px 1.72rem 0px;
}

h3 {
  opacity: 1;
  font-weight: 300;
  letter-spacing: 0.01rem;
  font-size: 2.42rem;
  line-height: 2.86rem;
  margin: 1.72rem 0px 1.14rem 0px;
}

h4 {
  opacity: 0.64;
  font-weight: 300;
  font-size: 1.42rem;
  letter-spacing: 0.01rem;
  line-height: 2rem;
  margin: 1.72rem 0px 1.4rem 0px;
}

h5 {
  opacity: 0.6;
  font-weight: 400;
  letter-spacing: 0.02rem;
  font-size: 1.14rem;
  line-height: 2rem;
  margin: 1.72rem 0px 1.4rem 0px;
}

h6 {
  opacity: 1;
  font-weight: 900;
  text-transform: uppercase;
  letter-spacing: 0.1rem;
  font-size: 0.92rem;
  line-height: 1rem;
  margin: 0px 0px 0rem 0px;
}

em {
  font-style: italic;
}

strong {
  font-weight: 500;
}

small {
  letter-spacing: 0.02rem;
  font-weight: 500;
  font-size: 0.857rem;
  line-height: 1.72rem;
}

nav a {
  font-size: 0.928rem;
  line-height: 1.72rem;
  letter-spacing: 0.03rem;
}

/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInJlc291cmNlcy9hc3NldHMvc2Fzcy9tYWluLnNjc3MiLCJyZXNvdXJjZXMvYXNzZXRzL3Nhc3MvY29tbW9uL192YXJpYWJsZXMuc2NzcyIsInJlc291cmNlcy9hc3NldHMvc2Fzcy92ZW5kb3IvX21haW4uc2NzcyIsInJlc291cmNlcy9hc3NldHMvc2Fzcy92ZW5kb3IvX2NvbG9yX3NjaGVtZV9saWdodC5zY3NzIiwicmVzb3VyY2VzL2Fzc2V0cy9zYXNzL3ZlbmRvci9jb2xvcnMvX2NvbG9yX3BhbGV0dGVfY3lhbi5zY3NzIiwicmVzb3VyY2VzL2Fzc2V0cy9zYXNzL3ZlbmRvci9fcmVzcG9uc2l2aXR5LnNjc3MiLCJyZXNvdXJjZXMvYXNzZXRzL3Nhc3MvdmVuZG9yL19hbmltYXRlLnNjc3MiLCJyZXNvdXJjZXMvYXNzZXRzL3Nhc3MvdmVuZG9yL19vd2wuY2Fyb3VzZWwuc2NzcyIsInJlc291cmNlcy9hc3NldHMvc2Fzcy92ZW5kb3IvX293bC50aGVtZS5zY3NzIiwicmVzb3VyY2VzL2Fzc2V0cy9zYXNzL3ZlbmRvci9fb3dsLnRyYW5zaXRpb25zLnNjc3MiLCJyZXNvdXJjZXMvYXNzZXRzL3Nhc3MvdmVuZG9yL2Jvb3RzdHJhcC9zY3NzL2Jvb3RzdHJhcC5zY3NzIiwicmVzb3VyY2VzL2Fzc2V0cy9zYXNzL3ZlbmRvci9ib290c3RyYXAvc2Nzcy9fdmFyaWFibGVzLnNjc3MiLCJyZXNvdXJjZXMvYXNzZXRzL3Nhc3MvdmVuZG9yL2Jvb3RzdHJhcC9zY3NzL19taXhpbnMuc2NzcyIsInJlc291cmNlcy9hc3NldHMvc2Fzcy92ZW5kb3IvYm9vdHN0cmFwL3Njc3MvbWl4aW5zL19icmVha3BvaW50cy5zY3NzIiwicmVzb3VyY2VzL2Fzc2V0cy9zYXNzL3ZlbmRvci9ib290c3RyYXAvc2Nzcy9taXhpbnMvX2hvdmVyLnNjc3MiLCJyZXNvdXJjZXMvYXNzZXRzL3Nhc3MvdmVuZG9yL2Jvb3RzdHJhcC9zY3NzL21peGlucy9faW1hZ2Uuc2NzcyIsInJlc291cmNlcy9hc3NldHMvc2Fzcy92ZW5kb3IvYm9vdHN0cmFwL3Njc3MvbWl4aW5zL19iYWRnZS5zY3NzIiwicmVzb3VyY2VzL2Fzc2V0cy9zYXNzL3ZlbmRvci9ib290c3RyYXAvc2Nzcy9taXhpbnMvX3Jlc2l6ZS5zY3NzIiwicmVzb3VyY2VzL2Fzc2V0cy9zYXNzL3ZlbmRvci9ib290c3RyYXAvc2Nzcy9taXhpbnMvX3NjcmVlbi1yZWFkZXIuc2NzcyIsInJlc291cmNlcy9hc3NldHMvc2Fzcy92ZW5kb3IvYm9vdHN0cmFwL3Njc3MvbWl4aW5zL19zaXplLnNjc3MiLCJyZXNvdXJjZXMvYXNzZXRzL3Nhc3MvdmVuZG9yL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fcmVzZXQtdGV4dC5zY3NzIiwicmVzb3VyY2VzL2Fzc2V0cy9zYXNzL3ZlbmRvci9ib290c3RyYXAvc2Nzcy9taXhpbnMvX3RleHQtZW1waGFzaXMuc2NzcyIsInJlc291cmNlcy9hc3NldHMvc2Fzcy92ZW5kb3IvYm9vdHN0cmFwL3Njc3MvbWl4aW5zL190ZXh0LWhpZGUuc2NzcyIsInJlc291cmNlcy9hc3NldHMvc2Fzcy92ZW5kb3IvYm9vdHN0cmFwL3Njc3MvbWl4aW5zL190ZXh0LXRydW5jYXRlLnNjc3MiLCJyZXNvdXJjZXMvYXNzZXRzL3Nhc3MvdmVuZG9yL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fdHJhbnNmb3Jtcy5zY3NzIiwicmVzb3VyY2VzL2Fzc2V0cy9zYXNzL3ZlbmRvci9ib290c3RyYXAvc2Nzcy9taXhpbnMvX3Zpc2liaWxpdHkuc2NzcyIsInJlc291cmNlcy9hc3NldHMvc2Fzcy92ZW5kb3IvYm9vdHN0cmFwL3Njc3MvbWl4aW5zL19hbGVydC5zY3NzIiwicmVzb3VyY2VzL2Fzc2V0cy9zYXNzL3ZlbmRvci9ib290c3RyYXAvc2Nzcy9taXhpbnMvX2J1dHRvbnMuc2NzcyIsInJlc291cmNlcy9hc3NldHMvc2Fzcy92ZW5kb3IvYm9vdHN0cmFwL3Njc3MvbWl4aW5zL19jYXJkcy5zY3NzIiwicmVzb3VyY2VzL2Fzc2V0cy9zYXNzL3ZlbmRvci9ib290c3RyYXAvc2Nzcy9taXhpbnMvX3BhZ2luYXRpb24uc2NzcyIsInJlc291cmNlcy9hc3NldHMvc2Fzcy92ZW5kb3IvYm9vdHN0cmFwL3Njc3MvbWl4aW5zL19saXN0cy5zY3NzIiwicmVzb3VyY2VzL2Fzc2V0cy9zYXNzL3ZlbmRvci9ib290c3RyYXAvc2Nzcy9taXhpbnMvX2xpc3QtZ3JvdXAuc2NzcyIsInJlc291cmNlcy9hc3NldHMvc2Fzcy92ZW5kb3IvYm9vdHN0cmFwL3Njc3MvbWl4aW5zL19uYXYtZGl2aWRlci5zY3NzIiwicmVzb3VyY2VzL2Fzc2V0cy9zYXNzL3ZlbmRvci9ib290c3RyYXAvc2Nzcy9taXhpbnMvX2Zvcm1zLnNjc3MiLCJyZXNvdXJjZXMvYXNzZXRzL3Nhc3MvdmVuZG9yL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fdGFibGUtcm93LnNjc3MiLCJyZXNvdXJjZXMvYXNzZXRzL3Nhc3MvdmVuZG9yL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fYmFja2dyb3VuZC12YXJpYW50LnNjc3MiLCJyZXNvdXJjZXMvYXNzZXRzL3Nhc3MvdmVuZG9yL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fYm9yZGVyLXJhZGl1cy5zY3NzIiwicmVzb3VyY2VzL2Fzc2V0cy9zYXNzL3ZlbmRvci9ib290c3RyYXAvc2Nzcy9taXhpbnMvX2dyYWRpZW50cy5zY3NzIiwicmVzb3VyY2VzL2Fzc2V0cy9zYXNzL3ZlbmRvci9ib290c3RyYXAvc2Nzcy9taXhpbnMvX2NsZWFyZml4LnNjc3MiLCJyZXNvdXJjZXMvYXNzZXRzL3Nhc3MvdmVuZG9yL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fZ3JpZC1mcmFtZXdvcmsuc2NzcyIsInJlc291cmNlcy9hc3NldHMvc2Fzcy92ZW5kb3IvYm9vdHN0cmFwL3Njc3MvbWl4aW5zL19ncmlkLnNjc3MiLCJyZXNvdXJjZXMvYXNzZXRzL3Nhc3MvdmVuZG9yL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fZmxvYXQuc2NzcyIsInJlc291cmNlcy9hc3NldHMvc2Fzcy92ZW5kb3IvYm9vdHN0cmFwL3Njc3MvX2N1c3RvbS5zY3NzIiwicmVzb3VyY2VzL2Fzc2V0cy9zYXNzL3ZlbmRvci9ib290c3RyYXAvc2Nzcy9fbm9ybWFsaXplLnNjc3MiLCJyZXNvdXJjZXMvYXNzZXRzL3Nhc3MvdmVuZG9yL2Jvb3RzdHJhcC9zY3NzL19wcmludC5zY3NzIiwicmVzb3VyY2VzL2Fzc2V0cy9zYXNzL3ZlbmRvci9ib290c3RyYXAvc2Nzcy9fcmVib290LnNjc3MiLCJyZXNvdXJjZXMvYXNzZXRzL3Nhc3MvdmVuZG9yL2Jvb3RzdHJhcC9zY3NzL190eXBlLnNjc3MiLCJyZXNvdXJjZXMvYXNzZXRzL3Nhc3MvdmVuZG9yL2Jvb3RzdHJhcC9zY3NzL19pbWFnZXMuc2NzcyIsInJlc291cmNlcy9hc3NldHMvc2Fzcy92ZW5kb3IvYm9vdHN0cmFwL3Njc3MvX2NvZGUuc2NzcyIsInJlc291cmNlcy9hc3NldHMvc2Fzcy92ZW5kb3IvYm9vdHN0cmFwL3Njc3MvX2dyaWQuc2NzcyIsInJlc291cmNlcy9hc3NldHMvc2Fzcy92ZW5kb3IvYm9vdHN0cmFwL3Njc3MvX3RhYmxlcy5zY3NzIiwicmVzb3VyY2VzL2Fzc2V0cy9zYXNzL3ZlbmRvci9ib290c3RyYXAvc2Nzcy9fZm9ybXMuc2NzcyIsInJlc291cmNlcy9hc3NldHMvc2Fzcy92ZW5kb3IvYm9vdHN0cmFwL3Njc3MvX2J1dHRvbnMuc2NzcyIsInJlc291cmNlcy9hc3NldHMvc2Fzcy92ZW5kb3IvYm9vdHN0cmFwL3Njc3MvX3RyYW5zaXRpb25zLnNjc3MiLCJyZXNvdXJjZXMvYXNzZXRzL3Nhc3MvdmVuZG9yL2Jvb3RzdHJhcC9zY3NzL19kcm9wZG93bi5zY3NzIiwicmVzb3VyY2VzL2Fzc2V0cy9zYXNzL3ZlbmRvci9ib290c3RyYXAvc2Nzcy9fYnV0dG9uLWdyb3VwLnNjc3MiLCJyZXNvdXJjZXMvYXNzZXRzL3Nhc3MvdmVuZG9yL2Jvb3RzdHJhcC9zY3NzL19pbnB1dC1ncm91cC5zY3NzIiwicmVzb3VyY2VzL2Fzc2V0cy9zYXNzL3ZlbmRvci9ib290c3RyYXAvc2Nzcy9fY3VzdG9tLWZvcm1zLnNjc3MiLCJyZXNvdXJjZXMvYXNzZXRzL3Nhc3MvdmVuZG9yL2Jvb3RzdHJhcC9zY3NzL19uYXYuc2NzcyIsInJlc291cmNlcy9hc3NldHMvc2Fzcy92ZW5kb3IvYm9vdHN0cmFwL3Njc3MvX25hdmJhci5zY3NzIiwicmVzb3VyY2VzL2Fzc2V0cy9zYXNzL3ZlbmRvci9ib290c3RyYXAvc2Nzcy9fY2FyZC5zY3NzIiwicmVzb3VyY2VzL2Fzc2V0cy9zYXNzL3ZlbmRvci9ib290c3RyYXAvc2Nzcy9fYnJlYWRjcnVtYi5zY3NzIiwicmVzb3VyY2VzL2Fzc2V0cy9zYXNzL3ZlbmRvci9ib290c3RyYXAvc2Nzcy9fcGFnaW5hdGlvbi5zY3NzIiwicmVzb3VyY2VzL2Fzc2V0cy9zYXNzL3ZlbmRvci9ib290c3RyYXAvc2Nzcy9fYmFkZ2Uuc2NzcyIsInJlc291cmNlcy9hc3NldHMvc2Fzcy92ZW5kb3IvYm9vdHN0cmFwL3Njc3MvX2p1bWJvdHJvbi5zY3NzIiwicmVzb3VyY2VzL2Fzc2V0cy9zYXNzL3ZlbmRvci9ib290c3RyYXAvc2Nzcy9fYWxlcnQuc2NzcyIsInJlc291cmNlcy9hc3NldHMvc2Fzcy92ZW5kb3IvYm9vdHN0cmFwL3Njc3MvX3Byb2dyZXNzLnNjc3MiLCJyZXNvdXJjZXMvYXNzZXRzL3Nhc3MvdmVuZG9yL2Jvb3RzdHJhcC9zY3NzL19tZWRpYS5zY3NzIiwicmVzb3VyY2VzL2Fzc2V0cy9zYXNzL3ZlbmRvci9ib290c3RyYXAvc2Nzcy9fbGlzdC1ncm91cC5zY3NzIiwicmVzb3VyY2VzL2Fzc2V0cy9zYXNzL3ZlbmRvci9ib290c3RyYXAvc2Nzcy9fcmVzcG9uc2l2ZS1lbWJlZC5zY3NzIiwicmVzb3VyY2VzL2Fzc2V0cy9zYXNzL3ZlbmRvci9ib290c3RyYXAvc2Nzcy9fY2xvc2Uuc2NzcyIsInJlc291cmNlcy9hc3NldHMvc2Fzcy92ZW5kb3IvYm9vdHN0cmFwL3Njc3MvX21vZGFsLnNjc3MiLCJyZXNvdXJjZXMvYXNzZXRzL3Nhc3MvdmVuZG9yL2Jvb3RzdHJhcC9zY3NzL190b29sdGlwLnNjc3MiLCJyZXNvdXJjZXMvYXNzZXRzL3Nhc3MvdmVuZG9yL2Jvb3RzdHJhcC9zY3NzL19wb3BvdmVyLnNjc3MiLCJyZXNvdXJjZXMvYXNzZXRzL3Nhc3MvdmVuZG9yL2Jvb3RzdHJhcC9zY3NzL19jYXJvdXNlbC5zY3NzIiwicmVzb3VyY2VzL2Fzc2V0cy9zYXNzL3ZlbmRvci9ib290c3RyYXAvc2Nzcy9fdXRpbGl0aWVzLnNjc3MiLCJyZXNvdXJjZXMvYXNzZXRzL3Nhc3MvdmVuZG9yL2Jvb3RzdHJhcC9zY3NzL3V0aWxpdGllcy9fYWxpZ24uc2NzcyIsInJlc291cmNlcy9hc3NldHMvc2Fzcy92ZW5kb3IvYm9vdHN0cmFwL3Njc3MvdXRpbGl0aWVzL19iYWNrZ3JvdW5kLnNjc3MiLCJyZXNvdXJjZXMvYXNzZXRzL3Nhc3MvdmVuZG9yL2Jvb3RzdHJhcC9zY3NzL3V0aWxpdGllcy9fYm9yZGVycy5zY3NzIiwicmVzb3VyY2VzL2Fzc2V0cy9zYXNzL3ZlbmRvci9ib290c3RyYXAvc2Nzcy91dGlsaXRpZXMvX2NsZWFyZml4LnNjc3MiLCJyZXNvdXJjZXMvYXNzZXRzL3Nhc3MvdmVuZG9yL2Jvb3RzdHJhcC9zY3NzL3V0aWxpdGllcy9fZGlzcGxheS5zY3NzIiwicmVzb3VyY2VzL2Fzc2V0cy9zYXNzL3ZlbmRvci9ib290c3RyYXAvc2Nzcy91dGlsaXRpZXMvX2ZsZXguc2NzcyIsInJlc291cmNlcy9hc3NldHMvc2Fzcy92ZW5kb3IvYm9vdHN0cmFwL3Njc3MvdXRpbGl0aWVzL19mbG9hdC5zY3NzIiwicmVzb3VyY2VzL2Fzc2V0cy9zYXNzL3ZlbmRvci9ib290c3RyYXAvc2Nzcy91dGlsaXRpZXMvX3Bvc2l0aW9uLnNjc3MiLCJyZXNvdXJjZXMvYXNzZXRzL3Nhc3MvdmVuZG9yL2Jvb3RzdHJhcC9zY3NzL3V0aWxpdGllcy9fc2NyZWVucmVhZGVycy5zY3NzIiwicmVzb3VyY2VzL2Fzc2V0cy9zYXNzL3ZlbmRvci9ib290c3RyYXAvc2Nzcy91dGlsaXRpZXMvX3NpemluZy5zY3NzIiwicmVzb3VyY2VzL2Fzc2V0cy9zYXNzL3ZlbmRvci9ib290c3RyYXAvc2Nzcy91dGlsaXRpZXMvX3NwYWNpbmcuc2NzcyIsInJlc291cmNlcy9hc3NldHMvc2Fzcy92ZW5kb3IvYm9vdHN0cmFwL3Njc3MvdXRpbGl0aWVzL190ZXh0LnNjc3MiLCJyZXNvdXJjZXMvYXNzZXRzL3Nhc3MvdmVuZG9yL2Jvb3RzdHJhcC9zY3NzL3V0aWxpdGllcy9fdmlzaWJpbGl0eS5zY3NzIiwicmVzb3VyY2VzL2Fzc2V0cy9zYXNzL2NvbW1vbi9fZ2xvYmFsLnNjc3MiLCJyZXNvdXJjZXMvYXNzZXRzL3Nhc3MvY29tcG9uZW50cy9fYnV0dG9ucy5zY3NzIiwicmVzb3VyY2VzL2Fzc2V0cy9zYXNzL2NvbXBvbmVudHMvX2NvbW1lbnRzLnNjc3MiLCJyZXNvdXJjZXMvYXNzZXRzL3Nhc3MvY29tcG9uZW50cy9fZm9ybXMuc2NzcyIsInJlc291cmNlcy9hc3NldHMvc2Fzcy9jb21wb25lbnRzL193cC1jbGFzc2VzLnNjc3MiLCJyZXNvdXJjZXMvYXNzZXRzL3Nhc3MvbGF5b3V0cy9faGVhZGVyLnNjc3MiLCJyZXNvdXJjZXMvYXNzZXRzL3Nhc3MvbGF5b3V0cy9fc2lkZWJhci5zY3NzIiwicmVzb3VyY2VzL2Fzc2V0cy9zYXNzL2xheW91dHMvX2Zvb3Rlci5zY3NzIiwicmVzb3VyY2VzL2Fzc2V0cy9zYXNzL2xheW91dHMvX3BhZ2VzLnNjc3MiLCJyZXNvdXJjZXMvYXNzZXRzL3Nhc3MvbGF5b3V0cy9fcG9zdHMuc2NzcyIsInJlc291cmNlcy9hc3NldHMvc2Fzcy9sYXlvdXRzL190aW55bWNlLnNjc3MiLCJyZXNvdXJjZXMvYXNzZXRzL3Nhc3MvbGF5b3V0cy9fZnJvbnRwYWdlLnNjc3MiLCJyZXNvdXJjZXMvYXNzZXRzL3Nhc3MvdmVuZG9yL19qYW1lc190eXBvZ3JhcGh5LnNjc3MiXSwic291cmNlc0NvbnRlbnQiOlsiQGltcG9ydCBcImNvbW1vbi92YXJpYWJsZXNcIjtcclxuXHJcbi8vIEltcG9ydCB2ZW5kb3Igc3R5bGVzXHJcbi8vIDxsaW5rIGhyZWY9XCJjc3MvZ3JpZDEyLmNzc1wiIHJlbD1cInN0eWxlc2hlZXRcIiBtZWRpYT1cInNjcmVlblwiPiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFx0IDwhLS0gR3JpZCBTeXN0ZW0gLS0+XHJcbi8vQGltcG9ydCBcInZlbmRvci9qYW1lc190eXBvZ3JhcGh5XCI7ICAgICAgICAgICAgICAgICAgICAgICAgLy8gSmFtZXMgRnJhbWV3b3JrIC0gVFlQT0dSQVBIWVxyXG5AaW1wb3J0IFwidmVuZG9yL21haW5cIjsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvLyBNYWluIENTUyBGaWxlXHJcbkBpbXBvcnQgXCJ2ZW5kb3IvY29sb3Jfc2NoZW1lX2xpZ2h0XCI7ICAgICAgICAgICAgICAgIC8vIENvbG9yIHNjaGVtZSAoZGFyay9saWdodClcclxuQGltcG9ydCBcInZlbmRvci9jb2xvcnMvY29sb3JfcGFsZXR0ZV9jeWFuXCI7ICAgLy8gQ29sb3IgcGFsZXR0ZVxyXG4vL0BpbXBvcnQgXCJ2ZW5kb3IvcmFwaWQtaWNvbnNcIjsgICAgICAgICAgICAgICAgICAgICAgIC8vIEphbWVzIEZyYW1ld29yayAtIElDT05TXHJcbi8vQGltcG9ydCBcInZlbmRvci9qc19zdHlsZXMvanF1ZXJ5Lm1heGltYWdlLm1pblwiOyAgICAgLy8gTWF4SW1hZ2UgYmFja2dyb3VuZCBpbWFnZSBzbGlkZXNob3dcclxuQGltcG9ydCBcInZlbmRvci9yZXNwb25zaXZpdHlcIjsgICAgICAgICAgICAgICAgICAgICAgLy8gUmVzcG9uc2l2ZSBGaXhlc1xyXG5AaW1wb3J0IFwidmVuZG9yL2FuaW1hdGVcIjsgICAgICAgICAgICAgICAgICAgICAgICAgICAvLyBBbmltYXRlIC0gYW5pbWF0aW9uc1xyXG4vL0BpbXBvcnQgXCJ2ZW5kb3Ivbml2by1saWdodGJveFwiOyAgICAgICAgICAgICAgICAgICAgIC8vIExpZ2h0Ym94IFN0eWxlc1xyXG4vL0BpbXBvcnQgXCJ2ZW5kb3Ivbml2b19saWdodGJveF90aGVtZXMvZGVmYXVsdC9kZWZhdWx0XCI7ICAgICAgLy8gTGlnaHRib3ggU3R5bGVzXHJcbkBpbXBvcnQgXCJ2ZW5kb3Ivb3dsLmNhcm91c2VsXCI7ICAgICAgICAgICAgICAgICAgICAgIC8vIE93bCAtIENhcm91c2VsXHJcbkBpbXBvcnQgXCJ2ZW5kb3Ivb3dsLnRoZW1lXCI7ICAgICAgICAgICAgICAgICAgICAgICAgIC8vIE93bCAtIENhcm91c2VsXHJcbkBpbXBvcnQgXCJ2ZW5kb3Ivb3dsLnRyYW5zaXRpb25zXCI7ICAgICAgICAgICAgICAgICAgIC8vIE93bCAtIENhcm91c2VsXHJcblxyXG4vLyBJbXBvcnQgbnBtIGRlcGVuZGVuY2llc1xyXG5AaW1wb3J0IFwidmVuZG9yL2Jvb3RzdHJhcC9zY3NzL2Jvb3RzdHJhcFwiO1xyXG5cclxuLy8gSW1wb3J0IGFwcCBzdHlsZXNcclxuQGltcG9ydCBcImNvbW1vbi9nbG9iYWxcIjtcclxuQGltcG9ydCBcImNvbXBvbmVudHMvYnV0dG9uc1wiO1xyXG5AaW1wb3J0IFwiY29tcG9uZW50cy9jb21tZW50c1wiO1xyXG5AaW1wb3J0IFwiY29tcG9uZW50cy9mb3Jtc1wiO1xyXG5AaW1wb3J0IFwiY29tcG9uZW50cy93cC1jbGFzc2VzXCI7XHJcbkBpbXBvcnQgXCJsYXlvdXRzL2hlYWRlclwiO1xyXG5AaW1wb3J0IFwibGF5b3V0cy9zaWRlYmFyXCI7XHJcbkBpbXBvcnQgXCJsYXlvdXRzL2Zvb3RlclwiO1xyXG5AaW1wb3J0IFwibGF5b3V0cy9wYWdlc1wiO1xyXG5AaW1wb3J0IFwibGF5b3V0cy9wb3N0c1wiO1xyXG5AaW1wb3J0IFwibGF5b3V0cy90aW55bWNlXCI7XHJcbkBpbXBvcnQgXCJsYXlvdXRzL2Zyb250cGFnZVwiO1xyXG5cclxuLy8gSW1wb3J0IHZlbmRvciBzdHlsZXNcclxuQGltcG9ydCBcInZlbmRvci9qYW1lc190eXBvZ3JhcGh5XCI7ICAgICAgICAgICAgICAgICAgICAgICAgLy8gSmFtZXMgRnJhbWV3b3JrIC0gVFlQT0dSQVBIWVxyXG4iLCIvLyBDb2xvcnNcclxuJGJyYW5kLXByaW1hcnk6ICAgICAgICAgIzI3YWU2MDtcclxuJGJyYW5kLWFjY2VudDogICAgICAgICAgIzNENUFGRTsvLyMyQzJDMkM7Ly8jM0Q1QUZFOyAvLyM2NTFGRkY7XHJcbiRicmFuZC1hY2NlbnQtZGFya2VyOiAgICMzMDQ4Q0I7XHJcblxyXG4kZmEtZm9udC1wYXRoOiAgICAgICAgICAnfmZvbnQtYXdlc29tZS9mb250cyc7XHJcbiIsIi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbltNYXN0ZXIgU3R5bGVzaGVldF1cclxuXHJcblByb2plY3Q6XHQgICAgU1BPVCAtIExhbmRpbmcgUGFnZSBUZW1wbGF0ZVxyXG5WZXJzaW9uOlx0ICAgIDEuMFxyXG5MYXN0IGNoYW5nZTpcdDI4LzA0LzIwMTVcclxuQXV0aG9yOiAgICAgICAgIE1hdCBQcnplZ2lldGthIFxyXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cclxuXHJcbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbltUYWJsZSBvZiBjb250ZW50c11cclxuXHJcbjEuICBIZWxwZXIgQ2xhc3Nlc1xyXG4yLiAgUHJlbG9hZGVyXHJcbjMuICBJY29uc1xyXG40LiAgTmF2aWdhdGlvblxyXG41LiAgSG9tZXBhZ2UgQ29udGVudFxyXG42LiAgSWNvbiBCb3hcclxuNy4gIEludHJvXHJcbjguICBTdWJzZWN0aW9uc1xyXG45LiAgUHJpY2luZyBUYWJsZVxyXG4xMC4gVGVhbVxyXG4xMS4gQ29udGFjdCBGb3JtXHJcbjEyLiBJbnB1dHNcclxuMTMuIEJ1dHRvbnNcclxuXHJcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xyXG5cclxuXHJcbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xyXG4vKiAxLiBIZWxwZXIgQ2xhc3NlcyAtLS0tLS0tLS0tLS0tLS0tLS0tKi9cclxuLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXHJcblxyXG4uYWxpZ24tY2VudGVyIHt0ZXh0LWFsaWduOmNlbnRlcn1cclxuLmFsaWdoLWxlZnQge3RleHQtYWxpZ246bGVmdH1cclxuLmFsaWduLXJpZ2h0IHt0ZXh0LWFsaWduOnJpZ2h0fVxyXG4uZmxvYXQtbGVmdCB7ZmxvYXQ6bGVmdH1cclxuLmltZ19yZXNwb25zaXZlIHttYXgtd2lkdGg6IDEwMCV9XHJcbi5pbWctY2lyY2xlIHtib3JkZXItcmFkaXVzOiA1MCV9XHJcbi5pbWctcm91bmRlZF9jb3JuZXIge2JvcmRlci1yYWRpdXM6IDAuMnJlbX1cclxuXHJcblxyXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cclxuLyogMi4gUHJlbG9hZGVyIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXHJcbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xyXG5cclxuLnByZWxvYWRlcl9oZWFkZXIge1xyXG4gICAgcG9zaXRpb246IGZpeGVkO1xyXG4gICAgdG9wOiAwO1xyXG4gICAgei1pbmRleDogMTAwO1xyXG4gICAgbWluLWhlaWdodDogNDgwcHg7XHJcbiAgICB3aWR0aDogMTAwJTtcclxuICAgIGhlaWdodDogMTAwJTtcclxufVxyXG5cclxuLnByZWxvYWRlcl9sb2FkZXIge1xyXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgbGVmdDogMDtcclxuICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgb3BhY2l0eTogMDtcclxuICAgIGN1cnNvcjogZGVmYXVsdDtcclxuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xyXG59XHJcblxyXG4ucHJlbG9hZGVyX2xvYWRlciB7XHJcbiAgICBib3R0b206MjAlO1x0XHJcbn1cclxuXHJcbi5wcmVsb2FkZXJfaGVhZGVyIC5wcmVsb2FkZXJfaW5uZXIge1xyXG4gICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICBtYXJnaW46IDAgYXV0bztcclxufVxyXG5cclxuLnByZWxvYWRlcl9oZWFkZXIgLnByZWxvYWRlcl9sb2FkZXIgc3ZnIHBhdGgge1xyXG4gICAgZmlsbDogbm9uZTtcclxuICAgIHN0cm9rZS13aWR0aDogNjtcclxufVxyXG5cclxuXHJcbi8qIEFuaW1hdGlvbnMgKi9cclxuLyogSW5pdGlhbCBhbmltYXRpb24gb2YgaGVhZGVyIGVsZW1lbnRzICovXHJcblxyXG4ubG9hZGluZyAucHJlbG9hZGVyX2xvYWRlciB7XHJcblx0b3BhY2l0eTogMTtcclxuXHQtd2Via2l0LWFuaW1hdGlvbjogYW5pbUluaXRpYWxIZWFkZXIgMXMgY3ViaWMtYmV6aWVyKDAuNywwLDAuMywxKSBib3RoO1xyXG5cdGFuaW1hdGlvbjogYW5pbUluaXRpYWxIZWFkZXIgMXMgY3ViaWMtYmV6aWVyKDAuNywwLDAuMywxKSBib3RoO1xyXG59XHJcblxyXG4ubG9hZGluZyAucHJlbG9hZGVyX2xvYWRlciB7XHJcblx0LXdlYmtpdC1hbmltYXRpb24tZGVsYXk6IDAuMnM7XHJcblx0YW5pbWF0aW9uLWRlbGF5OiAwLjJzO1xyXG59XHJcblxyXG5ALXdlYmtpdC1rZXlmcmFtZXMgYW5pbUluaXRpYWxIZWFkZXIge1xyXG5cdGZyb20geyBvcGFjaXR5OiAwOyAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCw4MDBweCwwKTsgfVxyXG59XHJcblxyXG5Aa2V5ZnJhbWVzIGFuaW1Jbml0aWFsSGVhZGVyIHtcclxuXHRmcm9tIHsgb3BhY2l0eTogMDsgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsODAwcHgsMCk7IHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCw4MDBweCwwKTsgfVxyXG59XHJcblxyXG5cclxuLyogSGVhZGVyIGVsZW1lbnRzIHdoZW4gbG9hZGluZyBmaW5pc2hlcyAqL1xyXG5cclxuLmxvYWRlZCAucHJlbG9hZGVyX2xvYWRlciB7XHJcblx0b3BhY2l0eTogMTtcclxufVxyXG5cclxuLmxvYWRlZCAucHJlbG9hZGVyX2xvYWRlciB7XHJcblx0LXdlYmtpdC1hbmltYXRpb246IGFuaW1Mb2FkZWRMb2FkZXIgMC41cyBjdWJpYy1iZXppZXIoMC43LDAsMC4zLDEpIGZvcndhcmRzO1xyXG5cdGFuaW1hdGlvbjogYW5pbUxvYWRlZExvYWRlciAwLjVzIGN1YmljLWJlemllcigwLjcsMCwwLjMsMSkgZm9yd2FyZHM7XHJcbn1cclxuXHJcbkAtd2Via2l0LWtleWZyYW1lcyBhbmltTG9hZGVkTG9hZGVyIHtcclxuXHR0byB7IG9wYWNpdHk6IDA7IC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLC0xMDAlLDApIHNjYWxlM2QoMC4zLDAuMywxKTsgfVxyXG59XHJcblxyXG5Aa2V5ZnJhbWVzIGFuaW1Mb2FkZWRMb2FkZXIge1xyXG5cdHRvIHsgb3BhY2l0eTogMDsgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsLTEwMCUsMCkgc2NhbGUzZCgwLjMsMC4zLDEpOyB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsLTEwMCUsMCkgc2NhbGUzZCgwLjMsMC4zLDEpOyB9XHJcbn1cclxuXHJcblxyXG4vKiBIZWFkZXIgYW5pbWF0aW9uIHdoZW4gbG9hZGluZyBmaW5pc2hlcyAqL1xyXG5cclxuLmxvYWRlZCAucHJlbG9hZGVyX2hlYWRlciB7XHJcblx0LXdlYmtpdC1hbmltYXRpb246IGFuaW1Mb2FkZWRIZWFkZXIgMXMgY3ViaWMtYmV6aWVyKDAuNywwLDAuMywxKSBmb3J3YXJkcztcclxuXHRhbmltYXRpb246IGFuaW1Mb2FkZWRIZWFkZXIgMXMgY3ViaWMtYmV6aWVyKDAuNywwLDAuMywxKSBmb3J3YXJkcztcclxufVxyXG5cclxuQC13ZWJraXQta2V5ZnJhbWVzIGFuaW1Mb2FkZWRIZWFkZXIge1xyXG5cdHRvIHsgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsLTEwMCUsMCk7IH1cclxufVxyXG5cclxuQGtleWZyYW1lcyBhbmltTG9hZGVkSGVhZGVyIHtcclxuXHR0byB7IC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLC0xMDAlLDApOyB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsLTEwMCUsMCk7IH1cclxufVxyXG5cclxuXHJcbi8qIENvbnRlbnQgYW5pbWF0aW9ucyAqL1xyXG5cclxuLmxvYWRlZCAuaG9tZV9hbmltMSxcclxuLmxvYWRlZCAuaG9tZV9hbmltMixcclxuLmxvYWRlZCAuaG9tZV9hbmltMyxcclxuLmxvYWRlZCAuaG9tZV9hbmltNCxcclxuLmxvYWRlZCAuaG9tZV9hbmltNSxcclxuLmxvYWRlZCAuaG9tZV9hbmltNixcclxuLmxvYWRlZCAuaG9tZV9hbmltNyxcclxuLmxvYWRlZCAuaG9tZV9hbmltOCxcclxuLmxvYWRlZCAuaG9tZV9hbmltOSxcclxuLmxvYWRlZCAuaG9tZV9hbmltMTBcclxue1xyXG5cdGFuaW1hdGlvbjogYW5pbUxvYWRlZENvbnRlbnQgMC44cyBjdWJpYy1iZXppZXIoMC43LDAsMC4zLDEpIGJvdGg7XHJcbiAgICAtd2Via2l0LWFuaW1hdGlvbjogYW5pbUxvYWRlZENvbnRlbnQgMC44cyBjdWJpYy1iZXppZXIoMC43LDAsMC4zLDEpIGJvdGg7XHJcbn1cclxuIFxyXG4ubG9hZGVkIC5ob21lX2FuaW0xIHtcclxuICAgIGFuaW1hdGlvbi1kZWxheTogMC4xcztcclxuICAgIC13ZWJraXQtYW5pbWF0aW9uLWRlbGF5OiAwLjFzOyAgXHJcbn1cclxuXHJcbi5sb2FkZWQgLmhvbWVfYW5pbTIge1xyXG4gICAgYW5pbWF0aW9uLWRlbGF5OiAwLjJzO1xyXG4gICAgLXdlYmtpdC1hbmltYXRpb24tZGVsYXk6IDAuMnM7ICAgXHJcbn1cclxuXHJcbi5sb2FkZWQgLmhvbWVfYW5pbTMge1xyXG4gICAgYW5pbWF0aW9uLWRlbGF5OiAwLjNzO1xyXG4gICAgLXdlYmtpdC1hbmltYXRpb24tZGVsYXk6IDAuM3M7ICAgXHJcbn1cclxuXHJcbi5sb2FkZWQgLmhvbWVfYW5pbTR7XHJcbiAgICBhbmltYXRpb24tZGVsYXk6IDAuNHM7XHJcbiAgICAtd2Via2l0LWFuaW1hdGlvbi1kZWxheTogMC40czsgICBcclxufVxyXG5cclxuLmxvYWRlZCAuaG9tZV9hbmltNSB7XHJcbiAgICBhbmltYXRpb24tZGVsYXk6IDAuNXM7XHJcbiAgICAtd2Via2l0LWFuaW1hdGlvbi1kZWxheTogMC41czsgICAgXHJcbn1cclxuXHJcbi5sb2FkZWQgLmhvbWVfYW5pbTYge1xyXG4gICAgYW5pbWF0aW9uLWRlbGF5OiAwLjZzO1xyXG4gICAgLXdlYmtpdC1hbmltYXRpb24tZGVsYXk6IDAuNnM7ICAgIFxyXG59XHJcblxyXG4ubG9hZGVkIC5ob21lX2FuaW03IHtcclxuICAgIGFuaW1hdGlvbi1kZWxheTogMC43cztcclxuICAgIC13ZWJraXQtYW5pbWF0aW9uLWRlbGF5OiAwLjdzOyAgICBcclxufVxyXG5cclxuLmxvYWRlZCAuaG9tZV9hbmltOCB7XHJcbiAgICBhbmltYXRpb24tZGVsYXk6IDAuOHM7XHJcbiAgICAtd2Via2l0LWFuaW1hdGlvbi1kZWxheTogMC44czsgICAgXHJcbn1cclxuXHJcbi5sb2FkZWQgLmhvbWVfYW5pbTkge1xyXG4gICAgYW5pbWF0aW9uLWRlbGF5OiAwLjlzO1xyXG4gICAgLXdlYmtpdC1hbmltYXRpb24tZGVsYXk6IDAuOXM7ICAgIFxyXG59XHJcblxyXG4ubG9hZGVkIC5ob21lX2FuaW0xMCB7XHJcbiAgICBhbmltYXRpb24tZGVsYXk6IDFzO1xyXG4gICAgLXdlYmtpdC1hbmltYXRpb24tZGVsYXk6IDFzOyAgICBcclxufVxyXG5cclxuQGtleWZyYW1lcyBhbmltTG9hZGVkQ29udGVudCB7XHJcbiAgICBmcm9tIHsgXHJcbiAgICAgICAgb3BhY2l0eTogMDsgXHJcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLDUwcHgsMCk7ICBcclxuICAgIH1cclxufVxyXG5cclxuQC13ZWJraXQta2V5ZnJhbWVzIGFuaW1Mb2FkZWRDb250ZW50IHtcclxuICAgIGZyb20geyBcclxuICAgICAgICBvcGFjaXR5OiAwOyBcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCw1MHB4LDApOyAgXHJcbiAgICB9XHJcbn1cclxuXHJcblxyXG5cclxuLyogTW9ja3VwIGFuaW1hdGlvbnMgKi9cclxuXHJcbi5sb2FkZWQgLm1vY2t1cC1hbmltYXRpb24xLFxyXG4ubG9hZGVkIC5tb2NrdXAtYW5pbWF0aW9uMlxyXG57XHJcblx0YW5pbWF0aW9uOiBNb2NrdXBBbmltTG9hZGVkQ29udGVudCAwLjdzIGN1YmljLWJlemllcigwLjUsLjAxLC41MSwxKSBib3RoO1xyXG4gICAgLXdlYmtpdC1hbmltYXRpb246IE1vY2t1cEFuaW1Mb2FkZWRDb250ZW50IDAuN3MgY3ViaWMtYmV6aWVyKDAuNSwuMDEsLjUxLDEpIGJvdGg7XHJcbn1cclxuXHJcbi5sb2FkZWQgLm1vY2t1cC1hbmltYXRpb24yIHtcclxuICAgIGFuaW1hdGlvbi1kZWxheTogMXM7XHJcbiAgICAtd2Via2l0LWFuaW1hdGlvbi1kZWxheTogMXM7ICAgXHJcbn1cclxuXHJcbi5sb2FkZWQgLm1vY2t1cC1hbmltYXRpb24xIHtcclxuICAgIGFuaW1hdGlvbi1kZWxheTogMS4zNXM7XHJcbiAgICAtd2Via2l0LWFuaW1hdGlvbi1kZWxheTogMS4zNXM7ICAgXHJcbn1cclxuIFxyXG5Aa2V5ZnJhbWVzIE1vY2t1cEFuaW1Mb2FkZWRDb250ZW50IHtcclxuICAgIGZyb20geyBcclxuICAgICAgICBvcGFjaXR5OiAwOyBcclxuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsNTBweCwwKTsgIFxyXG4gICAgfVxyXG59XHJcblxyXG5ALXdlYmtpdC1rZXlmcmFtZXMgTW9ja3VwQW5pbUxvYWRlZENvbnRlbnQge1xyXG4gICAgZnJvbSB7IFxyXG4gICAgICAgIG9wYWNpdHk6IDA7IFxyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLDUwcHgsMCk7ICBcclxuICAgIH1cclxufVxyXG5cclxuLmxheW91dC1zd2l0Y2ggLmlwLWhlYWRlciB7XHJcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbn1cclxuXHJcbi5oZWFkZXItbm9uZSB7XHJcblx0ZGlzcGxheTpub25lO1xyXG59XHJcblxyXG5cclxuLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXHJcbi8qIDMuIEljb25zIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xyXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cclxuXHJcbi5pY29uX2JpZyB7XHJcblx0Zm9udC1zaXplOiAxLjcycmVtO1xyXG5cdG1hcmdpbjoxcmVtO1x0XHJcbn1cclxuXHJcbi5pY29uX25vcm1hbCB7XHJcblx0d2lkdGg6IDJyZW07XHJcbiAgICBmb250LXNpemU6IDEuNzJyZW07XHJcbn1cclxuXHJcbi5pY29uX3NtYWxsIHtcclxuXHRtYXJnaW46MXJlbTtcclxuXHRmb250LXNpemU6MS40cmVtO1xyXG5cdGxpbmUtaGVpZ2h0OjEuMnJlbTtcclxuXHRvcGFjaXR5OjAuNTQ7XHJcblx0bWFyZ2luLXJpZ2h0OjJyZW07XHJcbiAgICB0ZXh0LXNoYWRvdzogMXB4IDFweCAxcHggcmdiYSgwLDAsMCwwLjAwNCk7XHJcbn1cclxuXHJcbi5pY29uX2xpc3Qge1xyXG5cdG1hcmdpbi1ib3R0b206MS43MnJlbTtcclxufVxyXG5cclxuLmljb25fbGlzdCBsaXtcclxuXHR2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xyXG4gICAgZGlzcGxheTogdGFibGU7XHJcbn1cclxuXHJcbi5pY29uX2xpc3QgbGkgZGl2LFxyXG4uaWNvbl9saXN0IGxpIGg2IHtcclxuXHR2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xyXG4gICAgZGlzcGxheTogdGFibGUtY2VsbDsgXHJcbn1cclxuXHJcblxyXG4vKi0tIFNvY2lhbCBJY29ucyAtLSovXHJcblxyXG4uc29jaWFsX2ljb257XHJcbiAgICBmb250LXNpemU6MXJlbTtcclxuICAgIGxpbmUtaGVpZ2h0OjFyZW07XHJcbiAgICBvcGFjaXR5OjAuNTtcclxuICAgIC13ZWJraXQtdHJhbnNpdGlvbjogYWxsIDAuM3MgZWFzZS1pbi1vdXQ7XHJcbiAgICAtbW96LXRyYW5zaXRpb246IGFsbCAwLjNzIGVhc2UtaW4tb3V0O1xyXG4gICAgLW8tdHJhbnNpdGlvbjogYWxsIDAuM3MgZWFzZS1pbi1vdXQ7XHJcbiAgICB0cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlLWluLW91dDtcclxufVxyXG5cclxuLnNvY2lhbF9pY29uOmhvdmVyIHtcclxuICAgIGN1cnNvcjpwb2ludGVyO1xyXG4gICAgb3BhY2l0eToxO1xyXG59XHJcblxyXG4uc29jaWFsX2ljb25zIHVsLCAuc29jaWFsX2ljb25zIHVsIGxpIHtcclxuXHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcblx0bGlzdC1zdHlsZTogbm9uZTtcclxuXHRwYWRkaW5nOiAwO1xyXG5cdGhlaWdodDoycmVtO1xyXG59XHJcblxyXG4uc29jaWFsX2ljb25zIHVsIGxpIHtcclxuXHRtYXJnaW4tcmlnaHQ6IDAuN3JlbTtcclxuXHRtYXJnaW4tbGVmdDogMC43cmVtO1xyXG59XHJcblxyXG4uc29jaWFsX2ljb25zIHVsIGxpOmZpcnN0LWNoaWxkIHtcclxuXHRtYXJnaW4tbGVmdDowO1xyXG59XHJcblxyXG4uc29jaWFsX2ljb25zIHVsIGxpOmxhc3QtY2hpbGQge1xyXG5cdG1hcmdpbi1yaWdodDowO1xyXG59XHJcblxyXG4uc29jaWFsX2ljb25zIHVsIGxpIHtcclxuICAgIGZsb2F0OmxlZnQ7XHJcbn1cclxuXHJcbi5zb2NpYWxfaWNvbnNfY29udGFpbmVyIHtcclxuXHRwb3NpdGlvbjogcmVsYXRpdmU7XHJcblx0d2lkdGg6MTAwJTtcclxuICAgIHotaW5kZXg6IDEwO1xyXG59XHJcblxyXG5cclxuLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXHJcbi8qIDQuIE5hdmlnYXRpb24gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xyXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cclxuXHJcbi5uYXZpZ2F0aW9uX2Rlc2t0b3AgdWwge1xyXG4gICAgZmxvYXQ6cmlnaHQ7XHJcbiAgICBwYWRkaW5nOjA7XHJcbiAgICBtYXJnaW46MDsgICBcclxufVxyXG5cclxuLm5hdmlnYXRpb25fZGVza3RvcCB1bCBsaSB7XHJcbiAgICBmbG9hdDpsZWZ0O1xyXG4gICAgcGFkZGluZzowO1xyXG4gICAgaGVpZ2h0OmF1dG87XHJcbiAgICBtYXJnaW4tbGVmdDoxcmVtO1xyXG4gICAgbWFyZ2luLXJpZ2h0OjFyZW07XHJcbn1cclxuXHJcbi5uYXZpZ2F0aW9uX2Rlc2t0b3AgdWwgbGkgYSB7XHJcblx0Zm9udC1zaXplOiAwLjg1N3JlbTtcclxuXHRsaW5lLWhlaWdodDogMC44NTdyZW07XHJcblx0b3BhY2l0eTogMC41O1xyXG5cdC13ZWJraXQtdHJhbnNpdGlvbjogYWxsIDAuM3MgZWFzZTtcclxuXHQtbW96LXRyYW5zaXRpb246IGFsbCAwLjNzIGVhc2U7XHJcblx0dHJhbnNpdGlvbjogYWxsIDAuM3MgZWFzZTtcclxufVxyXG5cclxuLm5hdmlnYXRpb25fZGVza3RvcCBhOmhvdmVyIHtcclxuXHRvcGFjaXR5OjE7XHJcbn1cclxuXHJcbi5uYXZpZ2F0aW9uX2Rlc2t0b3AgbGkgYTpmb2N1cywgLm5hdmlnYXRpb25fZGVza3RvcCBhOmhvdmVyIHtcclxuXHRvdXRsaW5lOm5vbmU7XHJcblx0dGV4dC1kZWNvcmF0aW9uOiBub25lO1xyXG59XHJcbi5uYXZpZ2F0aW9uX2Rlc2t0b3AgdWwgbGk6bnRoLWxhc3QtY2hpbGQoMilcclxuLm5hdmlnYXRpb25fZGVza3RvcCB1bCBsaTpsYXN0LWNoaWxkIHtcclxuICAgIG1hcmdpbi1yaWdodDowcmVtO1xyXG59XHJcblxyXG4udG9wX2JhciB7XHJcblx0cG9zaXRpb246cmVsYXRpdmU7XHJcbiAgICB6LWluZGV4OiAxMDtcclxufVxyXG5cclxuXHJcbi8qLS0gbWVudV9iYXIgLS0qL1xyXG5cclxuLm1lbnVfYmFyIHtcclxuXHRoZWlnaHQ6NS4xNHJlbTtcclxuXHRwYWRkaW5nLXRvcDoxLjdyZW07XHJcblx0LXdlYmtpdC1ib3gtc2hhZG93OiAwcHggMHB4IDNweCAwcHggcmdiYSg1MCwgNTAsIDUwLCAxKTtcclxuXHQtbW96LWJveC1zaGFkb3c6ICAgIDBweCAwcHggM3B4IDBweCByZ2JhKDUwLCA1MCwgNTAsIDEpO1xyXG5cdGJveC1zaGFkb3c6ICAgICAgICAgMHB4IDBweCAzcHggMHB4IHJnYmEoNTAsIDUwLCA1MCwgMSk7XHJcblx0cG9zaXRpb246IGZpeGVkO1xyXG5cdHRvcDowO1xyXG5cdGxlZnQ6IDA7XHJcblx0d2lkdGg6IDEwMCU7XHJcblx0ei1pbmRleDoxMDAwO1xyXG5cdC13ZWJraXQtdHJhbnNpdGlvbjogYWxsIDAuNXM7XHJcblx0LW1vei10cmFuc2l0aW9uOiBhbGwgMC41cztcclxuXHR0cmFuc2l0aW9uOiBhbGwgMC41cztcclxuXHQtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMTA1JSk7XHJcblx0LW1vei10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTEwNSUpO1xyXG5cdHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMTA1JSk7XHJcbn1cclxuXHJcbi5tZW51X2Jhci1oaWRlIHtcclxuXHRoZWlnaHQ6IDUuMTRyZW07XHJcblx0LXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTEwNSUpO1xyXG5cdC1tb3otdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xMDUlKTtcclxuXHR0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTEwNSUpO1xyXG59XHJcblxyXG4ubWVudV9iYXItc2hvdyB7XHJcblx0aGVpZ2h0OiA1LjE0cmVtO1xyXG5cdC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDAlKTtcclxuXHQtbW96LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgwJSk7XHJcblx0dHJhbnNmb3JtOiB0cmFuc2xhdGVZKDAlKTtcclxufVxyXG5cclxuLm1lbnVfYmFyX25hdmlnYXRpb24gdWwge1xyXG4gICAgZmxvYXQ6cmlnaHQ7XHJcbiAgICBwYWRkaW5nOjA7XHJcbiAgICBtYXJnaW46MDtcclxuICAgIGxpbmUtaGVpZ2h0OiAwOyAgIFxyXG59XHJcblxyXG4ubWVudV9iYXJfbmF2aWdhdGlvbiB1bCBsaSB7XHJcbiAgICBmbG9hdDpsZWZ0O1xyXG4gICAgcGFkZGluZzowO1xyXG4gICAgaGVpZ2h0OmF1dG87XHJcbiAgICBtYXJnaW4tbGVmdDoxcmVtO1xyXG4gICAgbWFyZ2luLXJpZ2h0OjFyZW07XHJcbn1cclxuXHJcbi5tZW51X2Jhcl9uYXZpZ2F0aW9uIHVsIGxpOm50aC1sYXN0LWNoaWxkKDIpLFxyXG4ubWVudV9iYXJfbmF2aWdhdGlvbiB1bCBsaTpsYXN0LWNoaWxkIHtcclxuICAgIG1hcmdpbi1yaWdodDowcmVtO1xyXG59XHJcblxyXG4ubWVudV9iYXJfbmF2aWdhdGlvbiB1bCBsaSBhIHtcclxuXHR0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xyXG5cdGxldHRlci1zcGFjaW5nOiAwLjFyZW07XHJcblx0Zm9udC13ZWlnaHQ6OTAwO1xyXG5cdGZvbnQtc2l6ZTogMC43NXJlbTtcclxuXHRsaW5lLWhlaWdodDogMS43MnJlbTtcclxuXHRvcGFjaXR5OiAwLjM7XHJcblx0LXdlYmtpdC10cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlO1xyXG5cdC1tb3otdHJhbnNpdGlvbjogYWxsIDAuM3MgZWFzZTtcclxuXHR0cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlO1xyXG59XHJcblxyXG4ubWVudV9iYXJfbmF2aWdhdGlvbiB1bCBsaSBhOmhvdmVyIHtcclxuXHRvcGFjaXR5OjFcclxufVxyXG5cclxuLm1lbnVfYmFyX25hdmlnYXRpb24gdWwgbGkuYWN0aXZlIGF7XHJcblx0b3BhY2l0eToxO1xyXG59XHJcblxyXG4ubG9nbyB7XHJcblx0ZmxvYXQ6bGVmdDsgXHJcblx0bGluZS1oZWlnaHQ6IDA7IFxyXG5cdG1hcmdpbi10b3A6MC4xcmVtO1xyXG59XHJcblxyXG4vKi0tIE1vYmlsZSBNZW51IC0tKi9cclxuXHJcbi5jYnAtc3BtZW51IHtcclxuXHRwb3NpdGlvbjogZml4ZWQ7XHJcblx0cGFkZGluZy10b3A6MnJlbTtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiAjNDI0MjQyO1xyXG5cdC13ZWJraXQtYm94LXNoYWRvdzogLTFweCAwcHggN3B4IDBweCByZ2JhKDUwLCA1MCwgNTAsIDEpO1xyXG5cdC1tb3otYm94LXNoYWRvdzogICAgLTFweCAwcHggN3B4IDBweCByZ2JhKDUwLCA1MCwgNTAsIDEpO1xyXG5cdGJveC1zaGFkb3c6ICAgICAgICAgLTFweCAwcHggN3B4IDBweCByZ2JhKDUwLCA1MCwgNTAsIDEpO1xyXG59XHJcblxyXG4uY2JwLXNwbWVudSBhIHtcclxuXHRkaXNwbGF5OiBibG9jaztcclxuXHRmb250LXNpemU6IDFyZW07XHJcblx0bGluZS1oZWlnaHQ6IDEuMnJlbTtcclxuICAgIHRleHQtZGVjb3JhdGlvbjpub25lO1xyXG4gICAgdGV4dC1hbGlnbjpsZWZ0OyBcclxuICAgIG9wYWNpdHk6MC41O1xyXG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcclxuXHRsZXR0ZXItc3BhY2luZzogMC4xcmVtO1xyXG5cdGZvbnQtd2VpZ2h0OjkwMDtcdFxyXG4gICAgLXdlYmtpdC10cmFuc2l0aW9uOiBhbGwgMC4xNXMgZWFzZS1pbi1vdXQ7XHJcbiAgICAtbW96LXRyYW5zaXRpb246IGFsbCAwLjE1cyBlYXNlLWluLW91dDtcclxuICAgIC1vLXRyYW5zaXRpb246IGFsbCAwLjE1cyBlYXNlLWluLW91dDtcclxuICAgIHRyYW5zaXRpb246IGFsbCAwLjE1cyBlYXNlLWluLW91dDtcclxufVxyXG5cclxuLmNicC1zcG1lbnUgYTpob3ZlciB7XHJcbiAgICBvcGFjaXR5OjE7XHRcclxufVxyXG5cclxuLmNicC1zcG1lbnUtdmVydGljYWwge1xyXG5cdHdpZHRoOiAyMDBweDtcclxuXHRoZWlnaHQ6IDEwMCU7XHJcblx0dG9wOiAwO1xyXG5cdHotaW5kZXg6IDEwMDE7XHJcbn1cclxuXHJcbi5jYnAtc3BtZW51LXZlcnRpY2FsIGEge1xyXG4gICAgcGFkZGluZzowLjRyZW07XHJcbiAgICBwYWRkaW5nLWxlZnQ6MnJlbTtcclxufVxyXG5cclxuLmNicC1zcG1lbnUtcmlnaHQge1xyXG5cdHJpZ2h0OiAtMjEwcHg7XHJcbn1cclxuXHJcbi5jYnAtc3BtZW51LXJpZ2h0LmNicC1zcG1lbnUtb3BlbiB7XHJcblx0cmlnaHQ6IDBweDtcclxufVxyXG5cclxuLmNicC1zcG1lbnUsXHJcbi5jYnAtc3BtZW51LXB1c2gge1xyXG5cdC13ZWJraXQtdHJhbnNpdGlvbjogYWxsIDAuM3MgZWFzZTtcclxuXHQtbW96LXRyYW5zaXRpb246IGFsbCAwLjNzIGVhc2U7XHJcblx0dHJhbnNpdGlvbjogYWxsIDAuM3MgZWFzZTtcclxufVxyXG5cclxuXHJcbi8qLS0gTW9iaWxlIE1lbnUgb3BlbiAmIGNsb3NlIGJ1dHRvbnMgLS0qL1xyXG5cclxuLm1vYmlsZV9tZW51X29wZW5fYnV0dG9uIHtcclxuXHRtYXJnaW4tdG9wOjAuNXJlbTtcclxufVxyXG5cclxuLm1vYmlsZV9uYXZfY2xvc2VfYnV0dG9uIHtcclxuXHRwb3NpdGlvbjphYnNvbHV0ZTtcclxuXHR6LWluZGV4OiAxMDA7XHJcblx0cmlnaHQ6MnJlbTtcclxuXHR0b3A6MnJlbTtcclxuXHRib3JkZXI6MDtcclxufVxyXG5cclxuLm1vYmlsZV9uYXZfY2xvc2VfYnV0dG9uIGEgIHtcclxuXHRib3JkZXI6MDtcclxuXHRjb2xvcjp3aGl0ZTtcclxuXHRmb250LXNpemU6MnJlbSAhaW1wb3J0YW50O1xyXG4gICAgbGluZS1oZWlnaHQ6MnJlbTtcclxuICAgIG9wYWNpdHk6MC41ICFpbXBvcnRhbnQ7XHJcbiAgICAtd2Via2l0LXRyYW5zaXRpb246IGFsbCAwLjNzIGVhc2U7XHJcblx0LW1vei10cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlO1xyXG5cdHRyYW5zaXRpb246IGFsbCAwLjNzIGVhc2U7XHJcbn1cclxuXHJcbi5tb2JpbGVfbmF2X2Nsb3NlX2J1dHRvbiBhOmhvdmVyICB7XHJcblx0b3BhY2l0eToxICFpbXBvcnRhbnQ7XHJcblx0bWFyZ2luLWxlZnQ6MHJlbSAhaW1wb3J0YW50O1xyXG59XHJcblxyXG4ubW9iaWxlX25hdl9vcGVuX2J1dHRvbiBhIHtcclxuXHRib3JkZXI6MDtcclxuXHRjb2xvcjp3aGl0ZTtcclxuXHRmb250LXNpemU6MnJlbSAhaW1wb3J0YW50O1xyXG4gICAgbGluZS1oZWlnaHQ6MnJlbTtcclxufVxyXG5cclxuLm1vYmlsZV9uYXZfb3Blbl9idXR0b24ge1xyXG5cdG9wYWNpdHk6MC41O1xyXG4gICAgLXdlYmtpdC10cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlO1xyXG5cdC1tb3otdHJhbnNpdGlvbjogYWxsIDAuM3MgZWFzZTtcclxuXHR0cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlO1xyXG59XHJcblxyXG4ubW9iaWxlX25hdl9vcGVuX2J1dHRvbjpob3ZlciB7XHJcblx0b3BhY2l0eToxXHJcbn1cclxuXHJcbiNtb2JpbGVfbWVudV9jb250ZW50IHtcclxuICAgIGNsZWFyOmJvdGg7XHJcbiAgICBib3gtc2hhZG93Om5vbmU7XHJcbiAgICAtd2Via2l0LWJveC1zaGFkb3c6IG5vbmU7XHJcbn1cclxuXHJcblxyXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cclxuLyogNS4gSG9tZXBhZ2UgQ29udGVudCAtLS0tLS0tLS0tLS0tLS0tLSovXHJcbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xyXG5cclxuaHRtbCB7XHJcblx0b3ZlcmZsb3cteDpoaWRkZW47XHJcbn1cclxuXHJcbi5sb2dvX2hvbWUge1xyXG5cdG1hcmdpbi1ib3R0b206IDJyZW07XHJcbn1cclxuXHJcbi5oZXJvX2Z1bGxzY3JlZW4ge1xyXG5cdHBhZGRpbmctdG9wOjMuNDI4cmVtO1xyXG5cdHBhZGRpbmctYm90dG9tOiA3cmVtO1xyXG59XHJcblxyXG5cclxuLyotLSBNYWluIENvbnRlbnQgLS0qL1xyXG5cclxuI21haW5fY29udGVudCB7XHJcblx0b3ZlcmZsb3c6aGlkZGVuO1xyXG5cdFxyXG59XHJcblxyXG4jbWFpbl9jb250ZW50IGgyLCBcclxuI21haW5fY29udGVudCBoNixcclxuLmN0YV9idXR0b25fYXJlYSB7XHJcblx0cG9zaXRpb246cmVsYXRpdmU7XHJcblx0ei1pbmRleDoyXHJcbn0gXHJcblxyXG4uY29udGVudF9jb250YWluZXIge1xyXG5cdHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XHJcblx0ei1pbmRleDogMTA7XHJcbn1cclxuLmhvbWVfbW9ja3VwIHtcclxuXHRwb3NpdGlvbjpyZWxhdGl2ZTtcclxuXHRkaXNwbGF5OmJsb2NrO1xyXG5cdHRleHQtYWxpZ246Y2VudGVyO1xyXG5cdGZsb2F0OnJpZ2h0O1xyXG5cdGRpc3BsYXk6bm9uZTtcclxufVxyXG5cclxuLmhvbWVfbW9ja3VwX2ltYWdlIHtcclxuXHRwb3NpdGlvbjphYnNvbHV0ZTtcclxuXHRyaWdodDowJTtcclxuXHR0b3A6LTIzcmVtO1xyXG5cdHdpZHRoOjEwMCVcclxufVxyXG5cclxuXHJcbi8qLS0gQ1RBIEFyZWEgLS0qL1xyXG5cclxuLmN0YV9idXR0b25fYXJlYSB7XHJcblx0bWFyZ2luLXRvcDozLjQ0cmVtO1xyXG5cdG1hcmdpbi1ib3R0b206M3JlbTtcclxufVxyXG5cclxuLmN0YV9idXR0b25fYXJlYSBhe1xyXG5cdG9wYWNpdHk6MC41O1xyXG5cdC13ZWJraXQtdHJhbnNpdGlvbjogYWxsIDAuM3MgZWFzZS1pbi1vdXQ7XHJcbiAgICAtbW96LXRyYW5zaXRpb246IGFsbCAwLjNzIGVhc2UtaW4tb3V0O1xyXG4gICAgLW8tdHJhbnNpdGlvbjogYWxsIDAuM3MgZWFzZS1pbi1vdXQ7XHJcbiAgICB0cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlLWluLW91dDtcclxufVxyXG5cclxuLmN0YV9idXR0b25fYXJlYSBhOmhvdmVyIHtcclxuXHRvcGFjaXR5OjFcclxufVxyXG5cclxuXHJcbi8qLS0gQXZhaWxhYmxlIEFyZWEgLS0qL1xyXG5cclxuLmF2YWlsYWJsZV9hcmVhIHtcclxuXHRwb3NpdGlvbjpyZWxhdGl2ZTtcclxuXHR6LWluZGV4OiAxMDtcclxufVxyXG5cclxuLmF2YWlsYWJsZV9hcmVhIGg2LFxyXG4uYXZhaWxhYmxlX2FyZWEgdWwge1xyXG5cdGRpc3BsYXk6aW5saW5lLWJsb2NrO1xyXG5cdG9wYWNpdHk6MC41O1xyXG59XHJcblxyXG4uYXZhaWxhYmxlX2FyZWEgdWwgbGkgaW1nIHtcclxuXHR3aWR0aDoxcmVtO1xyXG5cdG1hcmdpbjowO1xyXG5cdG1hcmdpbi1sZWZ0OiAwLjNyZW07XHJcblx0bWFyZ2luLXJpZ2h0OjAuM3JlbTtcdFxyXG59XHJcblxyXG4uYXZhaWxhYmxlX2FyZWEgdWwgbGkge1xyXG5cdGZsb2F0OmxlZnQ7XHJcblx0bGluZS1oZWlnaHQ6MDtcclxufVxyXG5cclxuLmF2YWlsYWJsZV9hcmVhIHVsIHtcclxuXHRtYXJnaW46MCAwLjJyZW07XHJcbn1cclxuXHJcblxyXG4vKi0tIEJhY2tncm91bmRzIC0tKi9cclxuXHJcbiNtYXhpbWFnZV9zbGlkZXIge1xyXG5cdHotaW5kZXg6MDtcclxuXHRvcGFjaXR5OjAuNDtcclxuXHRkaXNwbGF5Om5vbmU7XHJcbn1cclxuXHJcbiNtYXhpbWFnZV92aWRlbyB7XHJcblx0ei1pbmRleDowO1xyXG5cdG9wYWNpdHk6MC42O1xyXG5cdGRpc3BsYXk6bm9uZTtcclxufVxyXG5cclxuLm1vYmlsZV9ub3ZpZGVvIHtcclxuXHR0b3A6IDA7XHJcblx0bGVmdDogMDtcclxuXHRwb3NpdGlvbjogYWJzb2x1dGU7XHJcblx0d2lkdGg6MTAwJTtcclxuXHRoZWlnaHQ6MTAwJTtcclxufVxyXG5cclxuI21heGltYWdlX3ZpZGVve1xyXG5cdGJhY2tncm91bmQ6IHVybCgnL2ltZy9sYW5kaW5nL3ZpZGVvLmpwZycpIG5vLXJlcGVhdCAwIDA7XHJcblx0LXdlYmtpdC1iYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xyXG5cdC1tb3otYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcclxuXHQtby1iYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xyXG5cdGJhY2tncm91bmQtc2l6ZTogY292ZXI7XHJcbn1cclxuXHJcbiNtYXhpbWFnZV9zaW5nbGUge1xyXG5cdHotaW5kZXg6MDtcclxuXHRkaXNwbGF5Om5vbmU7XHJcbn1cclxuXHJcblxyXG52aWRlbywgb2JqZWN0IHtcclxuXHR0b3A6MDtsZWZ0OjA7XHJcblx0cG9zaXRpb246YWJzb2x1dGU7XHJcblx0ei1pbmRleDoxO1xyXG5cdG9wYWNpdHk6MC4zO1xyXG59XHJcblxyXG5cclxuLyotLSBIb21lIENvbnRlbnQgQmFja2dyb3VuZCBWYXJpYW50cyAtLSovXHJcbi5oZXJvX2Z1bGxzY3JlZW4uYmFja2dyb3VuZF9zbGlkZXIgI21heGltYWdlX3NsaWRlciB7IGRpc3BsYXk6YmxvY2sgfVxyXG4uaGVyb19mdWxsc2NyZWVuLmJhY2tncm91bmRfdmlkZW8gI21heGltYWdlX3ZpZGVvIHsgZGlzcGxheTpibG9jayB9XHJcbi5oZXJvX2Z1bGxzY3JlZW4uYmFja2dyb3VuZF9zaW5nbGUgI21heGltYWdlX3NpbmdsZSB7IGRpc3BsYXk6YmxvY2sgfVxyXG5cclxuLmhlcm9fZnVsbHNjcmVlbi5iYWNrZ3JvdW5kX3NsaWRlciAubG9nb19ob21lLFxyXG4uaGVyb19mdWxsc2NyZWVuLmJhY2tncm91bmRfdmlkZW8gLmxvZ29faG9tZSxcclxuLmhlcm9fZnVsbHNjcmVlbi5iYWNrZ3JvdW5kX3NpbmdsZSAubG9nb19ob21le1xyXG5cdG1hcmdpbi1ib3R0b206MTJyZW07IFxyXG59XHJcblxyXG4uaGVyb19mdWxsc2NyZWVuLmJhY2tncm91bmRfc2xpZGVyLFxyXG4uaGVyb19mdWxsc2NyZWVuLmJhY2tncm91bmRfdmlkZW8sXHJcbi5oZXJvX2Z1bGxzY3JlZW4uYmFja2dyb3VuZF9zaW5nbGUge1xyXG5cdHBhZGRpbmctYm90dG9tOjEycmVtO1xyXG59XHJcblxyXG5cclxuLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXHJcbi8qIDYuIEljb25Cb3ggLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xyXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cclxuXHJcbi5pY29uYm94IHtcclxuXHRvdmVyZmxvdzogYXV0bztcclxuXHRtYXJnaW4tYm90dG9tOjFyZW07XHJcbn1cclxuXHJcbi5pY29uYm94X2ljb24ge1xyXG5cdGZvbnQtc2l6ZToycmVtO1xyXG5cdGxpbmUtaGVpZ2h0OjJyZW07XHRcclxuXHRtYXJnaW46MCBhdXRvO1xyXG59XHJcblxyXG4uaWNvbmJveF9pY29uLmljb25fcm91bmRlZCB7XHJcblx0cGFkZGluZzoxcmVtO1xyXG5cdGJvcmRlci1yYWRpdXM6MTAwJTtcclxuXHR3aWR0aDo1cmVtO1xyXG5cdGhlaWdodDo1cmVtO1xyXG5cdGZvbnQtc2l6ZToycmVtO1xyXG5cdGxpbmUtaGVpZ2h0OjMuOHJlbTtcclxuXHRtYXJnaW46MnJlbSBhdXRvO1x0XHJcbn1cclxuXHJcblxyXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cclxuLyogNy4gSW50cm8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXHJcbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xyXG5cclxuLmludHJvIHtcclxuXHRwYWRkaW5nLWJvdHRvbToxcmVtO1xyXG5cdHBhZGRpbmctdG9wOjFyZW07XHJcbn1cclxuXHJcbi5pbnRybyBoMyB7XHJcblx0bWFyZ2luLXRvcDowO1xyXG59XHJcblxyXG5cclxuLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXHJcbi8qIDguIFN1YnNlY3Rpb25zIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xyXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cclxuXHJcbi5zdWJzZWN0aW9uIHtcclxuXHRwYWRkaW5nLXRvcDo0cmVtO1xyXG5cdHBhZGRpbmctYm90dG9tOjRyZW07XHJcblx0cG9zaXRpb246cmVsYXRpdmU7XHJcblx0ei1pbmRleDoxO1xyXG59XHJcblxyXG5cclxuLyotLSByZXZpZXcgbG9nb3MgLS0qL1xyXG5cclxuI3Jldmlld3NfbG9nb3Muc3Vic2VjdGlvbiB7XHJcblx0cGFkZGluZy10b3A6M3JlbTtcclxuXHRwYWRkaW5nLWJvdHRvbTogMXJlbTtcclxufVxyXG5cclxuI3Jldmlld3NfbG9nb3Muc3Vic2VjdGlvbiBoNiB7XHJcblx0b3BhY2l0eTowLjVcclxufVxyXG5cclxuXHJcbi8qLS0gZmVhdHVyZXMgLS0qL1xyXG5cclxuLmZlYXR1cmVfYm94IC5mZWF0dXJlX2NvbnRlbnQge1xyXG5cdHBhZGRpbmc6MnJlbTtcclxuXHRwYWRkaW5nLXRvcDo4cmVtO1xyXG59XHJcblxyXG4uZmVhdHVyZV9jb250ZW50IGg2IHtcclxuXHRtYXJnaW4tYm90dG9tOjAuOHJlbTtcclxufVxyXG5cclxuLmZlYXR1cmVfaW1hZ2Uge1xyXG5cdG1hcmdpbi10b3A6NXJlbTtcclxuXHRwYWRkaW5nLWJvdHRvbTozcmVtO1xyXG59XHJcblxyXG4uZmVhdHVyZV9ib3hfY2VudGVyIC5mZWF0dXJlX2NvbnRlbnQge1xyXG5cdHBhZGRpbmc6MXJlbTtcclxufVxyXG5cclxuLmZlYXR1cmVfYm94X2NlbnRlcl9jb250ZW50X3JvdyB7XHJcblx0cGFkZGluZy10b3A6MTJyZW07XHJcbn1cclxuXHJcblxyXG4vKi0tIGFib3V0IC0gdmlkZW8gLS0qL1xyXG5cclxuLmFib3V0X3ZpZGVvX3BsYXllciBpZnJhbWUge1xyXG5cdGJvcmRlcjogc29saWQgMC44cmVtIHdoaXRlO1xyXG59XHJcblxyXG4uYWJvdXRfdmlkZW9fcGxheWVyIHtcclxuXHRwYWRkaW5nLXRvcDogM3JlbTtcclxuXHRwYWRkaW5nLWJvdHRvbTozcmVtO1xyXG59XHJcblxyXG5cclxuLyotLSBzY3JlZW5zaG90cyBnYWxsZXJ5IC0tKi9cclxuXHJcbi5zY3JlZW5zaG90IHtcclxuXHQtd2Via2l0LXRyYW5zaXRpb246IGFsbCAwLjNzIGVhc2UtaW4tb3V0O1xyXG4gICAgLW1vei10cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlLWluLW91dDtcclxuICAgIC1vLXRyYW5zaXRpb246IGFsbCAwLjNzIGVhc2UtaW4tb3V0O1xyXG4gICAgdHJhbnNpdGlvbjogYWxsIDAuM3MgZWFzZS1pbi1vdXQ7XHJcbiAgICBtYXJnaW4tYm90dG9tOjEuNXJlbTtcclxufVxyXG5cclxuLnNjcmVlbnNob3Q6aG92ZXIge1xyXG5cdG9wYWNpdHk6MC44O1xyXG59XHJcblxyXG4uc2NyZWVuc2hvdHNfZ2FsbGVyeSB7XHJcblx0bWFyZ2luLXRvcDoycmVtO1xyXG59XHJcblxyXG5cclxuLyotLSBjbGllbnQgcmV2aWV3cyAtLSovXHJcblxyXG4uc2luZ2xlX3JldmlldyB7XHJcblx0bWFyZ2luLWJvdHRvbToycmVtXHJcbn1cclxuXHJcbi5zaW5nbGVfcmV2aWV3IGltZ3tcclxuXHRtYXgtd2lkdGg6NHJlbTtcclxuXHRoZWlnaHQ6NHJlbTtcclxuXHRtYXJnaW4tdG9wOjJyZW07XHJcblx0bWFyZ2luLWJvdHRvbToycmVtO1xyXG59XHJcblxyXG4ucmV2aWV3X2NvbnRlbnQge1xyXG5cdG92ZXJmbG93OmhpZGRlbjtcclxufVxyXG5cclxuLnJldmlld19jb250ZW50IHAge1xyXG5cdHBhZGRpbmctdG9wOjJyZW07XHJcbn1cclxuXHJcbi5yZXZpZXdzX2xvZ28gaW1nIHtcclxuXHR3aWR0aDo5MCVcclxufVxyXG5cclxuLnJldmlld19jb250ZW50IGg0IHtcclxuXHRmb250LXN0eWxlOiBpdGFsaWM7XHJcbn1cclxuXHJcbi5yZXZpZXdfdG9wX29ybmFtZW50X2xpbmUge1xyXG5cdG1hcmdpbi1sZWZ0OjAuNXJlbTtcclxuXHRtYXJnaW4tcmlnaHQ6MC41cmVtO1xyXG5cdHdpZHRoOjZyZW07XHJcblx0ZGlzcGxheTppbmxpbmUtYmxvY2s7XHJcbn1cclxuXHJcbi5yZXZpZXdfdG9wX29ybmFtZW50X3F1b3RlbWFyayB7XHJcblx0Zm9udC1mYW1pbHk6J1RpbWVzIE5ldyBSb21hbicsIFRpbWVzLCBCYXNrZXJ2aWxsZSwgR2VvcmdpYSwgc2VyaWY7XHJcblx0Zm9udC13ZWlnaHQ6IGJvbGQ7XHJcblx0Zm9udC1zaXplOiA1cmVtO1xyXG5cdGRpc3BsYXk6aW5saW5lLWJsb2NrO1xyXG5cdG1hcmdpbi1ib3R0b206MC44cmVtO1xyXG59XHJcblxyXG4ucmV2aWV3X2JvdHRvbV9vcm5hbWVudF9saW5lIHtcclxuXHRtYXJnaW4tbGVmdDowcmVtO1xyXG5cdG1hcmdpbi1yaWdodDowcmVtO1xyXG5cdHdpZHRoOjRyZW07XHJcblx0ZGlzcGxheTppbmxpbmUtYmxvY2s7XHJcbn1cclxuXHJcbi5yZXZpZXdfYm90dG9tX29ybmFtZW50X3RyaWFuZ2xlIHtcclxuXHR3aWR0aDogMDtcclxuXHRoZWlnaHQ6IDA7XHJcbiAgICBwb3NpdGlvbjpyZWxhdGl2ZTtcclxuXHRkaXNwbGF5OmlubGluZS1ibG9jaztcclxuXHR0b3A6OXB4O1xyXG5cdG1hcmdpbi1sZWZ0OiAtNXB4O1xyXG5cdG1hcmdpbi1yaWdodDotNXB4O1xyXG59XHJcblxyXG4ucmV2aWV3X2JvdHRvbV9vcm5hbWVudF90cmlhbmdsZTphZnRlciB7XHJcblx0Y29udGVudDonJztcclxuICAgIHdpZHRoOiAwOyBcclxuICAgIGhlaWdodDogMDsgIFxyXG4gICAgcG9zaXRpb246YWJzb2x1dGU7XHJcblx0dG9wOi0xMHB4O1xyXG5cdGxlZnQ6LTlweDtcclxufVxyXG5cclxuXHJcbi8qLS0gZm9vdGVyIC0tKi9cclxuXHJcbiNmb290ZXIuc3Vic2VjdGlvbiB7XHJcblx0cGFkZGluZy10b3A6MnJlbTtcclxuXHRwYWRkaW5nLWJvdHRvbTowLjlyZW07XHJcbn1cclxuXHJcbiNmb290ZXIgc21hbGwge1xyXG5cdGZvbnQtd2VpZ2h0OiAzMDBcclxufVxyXG5cclxuLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXHJcbi8qIDkuIFByaWNpbmcgVGFibGVzIC0tLS0tLS0tLS0tLS0tLS0tLS0qL1xyXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cclxuXHJcbi5wcmljaW5nX2JveCB7XHJcblx0cGFkZGluZzoycmVtO1xyXG5cdHBhZGRpbmctYm90dG9tOjIuNXJlbTtcclxuXHRtYXJnaW4tdG9wOjJyZW07XHJcblx0bWFyZ2luLWJvdHRvbToxcmVtO1xyXG59XHJcblxyXG4ucHJpY2luZ19ib3ggLmljb25ib3hfaWNvbiB7XHJcblx0bWFyZ2luLWJvdHRvbToxcmVtO1xyXG59XHJcblxyXG4ucHJpY2luZ19ib3hfcHJpY2UgaDMsIC5wcmljaW5nX2JveF9wcmljZSBoNHtcclxuXHRkaXNwbGF5OmlubGluZS1ibG9jaztcclxuXHRtYXJnaW46IDA7XHJcbn1cclxuXHJcbi5wcmljaW5nX2JveF9wcmljZSB7XHJcblx0bWFyZ2luLXRvcDoycmVtO1xyXG5cdG1hcmdpbi1ib3R0b206MnJlbTtcclxuXHRwYWRkaW5nOjFyZW07XHJcbn1cclxuXHJcbi5wcmljaW5nX2JveF9saXN0IGxpIHAge1xyXG5cdG1hcmdpbjowO1xyXG5cdHBhZGRpbmc6MDtcclxufVxyXG5cclxuLnByaWNpbmdfYm94X2xpc3QgbGkge1xyXG5cdHBhZGRpbmctYm90dG9tOi41cmVtO1xyXG59XHJcblxyXG5cclxuXHJcbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xyXG4vKiAxMC4gVGVhbSAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXHJcbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xyXG5cclxuLnRlYW1fbWVtYmVyX2luZm8gaDR7XHJcblx0bWFyZ2luLWJvdHRvbToxcmVtO1xyXG59XHJcblxyXG4udGVhbV9tZW1iZXJfaW5mbyB7XHJcblx0cGFkZGluZy1ib3R0b206MnJlbTtcclxuXHRtYXJnaW4tYm90dG9tOjFyZW07XHJcbn1cclxuXHJcblxyXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cclxuLyogMTEuIENvbnRhY3QgRm9ybSAtLS0tLS0tLS0tLS0tLS0tLS0tLSovXHJcbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xyXG5cclxuLmNvbnRhY3RfZm9ybSAuaW5wdXQtZmllbGQge1xyXG5cdG1hcmdpbi1ib3R0b206IDEuNzJyZW07XHJcbn1cclxuXHJcbi5jb250YWN0X2Zvcm1fY29udGFpbmVyIHtcclxuXHRwYWRkaW5nLWJvdHRvbToycmVtO1xyXG59XHJcblxyXG4vKi0tIENPTlRBQ1QgRk9STSBNRVNTQUdFIFNUWUxJTkcgLS0qL1xyXG5cclxuI21lc3NhZ2Uge1xyXG4gICAgZGlzcGxheTpub25lO1xyXG4gICAgcG9zaXRpb246IGZpeGVkO1xyXG4gICAgei1pbmRleDozMDAwO1xyXG4gICAgd2lkdGg6NDByZW07XHJcbiAgICB0b3A6NTAlO1xyXG4gICAgbGVmdDo1MCU7XHJcbiAgICBtYXJnaW4tdG9wOi04LjVyZW07XHJcbiAgICBtYXJnaW4tbGVmdDotMjByZW07XHJcbiAgICB0ZXh0LWFsaWduOmNlbnRlcjsgIFxyXG59XHJcblxyXG4jYWxlcnQge1xyXG5cdGRpc3BsYXk6dGFibGUtY2VsbDtcclxuXHR2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xyXG4gICAgcGFkZGluZy1ib3R0b206MnJlbTtcclxuICAgIHBhZGRpbmctdG9wOjJyZW07XHJcbiAgICBwYWRkaW5nLWxlZnQ6MnJlbTtcclxuICAgIHBhZGRpbmctcmlnaHQ6MnJlbTtcclxufVxyXG5cclxuLmFsZXJ0X2ljb24ge1xyXG5cdGZvbnQtc2l6ZToycmVtO1xyXG5cdGNvbG9yOndoaXRlO1xyXG59XHJcblxyXG4udW5vcmRlcmVkIGxpIHtcclxuICAgIG1hcmdpbjowICFpbXBvcnRhbnQ7XHJcbn1cclxuXHJcbi5jb250YWN0X2ljb24ge1xyXG5cdGZvbnQtc2l6ZToycmVtO1xyXG5cdG1hcmdpbi10b3A6NHJlbTtcclxuXHRtYXJnaW4tYm90dG9tOjFyZW07XHJcbn1cclxuXHJcbiNtZXNzYWdlLndhcm5pbmcge1xyXG5cdGJhY2tncm91bmQ6I0Y0NDMzNjtcclxufVxyXG5cclxuI21lc3NhZ2Uuc3VjY2VzcyB7XHJcblx0YmFja2dyb3VuZDojNENBRjUwO1xyXG59XHJcblxyXG5cclxuLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXHJcbi8qIDEyLiBJbnB1dHMgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cclxuLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXHJcblxyXG4uaW5wdXQtZmllbGQge1xyXG5cdHBvc2l0aW9uOiByZWxhdGl2ZTsgXHJcbn1cclxuXHJcbi5pbnB1dC1maWVsZCBsYWJlbCB7XHJcbiAgICBvcGFjaXR5OjAuNztcclxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgIHRvcDogMC44cmVtO1xyXG4gICAgbGVmdDogMHJlbTtcclxuICAgIGZvbnQtc2l6ZTogMXJlbTtcclxuICAgIGN1cnNvcjogdGV4dDtcclxuICAgIC13ZWJraXQtdHJhbnNpdGlvbjogMC4ycyBlYXNlLW91dDtcclxuICAgIC1tb3otdHJhbnNpdGlvbjogMC4ycyBlYXNlLW91dDtcclxuICAgIC1vLXRyYW5zaXRpb246IDAuMnMgZWFzZS1vdXQ7XHJcbiAgICAtbXMtdHJhbnNpdGlvbjogMC4ycyBlYXNlLW91dDtcclxuICAgIHRyYW5zaXRpb246IDAuMnMgZWFzZS1vdXQ7IFxyXG59XHJcblxyXG4uaW5wdXQtZmllbGQgbGFiZWwuYWN0aXZlIHtcclxuICAgIGZvbnQtc2l6ZTogMC44cmVtO1xyXG4gICAgb3BhY2l0eTowLjc7XHJcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMTMwJSk7XHJcbiAgICAtbW96LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMTMwJSk7XHJcbiAgICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xMzAlKTtcclxuICAgIC1vLXRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMTMwJSk7XHJcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTEzMCUpOyBcclxufVxyXG5cclxuLmlucHV0LWZpZWxkIGlucHV0W3R5cGU9dGV4dF0udmFsaWQsXHJcbi5pbnB1dC1maWVsZCBpbnB1dFt0eXBlPXBhc3N3b3JkXS52YWxpZCxcclxuLmlucHV0LWZpZWxkIGlucHV0W3R5cGU9ZW1haWxdLnZhbGlkLFxyXG4uaW5wdXQtZmllbGQgaW5wdXRbdHlwZT1kYXRlXS52YWxpZCxcclxuLmlucHV0LWZpZWxkIHRleHRhcmVhLnZhbGlkIHtcclxuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjNENBRjUwO1xyXG4gICAgLXdlYmtpdC1ib3gtc2hhZG93OiAwIDFweCAwIDAgIzRDQUY1MDtcclxuICAgIC1tb3otYm94LXNoYWRvdzogMCAxcHggMCAwICM0Q0FGNTA7XHJcbiAgICBib3gtc2hhZG93OiAwIDFweCAwIDAgIzRDQUY1MDsgXHJcbn1cclxuXHJcbi5pbnB1dC1maWVsZCBpbnB1dFt0eXBlPXRleHRdLmludmFsaWQsXHJcbi5pbnB1dC1maWVsZCBpbnB1dFt0eXBlPXBhc3N3b3JkXS5pbnZhbGlkLFxyXG4uaW5wdXQtZmllbGQgaW5wdXRbdHlwZT1lbWFpbF0uaW52YWxpZCxcclxuLmlucHV0LWZpZWxkIGlucHV0W3R5cGU9ZGF0ZV0uaW52YWxpZCxcclxuLmlucHV0LWZpZWxkIHRleHRhcmVhLmludmFsaWQge1xyXG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNGNDQzMzY7XHJcbiAgICAtd2Via2l0LWJveC1zaGFkb3c6IDAgMXB4IDAgMCAjRjQ0MzM2O1xyXG4gICAgLW1vei1ib3gtc2hhZG93OiAwIDFweCAwIDAgI0Y0NDMzNjtcclxuICAgIGJveC1zaGFkb3c6IDAgMXB4IDAgMCAjRjQ0MzM2O1xyXG59XHJcbiAgICAgICBcclxuLmlucHV0LWZpZWxkIC5wcmVmaXgge1xyXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgd2lkdGg6IDJyZW07XHJcbiAgICB0b3A6MXJlbTtcclxuICAgIGZvbnQtc2l6ZTogMS43MnJlbTtcclxuICAgIC13ZWJraXQtdHJhbnNpdGlvbjogY29sb3IgMC4ycztcclxuICAgIC1tb3otdHJhbnNpdGlvbjogY29sb3IgMC4ycztcclxuICAgIC1vLXRyYW5zaXRpb246IGNvbG9yIDAuMnM7XHJcbiAgICAtbXMtdHJhbnNpdGlvbjogY29sb3IgMC4ycztcclxuICAgIHRyYW5zaXRpb246IGNvbG9yIDAuMnM7IFxyXG59XHJcblxyXG4uaW5wdXQtZmllbGQgLnByZWZpeCB+IGlucHV0LFxyXG4uaW5wdXQtZmllbGQgLnByZWZpeCB+IHRleHRhcmVhIHtcclxuICAgIG1hcmdpbi1sZWZ0OjNyZW07XHJcbiAgICB3aWR0aDogOTIlO1xyXG4gICAgd2lkdGg6IGNhbGMoMTAwJSAtIDNyZW0pO1xyXG59XHJcblxyXG4uaW5wdXQtZmllbGQgLnByZWZpeCB+IHRleHRhcmVhIHtcclxuICAgIHBhZGRpbmctdG9wOiAwLjhyZW07IFxyXG59XHJcblxyXG4uaW5wdXQtZmllbGQgLnByZWZpeCB+IGxhYmVsIHtcclxuICAgIG1hcmdpbi1sZWZ0OiAzcmVtOyBcclxufVxyXG4gICAgXHJcbmlucHV0W3R5cGU9dGV4dF0sXHJcbmlucHV0W3R5cGU9cGFzc3dvcmRdLFxyXG5pbnB1dFt0eXBlPWVtYWlsXSxcclxuaW5wdXRbdHlwZT1kYXRlXSxcclxudGV4dGFyZWEge1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xyXG5cdGJvcmRlcjogbm9uZTtcclxuXHRvdXRsaW5lOiBub25lO1xyXG5cdGhlaWdodDogM3JlbTtcclxuXHR3aWR0aDogMTAwJTtcclxuXHRmb250LXNpemU6IDFyZW07XHJcblx0bWFyZ2luOiAwIDAgMTVweCAwO1xyXG5cdHBhZGRpbmc6IDA7XHJcblx0LXdlYmtpdC1ib3gtc2hhZG93OiBub25lO1xyXG5cdC1tb3otYm94LXNoYWRvdzogbm9uZTtcclxuXHRib3gtc2hhZG93OiBub25lO1xyXG5cdC13ZWJraXQtYm94LXNpemluZzogY29udGVudC1ib3g7XHJcblx0LW1vei1ib3gtc2l6aW5nOiBjb250ZW50LWJveDtcclxuXHRib3gtc2l6aW5nOiBjb250ZW50LWJveDtcclxuXHQtd2Via2l0LXRyYW5zaXRpb246IDAuM3M7XHJcblx0LW1vei10cmFuc2l0aW9uOiAwLjNzO1xyXG5cdC1vLXRyYW5zaXRpb246IDAuM3M7XHJcblx0LW1zLXRyYW5zaXRpb246IDAuM3M7XHJcblx0dHJhbnNpdGlvbjogMC4zcztcclxufVxyXG5cclxudGV4dGFyZWEge1xyXG5cdG92ZXJmbG93LXk6IGhpZGRlbjtcclxuXHQvKiBwcmV2ZW50cyBzY3JvbGwgYmFyIGZsYXNoICovXHJcblx0cGFkZGluZzogMS42cmVtIDA7XHJcblx0LyogcHJldmVudHMgdGV4dCBqdW1wIG9uIEVudGVyIGtleXByZXNzICovXHJcblx0cmVzaXplOiBub25lO1xyXG59XHJcblxyXG4uaGlkZGVuZGl2IHtcclxuXHRkaXNwbGF5OiBub25lO1xyXG5cdHdoaXRlLXNwYWNlOiBwcmUtd3JhcDtcclxuXHR3b3JkLXdyYXA6IGJyZWFrLXdvcmQ7XHJcblx0b3ZlcmZsb3ctd3JhcDogYnJlYWstd29yZDtcclxuXHQvKiBmdXR1cmUgdmVyc2lvbiBvZiBkZXByZWNhdGVkICd3b3JkLXdyYXAnICovXHJcblx0cGFkZGluZy10b3A6IDEuMnJlbTtcclxuXHQvKiBwcmV2ZW50cyB0ZXh0IGp1bXAgb24gRW50ZXIga2V5cHJlc3MgKi9cclxufVxyXG5cclxuIFxyXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cclxuLyogMTMuIEJ1dHRvbnMgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xyXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi8gXHJcbiBcclxuLmJ0bixcclxuLmJ0bi1sYXJnZSxcclxuLmJ0bi1mbGF0IHtcclxuXHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcblx0Zm9udC13ZWlnaHQ6OTAwO1xyXG5cdGhlaWdodDogMy4ycmVtO1xyXG5cdHBhZGRpbmc6IDAgMi4xcmVtO1xyXG5cdC13ZWJraXQtYm9yZGVyLXJhZGl1czogMTAwcHg7XHJcblx0LW1vei1ib3JkZXItcmFkaXVzOiAxMDBweDtcclxuXHRib3JkZXItcmFkaXVzOiAxMDBweDtcclxuXHRsaW5lLWhlaWdodDogMy4ycmVtO1xyXG5cdHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XHJcblx0Ym9yZGVyOiBub25lO1xyXG5cdC13ZWJraXQtdGFwLWhpZ2hsaWdodC1jb2xvcjogdHJhbnNwYXJlbnQ7XHJcbn1cclxuXHJcbi5idG4sXHJcbi5idG4tbGFyZ2Uge1xyXG5cdHRleHQtZGVjb3JhdGlvbjogbm9uZTtcclxuXHRjb2xvcjogI0ZGRjtcclxuXHR0ZXh0LWFsaWduOiBjZW50ZXI7XHJcblx0bGV0dGVyLXNwYWNpbmc6IDAuMXJlbTtcclxuXHRmb250LXNpemU6IDAuOTJyZW07XHJcblx0LXdlYmtpdC10cmFuc2l0aW9uOiAwLjJzIGVhc2Utb3V0O1xyXG5cdC1tb3otdHJhbnNpdGlvbjogMC4ycyBlYXNlLW91dDtcclxuXHQtby10cmFuc2l0aW9uOiAwLjJzIGVhc2Utb3V0O1xyXG5cdC1tcy10cmFuc2l0aW9uOiAwLjJzIGVhc2Utb3V0O1xyXG5cdHRyYW5zaXRpb246IDAuMnMgZWFzZS1vdXQ7XHJcblx0Y3Vyc29yOiBwb2ludGVyO1xyXG59XHJcblxyXG4uYnRuLWZsYXQge1xyXG5cdGJveC1zaGFkb3c6IG5vbmU7XHJcblx0YmFja2dyb3VuZC1jb2xvcjpyZ2JhKDI1NSwgMjU1LCAyNTUsIC4xKTtcclxuXHRjb2xvcjogd2hpdGU7XHJcblx0Y3Vyc29yOiBwb2ludGVyO1xyXG59XHJcbiAgXHJcbi5idG4tZmxhdC5kaXNhYmxlZCB7XHJcblx0Y29sb3I6IHdoaXRlO1xyXG59XHJcblxyXG4uYnRuLWxhcmdlIHtcclxuXHRoZWlnaHQ6IDU0cHg7XHJcblx0bGluZS1oZWlnaHQ6IDU2cHg7XHJcbn1cclxuLmJ0bi1sYXJnZSBpIHtcclxuXHRmb250LXNpemU6IDEuNnJlbTsgXHJcbn1cclxuXHJcbi5zdG9yZV9idXR0b24ge1xyXG5cdGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuXHRtYXJnaW46MCAwLjVyZW07XHJcblx0bWFyZ2luLWJvdHRvbToxcmVtO1xyXG59XHJcblxyXG4uYnRuLmJ0bl93aXRoX2ljb24ge1xyXG5cdGxpbmUtaGVpZ2h0OjJyZW07XHJcblx0cGFkZGluZzogMCAxLjVyZW07XHJcblx0cGFkZGluZy10b3A6MDtcclxuXHRwYWRkaW5nLWJvdHRvbTowO1xyXG5cdHBhZGRpbmctbGVmdDowLjhyZW07XHJcblx0cGFkZGluZy1yaWdodDoxLjVyZW07XHJcblx0dGV4dC1hbGlnbjpsZWZ0ICFpbXBvcnRhbnQ7XHJcbn1cclxuXHJcbi5idG4uYnRuX3dpdGhfaWNvbiBpbWd7XHJcblx0aGVpZ2h0OjMuMnJlbTtcclxuXHR3aWR0aDozLjJyZW07XHJcblx0bGluZS1oZWlnaHQ6My4ycmVtO1xyXG5cdHBhZGRpbmc6IDAuN3JlbTtcclxuXHRmbG9hdDpsZWZ0O1xyXG59XHJcblxyXG4uYnRuLmJ0bl93aXRoX2ljb24gaDYsIC5idG4uYnRuX3dpdGhfaWNvbiBzcGFuIHtcclxuXHRtYXJnaW46MCAhaW1wb3J0YW50O1xyXG5cdHBhZGRpbmc6MCAhaW1wb3J0YW50O1xyXG5cdGxpbmUtaGVpZ2h0OiAwO1xyXG59XHJcblxyXG4uYnRuLmJ0bl93aXRoX2ljb24gc3BhbiB7XHJcblx0Zm9udC13ZWlnaHQ6IDMwMDtcdFxyXG5cdGZvbnQtc2l6ZTogMC42cmVtO1xyXG59XHJcblxyXG4uYnRuLmJ0bl93aXRoX2ljb24gLmJ0bl9jb250ZW50IHtcclxuXHRkaXNwbGF5OmlubGluZS1ibG9jaztcclxufVxyXG5cclxuXHJcbi56LWRlcHRoLTEsIG5hdiwgLmNhcmQtcGFuZWwsIC5jYXJkLCAudG9hc3QsICAuYnRuLWxhcmdlLCAuYnRuLWZsb2F0aW5nLCAuZHJvcGRvd24tY29udGVudCwgLmNvbGxhcHNpYmxlLCB1bC5zaWRlLW5hdi5mdWxsLCB1bC5zaWRlLW5hdi5maXhlZCwgLnNoYWRvdyB7XHJcblx0LXdlYmtpdC1ib3gtc2hhZG93OiAwIDJweCA1cHggMCByZ2JhKDAsIDAsIDAsIDAuMDgpLCAwIDJweCAxMHB4IDAgcmdiYSgwLCAwLCAwLCAwLjEyKTtcclxuXHQtbW96LWJveC1zaGFkb3c6IDAgMnB4IDVweCAwIHJnYmEoMCwgMCwgMCwgMC4wOCksIDAgMnB4IDEwcHggMCByZ2JhKDAsIDAsIDAsIDAuMTIpO1xyXG5cdGJveC1zaGFkb3c6IDAgMnB4IDVweCAwIHJnYmEoMCwgMCwgMCwgMC4wOCksIDAgMnB4IDEwcHggMCByZ2JhKDAsIDAsIDAsIDAuMTIpO1xyXG59XHJcblxyXG4uei1kZXB0aC0xLWhhbGYsIC5idG4tbGFyZ2U6aG92ZXIsIC5idG4tZmxvYXRpbmc6aG92ZXIsIC5tb2RhbCB7XHJcblx0LXdlYmtpdC1ib3gtc2hhZG93OiAwIDVweCAxMXB4IDAgcmdiYSgwLCAwLCAwLCAwLjE4KSwgMCA0cHggMTVweCAwIHJnYmEoMCwgMCwgMCwgMC4xNSk7XHJcblx0LW1vei1ib3gtc2hhZG93OiAwIDVweCAxMXB4IDAgcmdiYSgwLCAwLCAwLCAwLjE4KSwgMCA0cHggMTVweCAwIHJnYmEoMCwgMCwgMCwgMC4xNSk7XHJcblx0Ym94LXNoYWRvdzogMCA1cHggMTFweCAwIHJnYmEoMCwgMCwgMCwgMC4xOCksIDAgNHB4IDE1cHggMCByZ2JhKDAsIDAsIDAsIDAuMTUpOyBcclxufVxyXG5cclxuLnotZGVwdGgtMiwgLnNoYWRvdzpob3ZlciAsIC5hYm91dF92aWRlb19wbGF5ZXIgaWZyYW1le1xyXG5cdC13ZWJraXQtYm94LXNoYWRvdzogMCA4cHggMTdweCAwIHJnYmEoMCwgMCwgMCwgMC4yKSwgMCA2cHggMjBweCAwIHJnYmEoMCwgMCwgMCwgMC4xOSk7XHJcblx0LW1vei1ib3gtc2hhZG93OiAwIDhweCAxN3B4IDAgcmdiYSgwLCAwLCAwLCAwLjIpLCAwIDZweCAyMHB4IDAgcmdiYSgwLCAwLCAwLCAwLjE5KTtcclxuXHRib3gtc2hhZG93OiAwIDhweCAxN3B4IDAgcmdiYSgwLCAwLCAwLCAwLjIpLCAwIDZweCAyMHB4IDAgcmdiYSgwLCAwLCAwLCAwLjE5KTsgXHJcbn1cclxuXHJcbi56LWRlcHRoLTMge1xyXG5cdC13ZWJraXQtYm94LXNoYWRvdzogMCAxMnB4IDE1cHggMCByZ2JhKDAsIDAsIDAsIDAuMjQpLCAwIDE3cHggNTBweCAwIHJnYmEoMCwgMCwgMCwgMC4xOSk7XHJcblx0LW1vei1ib3gtc2hhZG93OiAwIDEycHggMTVweCAwIHJnYmEoMCwgMCwgMCwgMC4yNCksIDAgMTdweCA1MHB4IDAgcmdiYSgwLCAwLCAwLCAwLjE5KTtcclxuXHRib3gtc2hhZG93OiAwIDEycHggMTVweCAwIHJnYmEoMCwgMCwgMCwgMC4yNCksIDAgMTdweCA1MHB4IDAgcmdiYSgwLCAwLCAwLCAwLjE5KTsgXHJcbn1cclxuXHJcbi56LWRlcHRoLTQge1xyXG5cdC13ZWJraXQtYm94LXNoYWRvdzogMCAxNnB4IDI4cHggMCByZ2JhKDAsIDAsIDAsIDAuMjIpLCAwIDI1cHggNTVweCAwIHJnYmEoMCwgMCwgMCwgMC4yMSk7XHJcblx0LW1vei1ib3gtc2hhZG93OiAwIDE2cHggMjhweCAwIHJnYmEoMCwgMCwgMCwgMC4yMiksIDAgMjVweCA1NXB4IDAgcmdiYSgwLCAwLCAwLCAwLjIxKTtcclxuXHRib3gtc2hhZG93OiAwIDE2cHggMjhweCAwIHJnYmEoMCwgMCwgMCwgMC4yMiksIDAgMjVweCA1NXB4IDAgcmdiYSgwLCAwLCAwLCAwLjIxKTsgXHJcbn1cclxuXHJcbi56LWRlcHRoLTUge1xyXG5cdC13ZWJraXQtYm94LXNoYWRvdzogMCAyN3B4IDI0cHggMCByZ2JhKDAsIDAsIDAsIDAuMiksIDAgNDBweCA3N3B4IDAgcmdiYSgwLCAwLCAwLCAwLjIyKTtcclxuXHQtbW96LWJveC1zaGFkb3c6IDAgMjdweCAyNHB4IDAgcmdiYSgwLCAwLCAwLCAwLjIpLCAwIDQwcHggNzdweCAwIHJnYmEoMCwgMCwgMCwgMC4yMik7XHJcblx0Ym94LXNoYWRvdzogMCAyN3B4IDI0cHggMCByZ2JhKDAsIDAsIDAsIDAuMiksIDAgNDBweCA3N3B4IDAgcmdiYSgwLCAwLCAwLCAwLjIyKTsgXHJcbn1cclxuXHRcclxuIFxyXG4vKiBSZW1vdmUgRm9jdXMgQm94ZXMgKi9cclxuc2VsZWN0OmZvY3VzIHtcclxuICAgIG91dGxpbmU6IDFweCBzb2xpZCAjZjhjMWMzO1xyXG59XHJcblxyXG5idXR0b246Zm9jdXMge1xyXG4gICAgb3V0bGluZTogbm9uZTtcclxufVxyXG5cclxubGFiZWwge1xyXG5cdGZvbnQtc2l6ZTogMC44cmVtO1xyXG5cdGNvbG9yOiAjOWU5ZTllO1xyXG59IFxyXG4gIFxyXG5cclxuXHJcblxyXG5cclxuXHJcblxyXG4iLCIvKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG5bU3R5bGVzaGVldF1cclxuQ29sb3IgU2NoZW1lIC0gTGlnaHRcclxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXHJcblxyXG5cclxuLmhlcm9fZnVsbHNjcmVlbixcclxubmF2IGEsXHJcbiNtZXNzYWdlLFxyXG4uY3RhX2J1dHRvbl9hcmVhIGF7XHJcblx0Y29sb3I6d2hpdGU7XHJcbn1cclxuXHJcbi5oZXJvX2Z1bGxzY3JlZW4ge1xyXG5cdGJhY2tncm91bmQtY29sb3I6ICMyMTIxMjE7XHRcclxufVxyXG5cclxuLnByZWxvYWRlcl9oZWFkZXIsXHJcbi5uaXZvLWxpZ2h0Ym94LXRoZW1lLWRlZmF1bHQubml2by1saWdodGJveC1vdmVybGF5IHtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiAjZmFmYWZhO1x0XHJcbn1cclxuXHJcbi5wcmVsb2FkZXJfaGVhZGVyIC5wcmVsb2FkZXJfbG9hZGVyIHN2ZyBwYXRoLnByZWxvYWRlcl9sb2FkZXJfY2lyY2xlYmcge1xyXG4gICAgc3Ryb2tlOiByZ2JhKDAsIDAsIDAsIC4xKTtcclxufVxyXG5cclxuLnByZWxvYWRlcl9oZWFkZXIgLnByZWxvYWRlcl9sb2FkZXIgc3ZnIHBhdGgucHJlbG9hZGVyX2xvYWRlcl9jaXJjbGUge1xyXG4gICAgdHJhbnNpdGlvbjogc3Ryb2tlLWRhc2hvZmZzZXQgMC4ycztcclxuICAgIHN0cm9rZTogcmdiYSgwLCAwLCAwLCAuMyk7XHJcbn1cclxuXHJcbi5jb250YWN0X2Zvcm0gLmlucHV0LWZpZWxkIGxhYmVsLFxyXG4ubWVudV9iYXJfbmF2aWdhdGlvbiB1bCBsaSBhe1xyXG5cdGNvbG9yOmJsYWNrO1xyXG59XHJcbiBcclxuLmNvbnRhY3RfZm9ybSBpbnB1dFt0eXBlPXRleHRdLFxyXG4uY29udGFjdF9mb3JtIGlucHV0W3R5cGU9cGFzc3dvcmRdLFxyXG4uY29udGFjdF9mb3JtIGlucHV0W3R5cGU9ZW1haWxdLFxyXG4uY29udGFjdF9mb3JtIGlucHV0W3R5cGU9ZGF0ZV0sXHJcbi5jb250YWN0X2Zvcm0gdGV4dGFyZWEge1xyXG5cdGJvcmRlci1ib3R0b206IDFweCBzb2xpZCByZ2JhKDAsIDAsIDAsIC40KTtcclxufVxyXG5cclxuLmlucHV0LWZpZWxkIGxhYmVsIHtcclxuXHRjb2xvcjp3aGl0ZTtcclxufVxyXG5cclxuLm1lbnVfYmFyIHtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOndoaXRlO1xyXG59XHJcblxyXG4ubG9nb19kYXJrIHtcclxuXHRkaXNwbGF5OmJsb2NrO1xyXG59XHJcblxyXG4ubG9nb19saWdodCB7XHJcblx0ZGlzcGxheTpub25lO1xyXG59XHJcblxyXG4uaWNvbmJveF9pY29uIHtcclxuICAgIGNvbG9yOiByZ2JhKDAsMCwwLDEpO1xyXG59XHJcblxyXG4uaWNvbmJveF9pY29uLmljb25fcm91bmRlZCxcclxuLnByaWNpbmdfYm94IHtcclxuICAgIGJvcmRlcjogc29saWQgMXB4IHJnYmEoMCwwLDAsMC4xKTtcclxufVxyXG5cclxuLnByaWNpbmdfYm94X3ByaWNlIHtcclxuXHRib3JkZXItdG9wOiBzb2xpZCAxcHggcmdiYSgwLDAsMCwwLjEpO1xyXG5cdGJvcmRlci1ib3R0b206IHNvbGlkIDFweCByZ2JhKDAsMCwwLDAuMSk7XHJcbn1cclxuXHJcbi5mZWF0dXJlX2JveCwgLnRlYW1fbWVtYmVyX2luZm8ge1xyXG5cdGJvcmRlci1ib3R0b206IHNvbGlkIDFweCByZ2JhKDAsMCwwLDAuMSk7XHJcbn1cclxuXHJcbi5uaXZvLWxpZ2h0Ym94LXRoZW1lLWRlZmF1bHQgLm5pdm8tbGlnaHRib3gtY2xvc2UsXHJcbi5uaXZvLWxpZ2h0Ym94LXRoZW1lLWRlZmF1bHQgLm5pdm8tbGlnaHRib3gtbmF2IHtcclxuXHRjb2xvcjpibGFja1xyXG59XHJcblxyXG4jcmV2aWV3cyAub3dsLXRoZW1lIC5vd2wtY29udHJvbHMgLm93bC1wYWdlIHNwYW4ge2JvcmRlci1jb2xvcjpibGFjayAhaW1wb3J0YW50OyBiYWNrZ3JvdW5kOiByZ2JhKDAsMCwwLDApfVxyXG4jcmV2aWV3cyAub3dsLXRoZW1lIC5vd2wtY29udHJvbHMgLm93bC1wYWdlLmFjdGl2ZSBzcGFuLFxyXG4jcmV2aWV3cyAub3dsLXRoZW1lIC5vd2wtY29udHJvbHMuY2xpY2thYmxlIC5vd2wtcGFnZTpob3ZlciBzcGFuIHtcclxuXHRiYWNrZ3JvdW5kOiByZ2JhKDAsMCwwLDEpO1xyXG5cdGJvcmRlci1jb2xvcjpibGFjayAhaW1wb3J0YW50XHJcbn1cclxuXHJcbi5iYWNrZ3JvdW5kX2NvbG9yMSB7XHJcblx0YmFja2dyb3VuZDp3aGl0ZTtcclxufVxyXG5cclxuLmJhY2tncm91bmRfY29sb3IyIHtcclxuXHRiYWNrZ3JvdW5kOiAjZmFmYWZhO1xyXG59XHJcblxyXG4ucmV2aWV3X3RvcF9vcm5hbWVudF9saW5lIHtib3JkZXItdG9wOnNvbGlkIDFweCByZ2JhKDAsMCwwLC4xKX1cclxuLnJldmlld190b3Bfb3JuYW1lbnRfcXVvdGVtYXJrIHtjb2xvcjpyZ2JhKDAsMCwwLC4xKX1cclxuLnJldmlld19ib3R0b21fb3JuYW1lbnRfbGluZSB7Ym9yZGVyLXRvcDpzb2xpZCAxcHggcmdiYSgwLDAsMCwuMSl9XHJcbi5yZXZpZXdfYm90dG9tX29ybmFtZW50X3RyaWFuZ2xlIHtcclxuXHRib3JkZXItbGVmdDogMTBweCBzb2xpZCB0cmFuc3BhcmVudDtcclxuICAgIGJvcmRlci1yaWdodDogMTBweCBzb2xpZCB0cmFuc3BhcmVudDtcclxuICAgIGJvcmRlci10b3A6IDEwcHggc29saWQgcmdiYSgwLDAsMCwuMTYpO1xyXG59XHJcblxyXG4jcmV2aWV3cy5iYWNrZ3JvdW5kX2NvbG9yMSAucmV2aWV3X2JvdHRvbV9vcm5hbWVudF90cmlhbmdsZTphZnRlciB7XHJcblx0Ym9yZGVyLWxlZnQ6IDlweCBzb2xpZCB0cmFuc3BhcmVudDtcclxuICAgIGJvcmRlci1yaWdodDogOXB4IHNvbGlkIHRyYW5zcGFyZW50O1xyXG4gICAgYm9yZGVyLXRvcDogOXB4IHNvbGlkIHdoaXRlOyBcclxufVxyXG5cclxuI3Jldmlld3MuYmFja2dyb3VuZF9jb2xvcjIgLnJldmlld19ib3R0b21fb3JuYW1lbnRfdHJpYW5nbGU6YWZ0ZXIge1xyXG5cdGJvcmRlci1sZWZ0OiA5cHggc29saWQgdHJhbnNwYXJlbnQ7XHJcbiAgICBib3JkZXItcmlnaHQ6IDlweCBzb2xpZCB0cmFuc3BhcmVudDtcclxuICAgIGJvcmRlci10b3A6IDlweCBzb2xpZCAjZmFmYWZhOyBcclxufVxyXG4iLCIvKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG5bU3R5bGVzaGVldF1cclxuQ29sb3IgUGFsZXR0ZSAtIEN5YW5cclxuXHJcbm5hbWUgICAgICAgICAgIHwgIG5vcm1hbCAgIHwgIGhvdmVyIFxyXG5cclxuUmVkICAgICAgICAgICAgLSAjZTUzOTM1ICAgICNmNDQzMzZcclxuUGluayAgICAgICAgICAgLSAkYnJhbmQtYWNjZW50ICAgICNlOTFlNjNcclxuUHVycGxlICAgICAgICAgLSAjOGUyNGFhICAgICM5YzI3YjBcclxuRGVlcCBQdXJwbGUgICAgLSAjNWUzNWIxICAgICM2NzNhYjdcclxuSW5kaWdvICAgICAgICAgLSAjMzk0OWFiICAgICMzZjUxYjVcclxuQmx1ZSAgICAgICAgICAgLSAjMWU4OGU1ICAgICMyMTk2ZjNcclxuTGlnaHQgQmx1ZSAgICAgLSAjMDM5YmU1ICAgICMwM2E5ZjRcclxuQ3lhbiAgICAgICAgICAgLSAjMDBhY2MxICAgICMwMGJjZDRcclxuVGVhbCAgICAgICAgICAgLSAjMDA4OTdiICAgICMwMDk2ODhcclxuR3JlZW4gICAgICAgICAgLSAjNDNhMDQ3ICAgICM0Y2FmNTBcclxuTGlnaHQgR3JlZW4gICAgLSAjN2NiMzQyICAgICM4YmMzNGEgICAgXHJcbkxpbWUgICAgICAgICAgIC0gI2MwY2EzMyAgICAjY2RkYzM5XHJcblllbGxvdyAgICAgICAgIC0gI2ZmZDYwMCAgICAjZmZlYTAwIFxyXG5BbWJlciAgICAgICAgICAtICNmZmIzMDAgICAgI2ZmYzEwN1xyXG5PcmFuZ2UgICAgICAgICAtICNmYjhjMDAgICAgI2ZmOTgwMFxyXG5Ccm93biAgICAgICAgICAtICM2ZDRjNDEgICAgIzc5NTU0OFxyXG5HcmF5ICAgICAgICAgICAtICM3NTc1NzUgICAgIzllOWU5ZVxyXG5CbHVlLWdyYXkgICAgICAtICM1NDZlN2EgICAgIzYwN2Q4YlxyXG5cclxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXHJcblxyXG4uYnRuLFxyXG4uYnRuLWxhcmdlIHtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiAkYnJhbmQtYWNjZW50O1xyXG59XHJcblxyXG4uYnRuOmhvdmVyLFxyXG4uYnRuLWxhcmdlOmhvdmVyIHtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiAjZTkxZTYzO1xyXG59XHJcblxyXG5pbnB1dFt0eXBlPXRleHRdOmZvY3VzLFxyXG5pbnB1dFt0eXBlPXBhc3N3b3JkXTpmb2N1cyxcclxuaW5wdXRbdHlwZT1lbWFpbF06Zm9jdXMsXHJcbmlucHV0W3R5cGU9ZGF0ZV06Zm9jdXMsXHJcbnRleHRhcmVhOmZvY3VzIHtcclxuXHRib3JkZXItYm90dG9tOiAxcHggc29saWQgJGJyYW5kLWFjY2VudDtcclxuICAgIC13ZWJraXQtYm94LXNoYWRvdzogMCAxcHggMCAwICRicmFuZC1hY2NlbnQ7XHJcbiAgICAtbW96LWJveC1zaGFkb3c6IDAgMXB4IDAgMCAkYnJhbmQtYWNjZW50O1xyXG4gICAgYm94LXNoYWRvdzogMCAxcHggMCAwICRicmFuZC1hY2NlbnQ7IFxyXG59XHJcblxyXG4uaGVyb19mdWxsc2NyZWVuLmdyYWRpZW50X292ZXJsYXkge1xyXG5cdC8qIElFMTAgQ29uc3VtZXIgUHJldmlldyAqLyBcclxuXHRiYWNrZ3JvdW5kLWltYWdlOiAtbXMtbGluZWFyLWdyYWRpZW50KHRvcCBsZWZ0LCAjMDA5Njg4IDAlLCAjMDE1NzlCIDEwMCUpO1xyXG5cdFxyXG5cdC8qIE1vemlsbGEgRmlyZWZveCAqLyBcclxuXHRiYWNrZ3JvdW5kLWltYWdlOiAtbW96LWxpbmVhci1ncmFkaWVudCh0b3AgbGVmdCwgIzAwOTY4OCAwJSwgIzAxNTc5QiAxMDAlKTtcclxuXHRcclxuXHQvKiBPcGVyYSAqLyBcclxuXHRiYWNrZ3JvdW5kLWltYWdlOiAtby1saW5lYXItZ3JhZGllbnQodG9wIGxlZnQsICMwMDk2ODggMCUsICMwMTU3OUIgMTAwJSk7XHJcblx0XHJcblx0LyogV2Via2l0IChTYWZhcmkvQ2hyb21lIDEwKSAqLyBcclxuXHRiYWNrZ3JvdW5kLWltYWdlOiAtd2Via2l0LWdyYWRpZW50KGxpbmVhciwgbGVmdCB0b3AsIHJpZ2h0IGJvdHRvbSwgY29sb3Itc3RvcCgwLCAjMDA5Njg4KSwgY29sb3Itc3RvcCgxLCAjMDE1NzlCKSk7XHJcblx0XHJcblx0LyogV2Via2l0IChDaHJvbWUgMTErKSAqLyBcclxuXHRiYWNrZ3JvdW5kLWltYWdlOiAtd2Via2l0LWxpbmVhci1ncmFkaWVudCh0b3AgbGVmdCwgIzAwOTY4OCAwJSwgIzAxNTc5QiAxMDAlKTtcclxufVxyXG5cclxuLmhlcm9fZnVsbHNjcmVlbi5iYWNrZ3JvdW5kX3NvbGlkLnNvbGlkXzAxIHtcclxuXHRiYWNrZ3JvdW5kOiB1cmwoJy9pbWcvbGFuZGluZy9ob21lX2JhY2tncm91bmRzL2hvbWVfYmdfMDFfY3lhbi5qcGcnKTtcclxuXHRiYWNrZ3JvdW5kLXBvc2l0aW9uOjUwJSA5OS45JTtcclxuXHRiYWNrZ3JvdW5kLXNpemU6IDEwMCUgYXV0bztcdFxyXG59XHJcblxyXG4uaGVyb19mdWxsc2NyZWVuLmJhY2tncm91bmRfc29saWQuc29saWRfMDIge1xyXG5cdGJhY2tncm91bmQ6IHVybCgnL2ltZy9sYW5kaW5nL2hvbWVfYmFja2dyb3VuZHMvaG9tZV9iZ18wMl9jeWFuLmpwZycpO1xyXG5cdGJhY2tncm91bmQtcG9zaXRpb246NTAlIDk5LjklO1xyXG5cdGJhY2tncm91bmQtc2l6ZTogMTAwJSBhdXRvO1x0XHJcbn1cclxuXHJcbmEsIC5tZW51X2Jhcl9uYXZpZ2F0aW9uIHVsIGxpIGE6aG92ZXIsIC5tZW51X2Jhcl9uYXZpZ2F0aW9uIHVsIGxpLmFjdGl2ZSBhLCAuY2JwLXNwbWVudSBhOmhvdmVye1xyXG5cdGNvbG9yOiMwMGJjZDRcclxufVxyXG5cclxuLmJhY2tncm91bmRfY29sb3IzIHtcclxuXHRiYWNrZ3JvdW5kOiAjMDBiY2Q0O1xyXG5cdGNvbG9yOndoaXRlO1x0XHJcbn1cclxuXHJcbi5wcmljaW5nX2JveC5wcmljaW5nX2JveF9mZWF0dXJlZCB7XHJcblx0Ym9yZGVyOiBzb2xpZCAycHggIzAwYmNkNDtcclxufSIsIi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbltTdHlsZXNoZWV0XVxyXG5SZXNwb25zaXZlbmVzcyBGaXhlc1xyXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cclxuXHJcbkBtZWRpYSAobWF4LXdpZHRoOiAzMzdweCl7XHJcblx0Lm5hdmlnYXRpb25fZGVza3RvcCB1bCB7XHJcbiAgICBcdG1hcmdpbi10b3A6LTJyZW07XHJcblx0fVxyXG59XHJcblxyXG5cclxuQG1lZGlhIChtYXgtd2lkdGg6IDQ3OXB4KSB7XHJcblxyXG5cdCNtYWluX2NvbnRlbnQge1xyXG5cdFx0dGV4dC1hbGlnbjpjZW50ZXIhaW1wb3J0YW50O1xyXG5cdFx0bWFyZ2luLXJpZ2h0OjE1cHg7XHJcblx0fVxyXG5cdFxyXG5cdC5pbnB1dC1maWVsZCAucHJlZml4IHtcclxuXHRcdGRpc3BsYXk6bm9uZTtcclxuXHR9XHJcblx0XHJcblx0LmlucHV0LWZpZWxkIC5wcmVmaXggfiBpbnB1dCB7XHJcblx0XHRtYXJnaW4tbGVmdDowO1xyXG5cdFx0d2lkdGg6MTAwJTtcclxuXHR9XHJcblx0XHJcblx0LmlucHV0LWZpZWxkIC5wcmVmaXggfiBsYWJlbCB7XHJcbiAgICBcdG1hcmdpbi1sZWZ0OiAwO1xyXG4gICAgfVxyXG5cdFxyXG5cdC5jb250YWluZXIge1xyXG5cdFx0cGFkZGluZy1sZWZ0OiAwO1xyXG5cdFx0cGFkZGluZy1yaWdodDogMDtcclxuXHR9XHJcblx0XHJcblx0I21lc3NhZ2UgaDR7XHJcbiAgICBcdGZvbnQtc2l6ZTogMS4ycmVtO1xyXG4gICAgXHRsaW5lLWhlaWdodDogMi4wNnJlbTtcclxuXHR9XHJcblx0XHJcblx0I21lc3NhZ2Uge1xyXG5cdFx0d2lkdGg6MTAwJTtcclxuXHRcdG1hcmdpbjogMDtcclxuXHRcdG1heC1oZWlnaHQ6MTAwJTtcclxuXHRcdG1hcmdpbi1sZWZ0Oi01MCU7XHJcblx0XHRtYXJnaW4tdG9wOi01MCU7XHJcblx0fVxyXG5cdFxyXG5cdC5uYXZpZ2F0aW9uX2Rlc2t0b3AgdWwgbGksIC5tZW51X2Jhcl9uYXZpZ2F0aW9uIHVsIGxpIHsgZmxvYXQ6cmlnaHQ7IH1cclxuXHQuZmVhdHVyZV9ib3hfY2VudGVyX2NvbnRlbnRfcm93IHtwYWRkaW5nLXRvcDoycmVtO31cdFxyXG5cdC5mZWF0dXJlX2JveCwgLmZlYXR1cmVfYm94X2NlbnRlciB7IHBhZGRpbmctdG9wOjByZW07fVxyXG5cdC5mZWF0dXJlX2JveCAuZmVhdHVyZV9jb250ZW50IHsgcGFkZGluZy10b3A6MnJlbTsgcGFkZGluZy1ib3R0b206MDt9XHJcblx0LmZlYXR1cmVfaW1hZ2UgeyBtYXJnaW4tdG9wOjNyZW07IHBhZGRpbmctYm90dG9tOjNyZW07fVxyXG5cdFxyXG59XHJcblx0XHJcbkBtZWRpYSAobWluLXdpZHRoOiA0ODBweCkgYW5kIChtYXgtd2lkdGg6IDc2N3B4KSB7XHJcblx0XHRcclxuXHQjbWFpbl9jb250ZW50IHsgXHJcblx0XHR0ZXh0LWFsaWduOmNlbnRlciFpbXBvcnRhbnQ7XHRcdFxyXG5cdH1cclxuXHRcclxuXHQuc29jaWFsX2ljb25zX2NvbnRhaW5lciB7XHJcbiAgICBcdHRleHQtYWxpZ246Y2VudGVyIWltcG9ydGFudFxyXG5cdH1cclxuXHJcblx0I21lc3NhZ2UgaDR7XHJcbiAgICBcdGZvbnQtc2l6ZTogMS4ycmVtO1xyXG4gICAgXHRsaW5lLWhlaWdodDogMi4wNnJlbTtcclxuXHR9XHJcblx0XHJcblx0I21lc3NhZ2Uge1xyXG5cdFx0d2lkdGg6MTAwJTtcclxuXHRcdG1hcmdpbjogMDtcclxuXHRcdG1heC1oZWlnaHQ6MTAwJTtcclxuXHRcdG1hcmdpbi1sZWZ0Oi01MCU7XHJcblx0XHRtYXJnaW4tdG9wOi01MCU7XHJcblx0fVxyXG5cdFxyXG5cdC5uYXZpZ2F0aW9uX2Rlc2t0b3AgdWwgbGksIC5tZW51X2Jhcl9uYXZpZ2F0aW9uIHVsIGxpIHsgZmxvYXQ6cmlnaHQ7IH1cdFxyXG5cdC5mZWF0dXJlX2JveF9jZW50ZXJfY29udGVudF9yb3cge3BhZGRpbmctdG9wOjJyZW07fVxyXG5cdC5mZWF0dXJlX2JveCwgLmZlYXR1cmVfYm94X2NlbnRlciB7IHBhZGRpbmctdG9wOjByZW07fVxyXG5cdC5mZWF0dXJlX2JveCAuZmVhdHVyZV9jb250ZW50IHsgcGFkZGluZy10b3A6MnJlbTsgcGFkZGluZy1ib3R0b206MDt9XHJcblx0LmZlYXR1cmVfaW1hZ2UgeyBtYXJnaW4tdG9wOjJyZW07IHBhZGRpbmctYm90dG9tOjNyZW07fVxyXG59XHJcblxyXG5AbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIGFuZCAobWF4LXdpZHRoOiA5OTFweCkge1xyXG5cdC5uYXZpZ2F0aW9uX2Rlc2t0b3AgdWwgbGksIC5tZW51X2Jhcl9uYXZpZ2F0aW9uIHVsIGxpIHsgZmxvYXQ6cmlnaHQ7IH1cclxuXHQuZmVhdHVyZV9ib3hfY2VudGVyX2NvbnRlbnRfcm93IHtwYWRkaW5nLXRvcDoycmVtO31cclxuXHQuZmVhdHVyZV9ib3gsIC5mZWF0dXJlX2JveF9jZW50ZXIgeyBwYWRkaW5nLXRvcDowcmVtO31cclxuXHQuZmVhdHVyZV9ib3ggLmZlYXR1cmVfY29udGVudCB7IHBhZGRpbmctdG9wOjJyZW07IHBhZGRpbmctYm90dG9tOjA7fVxyXG5cdC5mZWF0dXJlX2ltYWdlIHsgbWFyZ2luLXRvcDoycmVtOyBwYWRkaW5nLWJvdHRvbTozcmVtO31cclxufVxyXG4iLCJAY2hhcnNldCBcIlVURi04XCI7XHJcbi8qIVxyXG5BbmltYXRlLmNzcyAtIGh0dHA6Ly9kYW5lZGVuLm1lL2FuaW1hdGVcclxuTGljZW5zZWQgdW5kZXIgdGhlIE1JVCBsaWNlbnNlIC0gaHR0cDovL29wZW5zb3VyY2Uub3JnL2xpY2Vuc2VzL01JVFxyXG5cclxuQ29weXJpZ2h0IChjKSAyMDE0IERhbmllbCBFZGVuXHJcbiovXHJcblxyXG4uYW5pbWF0ZWQge1xyXG4gIC13ZWJraXQtYW5pbWF0aW9uLWR1cmF0aW9uOiAwLjdzO1xyXG4gICAgICAgICAgYW5pbWF0aW9uLWR1cmF0aW9uOiAwLjdzO1xyXG4gIC13ZWJraXQtYW5pbWF0aW9uLWZpbGwtbW9kZTogYm90aDtcclxuICAgICAgICAgIGFuaW1hdGlvbi1maWxsLW1vZGU6IGJvdGg7XHJcbn1cclxuXHJcbi5hbmltYXRlZC5pbmZpbml0ZSB7XHJcbiAgLXdlYmtpdC1hbmltYXRpb24taXRlcmF0aW9uLWNvdW50OiBpbmZpbml0ZTtcclxuICAgICAgICAgIGFuaW1hdGlvbi1pdGVyYXRpb24tY291bnQ6IGluZmluaXRlO1xyXG59XHJcblxyXG4uYW5pbWF0ZWQuaGluZ2Uge1xyXG4gIC13ZWJraXQtYW5pbWF0aW9uLWR1cmF0aW9uOiAycztcclxuICAgICAgICAgIGFuaW1hdGlvbi1kdXJhdGlvbjogMnM7XHJcbn1cclxuXHJcbkAtd2Via2l0LWtleWZyYW1lcyBib3VuY2Uge1xyXG4gIDAlLCAyMCUsIDUzJSwgODAlLCAxMDAlIHtcclxuICAgIC13ZWJraXQtdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjIxNSwgMC42MTAsIDAuMzU1LCAxLjAwMCk7XHJcbiAgICAgICAgICAgIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC4yMTUsIDAuNjEwLCAwLjM1NSwgMS4wMDApO1xyXG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsMCwwKTtcclxuICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLDAsMCk7XHJcbiAgfVxyXG5cclxuICA0MCUsIDQzJSB7XHJcbiAgICAtd2Via2l0LXRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC43NTUsIDAuMDUwLCAwLjg1NSwgMC4wNjApO1xyXG4gICAgICAgICAgICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuNzU1LCAwLjA1MCwgMC44NTUsIDAuMDYwKTtcclxuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtMzBweCwgMCk7XHJcbiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTMwcHgsIDApO1xyXG4gIH1cclxuXHJcbiAgNzAlIHtcclxuICAgIC13ZWJraXQtdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjc1NSwgMC4wNTAsIDAuODU1LCAwLjA2MCk7XHJcbiAgICAgICAgICAgIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC43NTUsIDAuMDUwLCAwLjg1NSwgMC4wNjApO1xyXG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0xNXB4LCAwKTtcclxuICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtMTVweCwgMCk7XHJcbiAgfVxyXG5cclxuICA5MCUge1xyXG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsLTRweCwwKTtcclxuICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLC00cHgsMCk7XHJcbiAgfVxyXG59XHJcblxyXG5Aa2V5ZnJhbWVzIGJvdW5jZSB7XHJcbiAgMCUsIDIwJSwgNTMlLCA4MCUsIDEwMCUge1xyXG4gICAgLXdlYmtpdC10cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuMjE1LCAwLjYxMCwgMC4zNTUsIDEuMDAwKTtcclxuICAgICAgICAgICAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjIxNSwgMC42MTAsIDAuMzU1LCAxLjAwMCk7XHJcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwwLDApO1xyXG4gICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsMCwwKTtcclxuICB9XHJcblxyXG4gIDQwJSwgNDMlIHtcclxuICAgIC13ZWJraXQtdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjc1NSwgMC4wNTAsIDAuODU1LCAwLjA2MCk7XHJcbiAgICAgICAgICAgIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC43NTUsIDAuMDUwLCAwLjg1NSwgMC4wNjApO1xyXG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0zMHB4LCAwKTtcclxuICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtMzBweCwgMCk7XHJcbiAgfVxyXG5cclxuICA3MCUge1xyXG4gICAgLXdlYmtpdC10cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuNzU1LCAwLjA1MCwgMC44NTUsIDAuMDYwKTtcclxuICAgICAgICAgICAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjc1NSwgMC4wNTAsIDAuODU1LCAwLjA2MCk7XHJcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTE1cHgsIDApO1xyXG4gICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0xNXB4LCAwKTtcclxuICB9XHJcblxyXG4gIDkwJSB7XHJcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwtNHB4LDApO1xyXG4gICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsLTRweCwwKTtcclxuICB9XHJcbn1cclxuXHJcbi5ib3VuY2Uge1xyXG4gIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IGJvdW5jZTtcclxuICAgICAgICAgIGFuaW1hdGlvbi1uYW1lOiBib3VuY2U7XHJcbiAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiBjZW50ZXIgYm90dG9tO1xyXG4gICAgICAtbXMtdHJhbnNmb3JtLW9yaWdpbjogY2VudGVyIGJvdHRvbTtcclxuICAgICAgICAgIHRyYW5zZm9ybS1vcmlnaW46IGNlbnRlciBib3R0b207XHJcbn1cclxuXHJcbkAtd2Via2l0LWtleWZyYW1lcyBmbGFzaCB7XHJcbiAgMCUsIDUwJSwgMTAwJSB7XHJcbiAgICBvcGFjaXR5OiAxO1xyXG4gIH1cclxuXHJcbiAgMjUlLCA3NSUge1xyXG4gICAgb3BhY2l0eTogMDtcclxuICB9XHJcbn1cclxuXHJcbkBrZXlmcmFtZXMgZmxhc2gge1xyXG4gIDAlLCA1MCUsIDEwMCUge1xyXG4gICAgb3BhY2l0eTogMTtcclxuICB9XHJcblxyXG4gIDI1JSwgNzUlIHtcclxuICAgIG9wYWNpdHk6IDA7XHJcbiAgfVxyXG59XHJcblxyXG4uZmxhc2gge1xyXG4gIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IGZsYXNoO1xyXG4gICAgICAgICAgYW5pbWF0aW9uLW5hbWU6IGZsYXNoO1xyXG59XHJcblxyXG4vKiBvcmlnaW5hbGx5IGF1dGhvcmVkIGJ5IE5pY2sgUGV0dGl0IC0gaHR0cHM6Ly9naXRodWIuY29tL25pY2twZXR0aXQvZ2xpZGUgKi9cclxuXHJcbkAtd2Via2l0LWtleWZyYW1lcyBwdWxzZSB7XHJcbiAgMCUge1xyXG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlM2QoMSwgMSwgMSk7XHJcbiAgICAgICAgICAgIHRyYW5zZm9ybTogc2NhbGUzZCgxLCAxLCAxKTtcclxuICB9XHJcblxyXG4gIDUwJSB7XHJcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUzZCgxLjA1LCAxLjA1LCAxLjA1KTtcclxuICAgICAgICAgICAgdHJhbnNmb3JtOiBzY2FsZTNkKDEuMDUsIDEuMDUsIDEuMDUpO1xyXG4gIH1cclxuXHJcbiAgMTAwJSB7XHJcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUzZCgxLCAxLCAxKTtcclxuICAgICAgICAgICAgdHJhbnNmb3JtOiBzY2FsZTNkKDEsIDEsIDEpO1xyXG4gIH1cclxufVxyXG5cclxuQGtleWZyYW1lcyBwdWxzZSB7XHJcbiAgMCUge1xyXG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlM2QoMSwgMSwgMSk7XHJcbiAgICAgICAgICAgIHRyYW5zZm9ybTogc2NhbGUzZCgxLCAxLCAxKTtcclxuICB9XHJcblxyXG4gIDUwJSB7XHJcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUzZCgxLjA1LCAxLjA1LCAxLjA1KTtcclxuICAgICAgICAgICAgdHJhbnNmb3JtOiBzY2FsZTNkKDEuMDUsIDEuMDUsIDEuMDUpO1xyXG4gIH1cclxuXHJcbiAgMTAwJSB7XHJcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUzZCgxLCAxLCAxKTtcclxuICAgICAgICAgICAgdHJhbnNmb3JtOiBzY2FsZTNkKDEsIDEsIDEpO1xyXG4gIH1cclxufVxyXG5cclxuLnB1bHNlIHtcclxuICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBwdWxzZTtcclxuICAgICAgICAgIGFuaW1hdGlvbi1uYW1lOiBwdWxzZTtcclxufVxyXG5cclxuQC13ZWJraXQta2V5ZnJhbWVzIHJ1YmJlckJhbmQge1xyXG4gIDAlIHtcclxuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNkKDEsIDEsIDEpO1xyXG4gICAgICAgICAgICB0cmFuc2Zvcm06IHNjYWxlM2QoMSwgMSwgMSk7XHJcbiAgfVxyXG5cclxuICAzMCUge1xyXG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlM2QoMS4yNSwgMC43NSwgMSk7XHJcbiAgICAgICAgICAgIHRyYW5zZm9ybTogc2NhbGUzZCgxLjI1LCAwLjc1LCAxKTtcclxuICB9XHJcblxyXG4gIDQwJSB7XHJcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUzZCgwLjc1LCAxLjI1LCAxKTtcclxuICAgICAgICAgICAgdHJhbnNmb3JtOiBzY2FsZTNkKDAuNzUsIDEuMjUsIDEpO1xyXG4gIH1cclxuXHJcbiAgNTAlIHtcclxuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNkKDEuMTUsIDAuODUsIDEpO1xyXG4gICAgICAgICAgICB0cmFuc2Zvcm06IHNjYWxlM2QoMS4xNSwgMC44NSwgMSk7XHJcbiAgfVxyXG5cclxuICA2NSUge1xyXG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlM2QoLjk1LCAxLjA1LCAxKTtcclxuICAgICAgICAgICAgdHJhbnNmb3JtOiBzY2FsZTNkKC45NSwgMS4wNSwgMSk7XHJcbiAgfVxyXG5cclxuICA3NSUge1xyXG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlM2QoMS4wNSwgLjk1LCAxKTtcclxuICAgICAgICAgICAgdHJhbnNmb3JtOiBzY2FsZTNkKDEuMDUsIC45NSwgMSk7XHJcbiAgfVxyXG5cclxuICAxMDAlIHtcclxuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNkKDEsIDEsIDEpO1xyXG4gICAgICAgICAgICB0cmFuc2Zvcm06IHNjYWxlM2QoMSwgMSwgMSk7XHJcbiAgfVxyXG59XHJcblxyXG5Aa2V5ZnJhbWVzIHJ1YmJlckJhbmQge1xyXG4gIDAlIHtcclxuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNkKDEsIDEsIDEpO1xyXG4gICAgICAgICAgICB0cmFuc2Zvcm06IHNjYWxlM2QoMSwgMSwgMSk7XHJcbiAgfVxyXG5cclxuICAzMCUge1xyXG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlM2QoMS4yNSwgMC43NSwgMSk7XHJcbiAgICAgICAgICAgIHRyYW5zZm9ybTogc2NhbGUzZCgxLjI1LCAwLjc1LCAxKTtcclxuICB9XHJcblxyXG4gIDQwJSB7XHJcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUzZCgwLjc1LCAxLjI1LCAxKTtcclxuICAgICAgICAgICAgdHJhbnNmb3JtOiBzY2FsZTNkKDAuNzUsIDEuMjUsIDEpO1xyXG4gIH1cclxuXHJcbiAgNTAlIHtcclxuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNkKDEuMTUsIDAuODUsIDEpO1xyXG4gICAgICAgICAgICB0cmFuc2Zvcm06IHNjYWxlM2QoMS4xNSwgMC44NSwgMSk7XHJcbiAgfVxyXG5cclxuICA2NSUge1xyXG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlM2QoLjk1LCAxLjA1LCAxKTtcclxuICAgICAgICAgICAgdHJhbnNmb3JtOiBzY2FsZTNkKC45NSwgMS4wNSwgMSk7XHJcbiAgfVxyXG5cclxuICA3NSUge1xyXG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlM2QoMS4wNSwgLjk1LCAxKTtcclxuICAgICAgICAgICAgdHJhbnNmb3JtOiBzY2FsZTNkKDEuMDUsIC45NSwgMSk7XHJcbiAgfVxyXG5cclxuICAxMDAlIHtcclxuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNkKDEsIDEsIDEpO1xyXG4gICAgICAgICAgICB0cmFuc2Zvcm06IHNjYWxlM2QoMSwgMSwgMSk7XHJcbiAgfVxyXG59XHJcblxyXG4ucnViYmVyQmFuZCB7XHJcbiAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogcnViYmVyQmFuZDtcclxuICAgICAgICAgIGFuaW1hdGlvbi1uYW1lOiBydWJiZXJCYW5kO1xyXG59XHJcblxyXG5ALXdlYmtpdC1rZXlmcmFtZXMgc2hha2Uge1xyXG4gIDAlLCAxMDAlIHtcclxuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcclxuICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcclxuICB9XHJcblxyXG4gIDEwJSwgMzAlLCA1MCUsIDcwJSwgOTAlIHtcclxuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMTBweCwgMCwgMCk7XHJcbiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTEwcHgsIDAsIDApO1xyXG4gIH1cclxuXHJcbiAgMjAlLCA0MCUsIDYwJSwgODAlIHtcclxuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgxMHB4LCAwLCAwKTtcclxuICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgxMHB4LCAwLCAwKTtcclxuICB9XHJcbn1cclxuXHJcbkBrZXlmcmFtZXMgc2hha2Uge1xyXG4gIDAlLCAxMDAlIHtcclxuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcclxuICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcclxuICB9XHJcblxyXG4gIDEwJSwgMzAlLCA1MCUsIDcwJSwgOTAlIHtcclxuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMTBweCwgMCwgMCk7XHJcbiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTEwcHgsIDAsIDApO1xyXG4gIH1cclxuXHJcbiAgMjAlLCA0MCUsIDYwJSwgODAlIHtcclxuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgxMHB4LCAwLCAwKTtcclxuICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgxMHB4LCAwLCAwKTtcclxuICB9XHJcbn1cclxuXHJcbi5zaGFrZSB7XHJcbiAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogc2hha2U7XHJcbiAgICAgICAgICBhbmltYXRpb24tbmFtZTogc2hha2U7XHJcbn1cclxuXHJcbkAtd2Via2l0LWtleWZyYW1lcyBzd2luZyB7XHJcbiAgMjAlIHtcclxuICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUzZCgwLCAwLCAxLCAxNWRlZyk7XHJcbiAgICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlM2QoMCwgMCwgMSwgMTVkZWcpO1xyXG4gIH1cclxuXHJcbiAgNDAlIHtcclxuICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUzZCgwLCAwLCAxLCAtMTBkZWcpO1xyXG4gICAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZTNkKDAsIDAsIDEsIC0xMGRlZyk7XHJcbiAgfVxyXG5cclxuICA2MCUge1xyXG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZTNkKDAsIDAsIDEsIDVkZWcpO1xyXG4gICAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZTNkKDAsIDAsIDEsIDVkZWcpO1xyXG4gIH1cclxuXHJcbiAgODAlIHtcclxuICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUzZCgwLCAwLCAxLCAtNWRlZyk7XHJcbiAgICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlM2QoMCwgMCwgMSwgLTVkZWcpO1xyXG4gIH1cclxuXHJcbiAgMTAwJSB7XHJcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlM2QoMCwgMCwgMSwgMGRlZyk7XHJcbiAgICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlM2QoMCwgMCwgMSwgMGRlZyk7XHJcbiAgfVxyXG59XHJcblxyXG5Aa2V5ZnJhbWVzIHN3aW5nIHtcclxuICAyMCUge1xyXG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZTNkKDAsIDAsIDEsIDE1ZGVnKTtcclxuICAgICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUzZCgwLCAwLCAxLCAxNWRlZyk7XHJcbiAgfVxyXG5cclxuICA0MCUge1xyXG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZTNkKDAsIDAsIDEsIC0xMGRlZyk7XHJcbiAgICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlM2QoMCwgMCwgMSwgLTEwZGVnKTtcclxuICB9XHJcblxyXG4gIDYwJSB7XHJcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlM2QoMCwgMCwgMSwgNWRlZyk7XHJcbiAgICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlM2QoMCwgMCwgMSwgNWRlZyk7XHJcbiAgfVxyXG5cclxuICA4MCUge1xyXG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZTNkKDAsIDAsIDEsIC01ZGVnKTtcclxuICAgICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUzZCgwLCAwLCAxLCAtNWRlZyk7XHJcbiAgfVxyXG5cclxuICAxMDAlIHtcclxuICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUzZCgwLCAwLCAxLCAwZGVnKTtcclxuICAgICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUzZCgwLCAwLCAxLCAwZGVnKTtcclxuICB9XHJcbn1cclxuXHJcbi5zd2luZyB7XHJcbiAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiB0b3AgY2VudGVyO1xyXG4gICAgICAtbXMtdHJhbnNmb3JtLW9yaWdpbjogdG9wIGNlbnRlcjtcclxuICAgICAgICAgIHRyYW5zZm9ybS1vcmlnaW46IHRvcCBjZW50ZXI7XHJcbiAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogc3dpbmc7XHJcbiAgICAgICAgICBhbmltYXRpb24tbmFtZTogc3dpbmc7XHJcbn1cclxuXHJcbkAtd2Via2l0LWtleWZyYW1lcyB0YWRhIHtcclxuICAwJSB7XHJcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUzZCgxLCAxLCAxKTtcclxuICAgICAgICAgICAgdHJhbnNmb3JtOiBzY2FsZTNkKDEsIDEsIDEpO1xyXG4gIH1cclxuXHJcbiAgMTAlLCAyMCUge1xyXG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlM2QoLjksIC45LCAuOSkgcm90YXRlM2QoMCwgMCwgMSwgLTNkZWcpO1xyXG4gICAgICAgICAgICB0cmFuc2Zvcm06IHNjYWxlM2QoLjksIC45LCAuOSkgcm90YXRlM2QoMCwgMCwgMSwgLTNkZWcpO1xyXG4gIH1cclxuXHJcbiAgMzAlLCA1MCUsIDcwJSwgOTAlIHtcclxuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNkKDEuMSwgMS4xLCAxLjEpIHJvdGF0ZTNkKDAsIDAsIDEsIDNkZWcpO1xyXG4gICAgICAgICAgICB0cmFuc2Zvcm06IHNjYWxlM2QoMS4xLCAxLjEsIDEuMSkgcm90YXRlM2QoMCwgMCwgMSwgM2RlZyk7XHJcbiAgfVxyXG5cclxuICA0MCUsIDYwJSwgODAlIHtcclxuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNkKDEuMSwgMS4xLCAxLjEpIHJvdGF0ZTNkKDAsIDAsIDEsIC0zZGVnKTtcclxuICAgICAgICAgICAgdHJhbnNmb3JtOiBzY2FsZTNkKDEuMSwgMS4xLCAxLjEpIHJvdGF0ZTNkKDAsIDAsIDEsIC0zZGVnKTtcclxuICB9XHJcblxyXG4gIDEwMCUge1xyXG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlM2QoMSwgMSwgMSk7XHJcbiAgICAgICAgICAgIHRyYW5zZm9ybTogc2NhbGUzZCgxLCAxLCAxKTtcclxuICB9XHJcbn1cclxuXHJcbkBrZXlmcmFtZXMgdGFkYSB7XHJcbiAgMCUge1xyXG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlM2QoMSwgMSwgMSk7XHJcbiAgICAgICAgICAgIHRyYW5zZm9ybTogc2NhbGUzZCgxLCAxLCAxKTtcclxuICB9XHJcblxyXG4gIDEwJSwgMjAlIHtcclxuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNkKC45LCAuOSwgLjkpIHJvdGF0ZTNkKDAsIDAsIDEsIC0zZGVnKTtcclxuICAgICAgICAgICAgdHJhbnNmb3JtOiBzY2FsZTNkKC45LCAuOSwgLjkpIHJvdGF0ZTNkKDAsIDAsIDEsIC0zZGVnKTtcclxuICB9XHJcblxyXG4gIDMwJSwgNTAlLCA3MCUsIDkwJSB7XHJcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUzZCgxLjEsIDEuMSwgMS4xKSByb3RhdGUzZCgwLCAwLCAxLCAzZGVnKTtcclxuICAgICAgICAgICAgdHJhbnNmb3JtOiBzY2FsZTNkKDEuMSwgMS4xLCAxLjEpIHJvdGF0ZTNkKDAsIDAsIDEsIDNkZWcpO1xyXG4gIH1cclxuXHJcbiAgNDAlLCA2MCUsIDgwJSB7XHJcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUzZCgxLjEsIDEuMSwgMS4xKSByb3RhdGUzZCgwLCAwLCAxLCAtM2RlZyk7XHJcbiAgICAgICAgICAgIHRyYW5zZm9ybTogc2NhbGUzZCgxLjEsIDEuMSwgMS4xKSByb3RhdGUzZCgwLCAwLCAxLCAtM2RlZyk7XHJcbiAgfVxyXG5cclxuICAxMDAlIHtcclxuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNkKDEsIDEsIDEpO1xyXG4gICAgICAgICAgICB0cmFuc2Zvcm06IHNjYWxlM2QoMSwgMSwgMSk7XHJcbiAgfVxyXG59XHJcblxyXG4udGFkYSB7XHJcbiAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogdGFkYTtcclxuICAgICAgICAgIGFuaW1hdGlvbi1uYW1lOiB0YWRhO1xyXG59XHJcblxyXG4vKiBvcmlnaW5hbGx5IGF1dGhvcmVkIGJ5IE5pY2sgUGV0dGl0IC0gaHR0cHM6Ly9naXRodWIuY29tL25pY2twZXR0aXQvZ2xpZGUgKi9cclxuXHJcbkAtd2Via2l0LWtleWZyYW1lcyB3b2JibGUge1xyXG4gIDAlIHtcclxuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBub25lO1xyXG4gICAgICAgICAgICB0cmFuc2Zvcm06IG5vbmU7XHJcbiAgfVxyXG5cclxuICAxNSUge1xyXG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0yNSUsIDAsIDApIHJvdGF0ZTNkKDAsIDAsIDEsIC01ZGVnKTtcclxuICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMjUlLCAwLCAwKSByb3RhdGUzZCgwLCAwLCAxLCAtNWRlZyk7XHJcbiAgfVxyXG5cclxuICAzMCUge1xyXG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDIwJSwgMCwgMCkgcm90YXRlM2QoMCwgMCwgMSwgM2RlZyk7XHJcbiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMjAlLCAwLCAwKSByb3RhdGUzZCgwLCAwLCAxLCAzZGVnKTtcclxuICB9XHJcblxyXG4gIDQ1JSB7XHJcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTE1JSwgMCwgMCkgcm90YXRlM2QoMCwgMCwgMSwgLTNkZWcpO1xyXG4gICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0xNSUsIDAsIDApIHJvdGF0ZTNkKDAsIDAsIDEsIC0zZGVnKTtcclxuICB9XHJcblxyXG4gIDYwJSB7XHJcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMTAlLCAwLCAwKSByb3RhdGUzZCgwLCAwLCAxLCAyZGVnKTtcclxuICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgxMCUsIDAsIDApIHJvdGF0ZTNkKDAsIDAsIDEsIDJkZWcpO1xyXG4gIH1cclxuXHJcbiAgNzUlIHtcclxuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtNSUsIDAsIDApIHJvdGF0ZTNkKDAsIDAsIDEsIC0xZGVnKTtcclxuICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtNSUsIDAsIDApIHJvdGF0ZTNkKDAsIDAsIDEsIC0xZGVnKTtcclxuICB9XHJcblxyXG4gIDEwMCUge1xyXG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IG5vbmU7XHJcbiAgICAgICAgICAgIHRyYW5zZm9ybTogbm9uZTtcclxuICB9XHJcbn1cclxuXHJcbkBrZXlmcmFtZXMgd29iYmxlIHtcclxuICAwJSB7XHJcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogbm9uZTtcclxuICAgICAgICAgICAgdHJhbnNmb3JtOiBub25lO1xyXG4gIH1cclxuXHJcbiAgMTUlIHtcclxuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMjUlLCAwLCAwKSByb3RhdGUzZCgwLCAwLCAxLCAtNWRlZyk7XHJcbiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTI1JSwgMCwgMCkgcm90YXRlM2QoMCwgMCwgMSwgLTVkZWcpO1xyXG4gIH1cclxuXHJcbiAgMzAlIHtcclxuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgyMCUsIDAsIDApIHJvdGF0ZTNkKDAsIDAsIDEsIDNkZWcpO1xyXG4gICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDIwJSwgMCwgMCkgcm90YXRlM2QoMCwgMCwgMSwgM2RlZyk7XHJcbiAgfVxyXG5cclxuICA0NSUge1xyXG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0xNSUsIDAsIDApIHJvdGF0ZTNkKDAsIDAsIDEsIC0zZGVnKTtcclxuICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMTUlLCAwLCAwKSByb3RhdGUzZCgwLCAwLCAxLCAtM2RlZyk7XHJcbiAgfVxyXG5cclxuICA2MCUge1xyXG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDEwJSwgMCwgMCkgcm90YXRlM2QoMCwgMCwgMSwgMmRlZyk7XHJcbiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMTAlLCAwLCAwKSByb3RhdGUzZCgwLCAwLCAxLCAyZGVnKTtcclxuICB9XHJcblxyXG4gIDc1JSB7XHJcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTUlLCAwLCAwKSByb3RhdGUzZCgwLCAwLCAxLCAtMWRlZyk7XHJcbiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTUlLCAwLCAwKSByb3RhdGUzZCgwLCAwLCAxLCAtMWRlZyk7XHJcbiAgfVxyXG5cclxuICAxMDAlIHtcclxuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBub25lO1xyXG4gICAgICAgICAgICB0cmFuc2Zvcm06IG5vbmU7XHJcbiAgfVxyXG59XHJcblxyXG4ud29iYmxlIHtcclxuICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiB3b2JibGU7XHJcbiAgICAgICAgICBhbmltYXRpb24tbmFtZTogd29iYmxlO1xyXG59XHJcblxyXG5ALXdlYmtpdC1rZXlmcmFtZXMgYm91bmNlSW4ge1xyXG4gIDAlLCAyMCUsIDQwJSwgNjAlLCA4MCUsIDEwMCUge1xyXG4gICAgLXdlYmtpdC10cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuMjE1LCAwLjYxMCwgMC4zNTUsIDEuMDAwKTtcclxuICAgICAgICAgICAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjIxNSwgMC42MTAsIDAuMzU1LCAxLjAwMCk7XHJcbiAgfVxyXG5cclxuICAwJSB7XHJcbiAgICBvcGFjaXR5OiAwO1xyXG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlM2QoLjMsIC4zLCAuMyk7XHJcbiAgICAgICAgICAgIHRyYW5zZm9ybTogc2NhbGUzZCguMywgLjMsIC4zKTtcclxuICB9XHJcblxyXG4gIDIwJSB7XHJcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUzZCgxLjEsIDEuMSwgMS4xKTtcclxuICAgICAgICAgICAgdHJhbnNmb3JtOiBzY2FsZTNkKDEuMSwgMS4xLCAxLjEpO1xyXG4gIH1cclxuXHJcbiAgNDAlIHtcclxuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNkKC45LCAuOSwgLjkpO1xyXG4gICAgICAgICAgICB0cmFuc2Zvcm06IHNjYWxlM2QoLjksIC45LCAuOSk7XHJcbiAgfVxyXG5cclxuICA2MCUge1xyXG4gICAgb3BhY2l0eTogMTtcclxuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNkKDEuMDMsIDEuMDMsIDEuMDMpO1xyXG4gICAgICAgICAgICB0cmFuc2Zvcm06IHNjYWxlM2QoMS4wMywgMS4wMywgMS4wMyk7XHJcbiAgfVxyXG5cclxuICA4MCUge1xyXG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlM2QoLjk3LCAuOTcsIC45Nyk7XHJcbiAgICAgICAgICAgIHRyYW5zZm9ybTogc2NhbGUzZCguOTcsIC45NywgLjk3KTtcclxuICB9XHJcblxyXG4gIDEwMCUge1xyXG4gICAgb3BhY2l0eTogMTtcclxuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNkKDEsIDEsIDEpO1xyXG4gICAgICAgICAgICB0cmFuc2Zvcm06IHNjYWxlM2QoMSwgMSwgMSk7XHJcbiAgfVxyXG59XHJcblxyXG5Aa2V5ZnJhbWVzIGJvdW5jZUluIHtcclxuICAwJSwgMjAlLCA0MCUsIDYwJSwgODAlLCAxMDAlIHtcclxuICAgIC13ZWJraXQtdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjIxNSwgMC42MTAsIDAuMzU1LCAxLjAwMCk7XHJcbiAgICAgICAgICAgIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC4yMTUsIDAuNjEwLCAwLjM1NSwgMS4wMDApO1xyXG4gIH1cclxuXHJcbiAgMCUge1xyXG4gICAgb3BhY2l0eTogMDtcclxuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNkKC4zLCAuMywgLjMpO1xyXG4gICAgICAgICAgICB0cmFuc2Zvcm06IHNjYWxlM2QoLjMsIC4zLCAuMyk7XHJcbiAgfVxyXG5cclxuICAyMCUge1xyXG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlM2QoMS4xLCAxLjEsIDEuMSk7XHJcbiAgICAgICAgICAgIHRyYW5zZm9ybTogc2NhbGUzZCgxLjEsIDEuMSwgMS4xKTtcclxuICB9XHJcblxyXG4gIDQwJSB7XHJcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUzZCguOSwgLjksIC45KTtcclxuICAgICAgICAgICAgdHJhbnNmb3JtOiBzY2FsZTNkKC45LCAuOSwgLjkpO1xyXG4gIH1cclxuXHJcbiAgNjAlIHtcclxuICAgIG9wYWNpdHk6IDE7XHJcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUzZCgxLjAzLCAxLjAzLCAxLjAzKTtcclxuICAgICAgICAgICAgdHJhbnNmb3JtOiBzY2FsZTNkKDEuMDMsIDEuMDMsIDEuMDMpO1xyXG4gIH1cclxuXHJcbiAgODAlIHtcclxuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNkKC45NywgLjk3LCAuOTcpO1xyXG4gICAgICAgICAgICB0cmFuc2Zvcm06IHNjYWxlM2QoLjk3LCAuOTcsIC45Nyk7XHJcbiAgfVxyXG5cclxuICAxMDAlIHtcclxuICAgIG9wYWNpdHk6IDE7XHJcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUzZCgxLCAxLCAxKTtcclxuICAgICAgICAgICAgdHJhbnNmb3JtOiBzY2FsZTNkKDEsIDEsIDEpO1xyXG4gIH1cclxufVxyXG5cclxuLmJvdW5jZUluIHtcclxuICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBib3VuY2VJbjtcclxuICAgICAgICAgIGFuaW1hdGlvbi1uYW1lOiBib3VuY2VJbjtcclxuICAtd2Via2l0LWFuaW1hdGlvbi1kdXJhdGlvbjogLjc1cztcclxuICAgICAgICAgIGFuaW1hdGlvbi1kdXJhdGlvbjogLjc1cztcclxufVxyXG5cclxuQC13ZWJraXQta2V5ZnJhbWVzIGJvdW5jZUluRG93biB7XHJcbiAgMCUsIDYwJSwgNzUlLCA5MCUsIDEwMCUge1xyXG4gICAgLXdlYmtpdC10cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuMjE1LCAwLjYxMCwgMC4zNTUsIDEuMDAwKTtcclxuICAgICAgICAgICAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjIxNSwgMC42MTAsIDAuMzU1LCAxLjAwMCk7XHJcbiAgfVxyXG5cclxuICAwJSB7XHJcbiAgICBvcGFjaXR5OiAwO1xyXG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0zMDAwcHgsIDApO1xyXG4gICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0zMDAwcHgsIDApO1xyXG4gIH1cclxuXHJcbiAgNjAlIHtcclxuICAgIG9wYWNpdHk6IDE7XHJcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMjVweCwgMCk7XHJcbiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMjVweCwgMCk7XHJcbiAgfVxyXG5cclxuICA3NSUge1xyXG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0xMHB4LCAwKTtcclxuICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtMTBweCwgMCk7XHJcbiAgfVxyXG5cclxuICA5MCUge1xyXG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDVweCwgMCk7XHJcbiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgNXB4LCAwKTtcclxuICB9XHJcblxyXG4gIDEwMCUge1xyXG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IG5vbmU7XHJcbiAgICAgICAgICAgIHRyYW5zZm9ybTogbm9uZTtcclxuICB9XHJcbn1cclxuXHJcbkBrZXlmcmFtZXMgYm91bmNlSW5Eb3duIHtcclxuICAwJSwgNjAlLCA3NSUsIDkwJSwgMTAwJSB7XHJcbiAgICAtd2Via2l0LXRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC4yMTUsIDAuNjEwLCAwLjM1NSwgMS4wMDApO1xyXG4gICAgICAgICAgICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuMjE1LCAwLjYxMCwgMC4zNTUsIDEuMDAwKTtcclxuICB9XHJcblxyXG4gIDAlIHtcclxuICAgIG9wYWNpdHk6IDA7XHJcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTMwMDBweCwgMCk7XHJcbiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTMwMDBweCwgMCk7XHJcbiAgfVxyXG5cclxuICA2MCUge1xyXG4gICAgb3BhY2l0eTogMTtcclxuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAyNXB4LCAwKTtcclxuICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAyNXB4LCAwKTtcclxuICB9XHJcblxyXG4gIDc1JSB7XHJcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTEwcHgsIDApO1xyXG4gICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0xMHB4LCAwKTtcclxuICB9XHJcblxyXG4gIDkwJSB7XHJcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgNXB4LCAwKTtcclxuICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCA1cHgsIDApO1xyXG4gIH1cclxuXHJcbiAgMTAwJSB7XHJcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogbm9uZTtcclxuICAgICAgICAgICAgdHJhbnNmb3JtOiBub25lO1xyXG4gIH1cclxufVxyXG5cclxuLmJvdW5jZUluRG93biB7XHJcbiAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogYm91bmNlSW5Eb3duO1xyXG4gICAgICAgICAgYW5pbWF0aW9uLW5hbWU6IGJvdW5jZUluRG93bjtcclxufVxyXG5cclxuQC13ZWJraXQta2V5ZnJhbWVzIGJvdW5jZUluTGVmdCB7XHJcbiAgMCUsIDYwJSwgNzUlLCA5MCUsIDEwMCUge1xyXG4gICAgLXdlYmtpdC10cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuMjE1LCAwLjYxMCwgMC4zNTUsIDEuMDAwKTtcclxuICAgICAgICAgICAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjIxNSwgMC42MTAsIDAuMzU1LCAxLjAwMCk7XHJcbiAgfVxyXG5cclxuICAwJSB7XHJcbiAgICBvcGFjaXR5OiAwO1xyXG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0zMDAwcHgsIDAsIDApO1xyXG4gICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0zMDAwcHgsIDAsIDApO1xyXG4gIH1cclxuXHJcbiAgNjAlIHtcclxuICAgIG9wYWNpdHk6IDE7XHJcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMjVweCwgMCwgMCk7XHJcbiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMjVweCwgMCwgMCk7XHJcbiAgfVxyXG5cclxuICA3NSUge1xyXG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0xMHB4LCAwLCAwKTtcclxuICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMTBweCwgMCwgMCk7XHJcbiAgfVxyXG5cclxuICA5MCUge1xyXG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDVweCwgMCwgMCk7XHJcbiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoNXB4LCAwLCAwKTtcclxuICB9XHJcblxyXG4gIDEwMCUge1xyXG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IG5vbmU7XHJcbiAgICAgICAgICAgIHRyYW5zZm9ybTogbm9uZTtcclxuICB9XHJcbn1cclxuXHJcbkBrZXlmcmFtZXMgYm91bmNlSW5MZWZ0IHtcclxuICAwJSwgNjAlLCA3NSUsIDkwJSwgMTAwJSB7XHJcbiAgICAtd2Via2l0LXRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC4yMTUsIDAuNjEwLCAwLjM1NSwgMS4wMDApO1xyXG4gICAgICAgICAgICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuMjE1LCAwLjYxMCwgMC4zNTUsIDEuMDAwKTtcclxuICB9XHJcblxyXG4gIDAlIHtcclxuICAgIG9wYWNpdHk6IDA7XHJcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTMwMDBweCwgMCwgMCk7XHJcbiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTMwMDBweCwgMCwgMCk7XHJcbiAgfVxyXG5cclxuICA2MCUge1xyXG4gICAgb3BhY2l0eTogMTtcclxuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgyNXB4LCAwLCAwKTtcclxuICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgyNXB4LCAwLCAwKTtcclxuICB9XHJcblxyXG4gIDc1JSB7XHJcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTEwcHgsIDAsIDApO1xyXG4gICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0xMHB4LCAwLCAwKTtcclxuICB9XHJcblxyXG4gIDkwJSB7XHJcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoNXB4LCAwLCAwKTtcclxuICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCg1cHgsIDAsIDApO1xyXG4gIH1cclxuXHJcbiAgMTAwJSB7XHJcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogbm9uZTtcclxuICAgICAgICAgICAgdHJhbnNmb3JtOiBub25lO1xyXG4gIH1cclxufVxyXG5cclxuLmJvdW5jZUluTGVmdCB7XHJcbiAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogYm91bmNlSW5MZWZ0O1xyXG4gICAgICAgICAgYW5pbWF0aW9uLW5hbWU6IGJvdW5jZUluTGVmdDtcclxufVxyXG5cclxuQC13ZWJraXQta2V5ZnJhbWVzIGJvdW5jZUluUmlnaHQge1xyXG4gIDAlLCA2MCUsIDc1JSwgOTAlLCAxMDAlIHtcclxuICAgIC13ZWJraXQtdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjIxNSwgMC42MTAsIDAuMzU1LCAxLjAwMCk7XHJcbiAgICAgICAgICAgIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC4yMTUsIDAuNjEwLCAwLjM1NSwgMS4wMDApO1xyXG4gIH1cclxuXHJcbiAgMCUge1xyXG4gICAgb3BhY2l0eTogMDtcclxuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgzMDAwcHgsIDAsIDApO1xyXG4gICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDMwMDBweCwgMCwgMCk7XHJcbiAgfVxyXG5cclxuICA2MCUge1xyXG4gICAgb3BhY2l0eTogMTtcclxuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMjVweCwgMCwgMCk7XHJcbiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTI1cHgsIDAsIDApO1xyXG4gIH1cclxuXHJcbiAgNzUlIHtcclxuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgxMHB4LCAwLCAwKTtcclxuICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgxMHB4LCAwLCAwKTtcclxuICB9XHJcblxyXG4gIDkwJSB7XHJcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTVweCwgMCwgMCk7XHJcbiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTVweCwgMCwgMCk7XHJcbiAgfVxyXG5cclxuICAxMDAlIHtcclxuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBub25lO1xyXG4gICAgICAgICAgICB0cmFuc2Zvcm06IG5vbmU7XHJcbiAgfVxyXG59XHJcblxyXG5Aa2V5ZnJhbWVzIGJvdW5jZUluUmlnaHQge1xyXG4gIDAlLCA2MCUsIDc1JSwgOTAlLCAxMDAlIHtcclxuICAgIC13ZWJraXQtdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjIxNSwgMC42MTAsIDAuMzU1LCAxLjAwMCk7XHJcbiAgICAgICAgICAgIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC4yMTUsIDAuNjEwLCAwLjM1NSwgMS4wMDApO1xyXG4gIH1cclxuXHJcbiAgMCUge1xyXG4gICAgb3BhY2l0eTogMDtcclxuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgzMDAwcHgsIDAsIDApO1xyXG4gICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDMwMDBweCwgMCwgMCk7XHJcbiAgfVxyXG5cclxuICA2MCUge1xyXG4gICAgb3BhY2l0eTogMTtcclxuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMjVweCwgMCwgMCk7XHJcbiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTI1cHgsIDAsIDApO1xyXG4gIH1cclxuXHJcbiAgNzUlIHtcclxuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgxMHB4LCAwLCAwKTtcclxuICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgxMHB4LCAwLCAwKTtcclxuICB9XHJcblxyXG4gIDkwJSB7XHJcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTVweCwgMCwgMCk7XHJcbiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTVweCwgMCwgMCk7XHJcbiAgfVxyXG5cclxuICAxMDAlIHtcclxuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBub25lO1xyXG4gICAgICAgICAgICB0cmFuc2Zvcm06IG5vbmU7XHJcbiAgfVxyXG59XHJcblxyXG4uYm91bmNlSW5SaWdodCB7XHJcbiAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogYm91bmNlSW5SaWdodDtcclxuICAgICAgICAgIGFuaW1hdGlvbi1uYW1lOiBib3VuY2VJblJpZ2h0O1xyXG59XHJcblxyXG5ALXdlYmtpdC1rZXlmcmFtZXMgYm91bmNlSW5VcCB7XHJcbiAgMCUsIDYwJSwgNzUlLCA5MCUsIDEwMCUge1xyXG4gICAgLXdlYmtpdC10cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuMjE1LCAwLjYxMCwgMC4zNTUsIDEuMDAwKTtcclxuICAgICAgICAgICAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjIxNSwgMC42MTAsIDAuMzU1LCAxLjAwMCk7XHJcbiAgfVxyXG5cclxuICAwJSB7XHJcbiAgICBvcGFjaXR5OiAwO1xyXG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDMwMDBweCwgMCk7XHJcbiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMzAwMHB4LCAwKTtcclxuICB9XHJcblxyXG4gIDYwJSB7XHJcbiAgICBvcGFjaXR5OiAxO1xyXG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0yMHB4LCAwKTtcclxuICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtMjBweCwgMCk7XHJcbiAgfVxyXG5cclxuICA3NSUge1xyXG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDEwcHgsIDApO1xyXG4gICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDEwcHgsIDApO1xyXG4gIH1cclxuXHJcbiAgOTAlIHtcclxuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtNXB4LCAwKTtcclxuICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtNXB4LCAwKTtcclxuICB9XHJcblxyXG4gIDEwMCUge1xyXG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xyXG4gICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xyXG4gIH1cclxufVxyXG5cclxuQGtleWZyYW1lcyBib3VuY2VJblVwIHtcclxuICAwJSwgNjAlLCA3NSUsIDkwJSwgMTAwJSB7XHJcbiAgICAtd2Via2l0LXRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC4yMTUsIDAuNjEwLCAwLjM1NSwgMS4wMDApO1xyXG4gICAgICAgICAgICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuMjE1LCAwLjYxMCwgMC4zNTUsIDEuMDAwKTtcclxuICB9XHJcblxyXG4gIDAlIHtcclxuICAgIG9wYWNpdHk6IDA7XHJcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMzAwMHB4LCAwKTtcclxuICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAzMDAwcHgsIDApO1xyXG4gIH1cclxuXHJcbiAgNjAlIHtcclxuICAgIG9wYWNpdHk6IDE7XHJcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTIwcHgsIDApO1xyXG4gICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0yMHB4LCAwKTtcclxuICB9XHJcblxyXG4gIDc1JSB7XHJcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMTBweCwgMCk7XHJcbiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMTBweCwgMCk7XHJcbiAgfVxyXG5cclxuICA5MCUge1xyXG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC01cHgsIDApO1xyXG4gICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC01cHgsIDApO1xyXG4gIH1cclxuXHJcbiAgMTAwJSB7XHJcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XHJcbiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XHJcbiAgfVxyXG59XHJcblxyXG4uYm91bmNlSW5VcCB7XHJcbiAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogYm91bmNlSW5VcDtcclxuICAgICAgICAgIGFuaW1hdGlvbi1uYW1lOiBib3VuY2VJblVwO1xyXG59XHJcblxyXG5ALXdlYmtpdC1rZXlmcmFtZXMgYm91bmNlT3V0IHtcclxuICAyMCUge1xyXG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlM2QoLjksIC45LCAuOSk7XHJcbiAgICAgICAgICAgIHRyYW5zZm9ybTogc2NhbGUzZCguOSwgLjksIC45KTtcclxuICB9XHJcblxyXG4gIDUwJSwgNTUlIHtcclxuICAgIG9wYWNpdHk6IDE7XHJcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUzZCgxLjEsIDEuMSwgMS4xKTtcclxuICAgICAgICAgICAgdHJhbnNmb3JtOiBzY2FsZTNkKDEuMSwgMS4xLCAxLjEpO1xyXG4gIH1cclxuXHJcbiAgMTAwJSB7XHJcbiAgICBvcGFjaXR5OiAwO1xyXG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlM2QoLjMsIC4zLCAuMyk7XHJcbiAgICAgICAgICAgIHRyYW5zZm9ybTogc2NhbGUzZCguMywgLjMsIC4zKTtcclxuICB9XHJcbn1cclxuXHJcbkBrZXlmcmFtZXMgYm91bmNlT3V0IHtcclxuICAyMCUge1xyXG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlM2QoLjksIC45LCAuOSk7XHJcbiAgICAgICAgICAgIHRyYW5zZm9ybTogc2NhbGUzZCguOSwgLjksIC45KTtcclxuICB9XHJcblxyXG4gIDUwJSwgNTUlIHtcclxuICAgIG9wYWNpdHk6IDE7XHJcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUzZCgxLjEsIDEuMSwgMS4xKTtcclxuICAgICAgICAgICAgdHJhbnNmb3JtOiBzY2FsZTNkKDEuMSwgMS4xLCAxLjEpO1xyXG4gIH1cclxuXHJcbiAgMTAwJSB7XHJcbiAgICBvcGFjaXR5OiAwO1xyXG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlM2QoLjMsIC4zLCAuMyk7XHJcbiAgICAgICAgICAgIHRyYW5zZm9ybTogc2NhbGUzZCguMywgLjMsIC4zKTtcclxuICB9XHJcbn1cclxuXHJcbi5ib3VuY2VPdXQge1xyXG4gIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IGJvdW5jZU91dDtcclxuICAgICAgICAgIGFuaW1hdGlvbi1uYW1lOiBib3VuY2VPdXQ7XHJcbiAgLXdlYmtpdC1hbmltYXRpb24tZHVyYXRpb246IC43NXM7XHJcbiAgICAgICAgICBhbmltYXRpb24tZHVyYXRpb246IC43NXM7XHJcbn1cclxuXHJcbkAtd2Via2l0LWtleWZyYW1lcyBib3VuY2VPdXREb3duIHtcclxuICAyMCUge1xyXG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDEwcHgsIDApO1xyXG4gICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDEwcHgsIDApO1xyXG4gIH1cclxuXHJcbiAgNDAlLCA0NSUge1xyXG4gICAgb3BhY2l0eTogMTtcclxuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtMjBweCwgMCk7XHJcbiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTIwcHgsIDApO1xyXG4gIH1cclxuXHJcbiAgMTAwJSB7XHJcbiAgICBvcGFjaXR5OiAwO1xyXG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDIwMDBweCwgMCk7XHJcbiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMjAwMHB4LCAwKTtcclxuICB9XHJcbn1cclxuXHJcbkBrZXlmcmFtZXMgYm91bmNlT3V0RG93biB7XHJcbiAgMjAlIHtcclxuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAxMHB4LCAwKTtcclxuICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAxMHB4LCAwKTtcclxuICB9XHJcblxyXG4gIDQwJSwgNDUlIHtcclxuICAgIG9wYWNpdHk6IDE7XHJcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTIwcHgsIDApO1xyXG4gICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0yMHB4LCAwKTtcclxuICB9XHJcblxyXG4gIDEwMCUge1xyXG4gICAgb3BhY2l0eTogMDtcclxuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAyMDAwcHgsIDApO1xyXG4gICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDIwMDBweCwgMCk7XHJcbiAgfVxyXG59XHJcblxyXG4uYm91bmNlT3V0RG93biB7XHJcbiAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogYm91bmNlT3V0RG93bjtcclxuICAgICAgICAgIGFuaW1hdGlvbi1uYW1lOiBib3VuY2VPdXREb3duO1xyXG59XHJcblxyXG5ALXdlYmtpdC1rZXlmcmFtZXMgYm91bmNlT3V0TGVmdCB7XHJcbiAgMjAlIHtcclxuICAgIG9wYWNpdHk6IDE7XHJcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMjBweCwgMCwgMCk7XHJcbiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMjBweCwgMCwgMCk7XHJcbiAgfVxyXG5cclxuICAxMDAlIHtcclxuICAgIG9wYWNpdHk6IDA7XHJcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTIwMDBweCwgMCwgMCk7XHJcbiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTIwMDBweCwgMCwgMCk7XHJcbiAgfVxyXG59XHJcblxyXG5Aa2V5ZnJhbWVzIGJvdW5jZU91dExlZnQge1xyXG4gIDIwJSB7XHJcbiAgICBvcGFjaXR5OiAxO1xyXG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDIwcHgsIDAsIDApO1xyXG4gICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDIwcHgsIDAsIDApO1xyXG4gIH1cclxuXHJcbiAgMTAwJSB7XHJcbiAgICBvcGFjaXR5OiAwO1xyXG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0yMDAwcHgsIDAsIDApO1xyXG4gICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0yMDAwcHgsIDAsIDApO1xyXG4gIH1cclxufVxyXG5cclxuLmJvdW5jZU91dExlZnQge1xyXG4gIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IGJvdW5jZU91dExlZnQ7XHJcbiAgICAgICAgICBhbmltYXRpb24tbmFtZTogYm91bmNlT3V0TGVmdDtcclxufVxyXG5cclxuQC13ZWJraXQta2V5ZnJhbWVzIGJvdW5jZU91dFJpZ2h0IHtcclxuICAyMCUge1xyXG4gICAgb3BhY2l0eTogMTtcclxuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMjBweCwgMCwgMCk7XHJcbiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTIwcHgsIDAsIDApO1xyXG4gIH1cclxuXHJcbiAgMTAwJSB7XHJcbiAgICBvcGFjaXR5OiAwO1xyXG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDIwMDBweCwgMCwgMCk7XHJcbiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMjAwMHB4LCAwLCAwKTtcclxuICB9XHJcbn1cclxuXHJcbkBrZXlmcmFtZXMgYm91bmNlT3V0UmlnaHQge1xyXG4gIDIwJSB7XHJcbiAgICBvcGFjaXR5OiAxO1xyXG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0yMHB4LCAwLCAwKTtcclxuICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMjBweCwgMCwgMCk7XHJcbiAgfVxyXG5cclxuICAxMDAlIHtcclxuICAgIG9wYWNpdHk6IDA7XHJcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMjAwMHB4LCAwLCAwKTtcclxuICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgyMDAwcHgsIDAsIDApO1xyXG4gIH1cclxufVxyXG5cclxuLmJvdW5jZU91dFJpZ2h0IHtcclxuICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBib3VuY2VPdXRSaWdodDtcclxuICAgICAgICAgIGFuaW1hdGlvbi1uYW1lOiBib3VuY2VPdXRSaWdodDtcclxufVxyXG5cclxuQC13ZWJraXQta2V5ZnJhbWVzIGJvdW5jZU91dFVwIHtcclxuICAyMCUge1xyXG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0xMHB4LCAwKTtcclxuICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtMTBweCwgMCk7XHJcbiAgfVxyXG5cclxuICA0MCUsIDQ1JSB7XHJcbiAgICBvcGFjaXR5OiAxO1xyXG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDIwcHgsIDApO1xyXG4gICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDIwcHgsIDApO1xyXG4gIH1cclxuXHJcbiAgMTAwJSB7XHJcbiAgICBvcGFjaXR5OiAwO1xyXG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0yMDAwcHgsIDApO1xyXG4gICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0yMDAwcHgsIDApO1xyXG4gIH1cclxufVxyXG5cclxuQGtleWZyYW1lcyBib3VuY2VPdXRVcCB7XHJcbiAgMjAlIHtcclxuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtMTBweCwgMCk7XHJcbiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTEwcHgsIDApO1xyXG4gIH1cclxuXHJcbiAgNDAlLCA0NSUge1xyXG4gICAgb3BhY2l0eTogMTtcclxuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAyMHB4LCAwKTtcclxuICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAyMHB4LCAwKTtcclxuICB9XHJcblxyXG4gIDEwMCUge1xyXG4gICAgb3BhY2l0eTogMDtcclxuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtMjAwMHB4LCAwKTtcclxuICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtMjAwMHB4LCAwKTtcclxuICB9XHJcbn1cclxuXHJcbi5ib3VuY2VPdXRVcCB7XHJcbiAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogYm91bmNlT3V0VXA7XHJcbiAgICAgICAgICBhbmltYXRpb24tbmFtZTogYm91bmNlT3V0VXA7XHJcbn1cclxuXHJcbkAtd2Via2l0LWtleWZyYW1lcyBmYWRlSW4ge1xyXG4gIDAlIHtvcGFjaXR5OiAwO31cclxuICAxMDAlIHtvcGFjaXR5OiAxO31cclxufVxyXG5cclxuQGtleWZyYW1lcyBmYWRlSW4ge1xyXG4gIDAlIHtvcGFjaXR5OiAwO31cclxuICAxMDAlIHtvcGFjaXR5OiAxO31cclxufVxyXG5cclxuLmZhZGVJbiB7XHJcbiAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogZmFkZUluO1xyXG4gICAgICAgICAgYW5pbWF0aW9uLW5hbWU6IGZhZGVJbjtcclxufVxyXG5cclxuQC13ZWJraXQta2V5ZnJhbWVzIGZhZGVJbkRvd24ge1xyXG4gIDAlIHtcclxuICAgIG9wYWNpdHk6IDA7XHJcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTEwMCUsIDApO1xyXG4gICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0xMDAlLCAwKTtcclxuICB9XHJcblxyXG4gIDEwMCUge1xyXG4gICAgb3BhY2l0eTogMTtcclxuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBub25lO1xyXG4gICAgICAgICAgICB0cmFuc2Zvcm06IG5vbmU7XHJcbiAgfVxyXG59XHJcblxyXG5Aa2V5ZnJhbWVzIGZhZGVJbkRvd24ge1xyXG4gIDAlIHtcclxuICAgIG9wYWNpdHk6IDA7XHJcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTEwMCUsIDApO1xyXG4gICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0xMDAlLCAwKTtcclxuICB9XHJcblxyXG4gIDEwMCUge1xyXG4gICAgb3BhY2l0eTogMTtcclxuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBub25lO1xyXG4gICAgICAgICAgICB0cmFuc2Zvcm06IG5vbmU7XHJcbiAgfVxyXG59XHJcblxyXG4uZmFkZUluRG93biB7XHJcbiAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogZmFkZUluRG93bjtcclxuICAgICAgICAgIGFuaW1hdGlvbi1uYW1lOiBmYWRlSW5Eb3duO1xyXG59XHJcblxyXG5ALXdlYmtpdC1rZXlmcmFtZXMgZmFkZUluRG93bkJpZyB7XHJcbiAgMCUge1xyXG4gICAgb3BhY2l0eTogMDtcclxuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtMjAwMHB4LCAwKTtcclxuICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtMjAwMHB4LCAwKTtcclxuICB9XHJcblxyXG4gIDEwMCUge1xyXG4gICAgb3BhY2l0eTogMTtcclxuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBub25lO1xyXG4gICAgICAgICAgICB0cmFuc2Zvcm06IG5vbmU7XHJcbiAgfVxyXG59XHJcblxyXG5Aa2V5ZnJhbWVzIGZhZGVJbkRvd25CaWcge1xyXG4gIDAlIHtcclxuICAgIG9wYWNpdHk6IDA7XHJcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTIwMDBweCwgMCk7XHJcbiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTIwMDBweCwgMCk7XHJcbiAgfVxyXG5cclxuICAxMDAlIHtcclxuICAgIG9wYWNpdHk6IDE7XHJcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogbm9uZTtcclxuICAgICAgICAgICAgdHJhbnNmb3JtOiBub25lO1xyXG4gIH1cclxufVxyXG5cclxuLmZhZGVJbkRvd25CaWcge1xyXG4gIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IGZhZGVJbkRvd25CaWc7XHJcbiAgICAgICAgICBhbmltYXRpb24tbmFtZTogZmFkZUluRG93bkJpZztcclxufVxyXG5cclxuQC13ZWJraXQta2V5ZnJhbWVzIGZhZGVJbkxlZnQge1xyXG4gIDAlIHtcclxuICAgIG9wYWNpdHk6IDA7XHJcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTEwMCUsIDAsIDApO1xyXG4gICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0xMDAlLCAwLCAwKTtcclxuICB9XHJcblxyXG4gIDEwMCUge1xyXG4gICAgb3BhY2l0eTogMTtcclxuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBub25lO1xyXG4gICAgICAgICAgICB0cmFuc2Zvcm06IG5vbmU7XHJcbiAgfVxyXG59XHJcblxyXG5Aa2V5ZnJhbWVzIGZhZGVJbkxlZnQge1xyXG4gIDAlIHtcclxuICAgIG9wYWNpdHk6IDA7XHJcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTEwMCUsIDAsIDApO1xyXG4gICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0xMDAlLCAwLCAwKTtcclxuICB9XHJcblxyXG4gIDEwMCUge1xyXG4gICAgb3BhY2l0eTogMTtcclxuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBub25lO1xyXG4gICAgICAgICAgICB0cmFuc2Zvcm06IG5vbmU7XHJcbiAgfVxyXG59XHJcblxyXG4uZmFkZUluTGVmdCB7XHJcbiAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogZmFkZUluTGVmdDtcclxuICAgICAgICAgIGFuaW1hdGlvbi1uYW1lOiBmYWRlSW5MZWZ0O1xyXG59XHJcblxyXG5ALXdlYmtpdC1rZXlmcmFtZXMgZmFkZUluTGVmdEJpZyB7XHJcbiAgMCUge1xyXG4gICAgb3BhY2l0eTogMDtcclxuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMjAwMHB4LCAwLCAwKTtcclxuICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMjAwMHB4LCAwLCAwKTtcclxuICB9XHJcblxyXG4gIDEwMCUge1xyXG4gICAgb3BhY2l0eTogMTtcclxuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBub25lO1xyXG4gICAgICAgICAgICB0cmFuc2Zvcm06IG5vbmU7XHJcbiAgfVxyXG59XHJcblxyXG5Aa2V5ZnJhbWVzIGZhZGVJbkxlZnRCaWcge1xyXG4gIDAlIHtcclxuICAgIG9wYWNpdHk6IDA7XHJcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTIwMDBweCwgMCwgMCk7XHJcbiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTIwMDBweCwgMCwgMCk7XHJcbiAgfVxyXG5cclxuICAxMDAlIHtcclxuICAgIG9wYWNpdHk6IDE7XHJcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogbm9uZTtcclxuICAgICAgICAgICAgdHJhbnNmb3JtOiBub25lO1xyXG4gIH1cclxufVxyXG5cclxuLmZhZGVJbkxlZnRCaWcge1xyXG4gIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IGZhZGVJbkxlZnRCaWc7XHJcbiAgICAgICAgICBhbmltYXRpb24tbmFtZTogZmFkZUluTGVmdEJpZztcclxufVxyXG5cclxuQC13ZWJraXQta2V5ZnJhbWVzIGZhZGVJblJpZ2h0IHtcclxuICAwJSB7XHJcbiAgICBvcGFjaXR5OiAwO1xyXG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDEwMCUsIDAsIDApO1xyXG4gICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDEwMCUsIDAsIDApO1xyXG4gIH1cclxuXHJcbiAgMTAwJSB7XHJcbiAgICBvcGFjaXR5OiAxO1xyXG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IG5vbmU7XHJcbiAgICAgICAgICAgIHRyYW5zZm9ybTogbm9uZTtcclxuICB9XHJcbn1cclxuXHJcbkBrZXlmcmFtZXMgZmFkZUluUmlnaHQge1xyXG4gIDAlIHtcclxuICAgIG9wYWNpdHk6IDA7XHJcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMTAwJSwgMCwgMCk7XHJcbiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMTAwJSwgMCwgMCk7XHJcbiAgfVxyXG5cclxuICAxMDAlIHtcclxuICAgIG9wYWNpdHk6IDE7XHJcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogbm9uZTtcclxuICAgICAgICAgICAgdHJhbnNmb3JtOiBub25lO1xyXG4gIH1cclxufVxyXG5cclxuLmZhZGVJblJpZ2h0IHtcclxuICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBmYWRlSW5SaWdodDtcclxuICAgICAgICAgIGFuaW1hdGlvbi1uYW1lOiBmYWRlSW5SaWdodDtcclxufVxyXG5cclxuQC13ZWJraXQta2V5ZnJhbWVzIGZhZGVJblJpZ2h0QmlnIHtcclxuICAwJSB7XHJcbiAgICBvcGFjaXR5OiAwO1xyXG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDIwMDBweCwgMCwgMCk7XHJcbiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMjAwMHB4LCAwLCAwKTtcclxuICB9XHJcblxyXG4gIDEwMCUge1xyXG4gICAgb3BhY2l0eTogMTtcclxuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBub25lO1xyXG4gICAgICAgICAgICB0cmFuc2Zvcm06IG5vbmU7XHJcbiAgfVxyXG59XHJcblxyXG5Aa2V5ZnJhbWVzIGZhZGVJblJpZ2h0QmlnIHtcclxuICAwJSB7XHJcbiAgICBvcGFjaXR5OiAwO1xyXG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDIwMDBweCwgMCwgMCk7XHJcbiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMjAwMHB4LCAwLCAwKTtcclxuICB9XHJcblxyXG4gIDEwMCUge1xyXG4gICAgb3BhY2l0eTogMTtcclxuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBub25lO1xyXG4gICAgICAgICAgICB0cmFuc2Zvcm06IG5vbmU7XHJcbiAgfVxyXG59XHJcblxyXG4uZmFkZUluUmlnaHRCaWcge1xyXG4gIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IGZhZGVJblJpZ2h0QmlnO1xyXG4gICAgICAgICAgYW5pbWF0aW9uLW5hbWU6IGZhZGVJblJpZ2h0QmlnO1xyXG59XHJcblxyXG5ALXdlYmtpdC1rZXlmcmFtZXMgZmFkZUluVXAge1xyXG4gIDAlIHtcclxuICAgIG9wYWNpdHk6IDA7XHJcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgNDAlLCAwKTtcclxuICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCA0MCUsIDApO1xyXG4gIH1cclxuXHJcbiAgMTAwJSB7XHJcbiAgICBvcGFjaXR5OiAxO1xyXG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IG5vbmU7XHJcbiAgICAgICAgICAgIHRyYW5zZm9ybTogbm9uZTtcclxuICB9XHJcbn1cclxuXHJcbkBrZXlmcmFtZXMgZmFkZUluVXAge1xyXG4gIDAlIHtcclxuICAgIG9wYWNpdHk6IDA7XHJcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgNDAlLCAwKTtcclxuICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCA0MCUsIDApO1xyXG4gIH1cclxuXHJcbiAgMTAwJSB7XHJcbiAgICBvcGFjaXR5OiAxO1xyXG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IG5vbmU7XHJcbiAgICAgICAgICAgIHRyYW5zZm9ybTogbm9uZTtcclxuICB9XHJcbn1cclxuXHJcbi5mYWRlSW5VcCB7XHJcbiAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogZmFkZUluVXA7XHJcbiAgICAgICAgICBhbmltYXRpb24tbmFtZTogZmFkZUluVXA7XHJcbn1cclxuXHJcbkAtd2Via2l0LWtleWZyYW1lcyBmYWRlSW5VcEJpZyB7XHJcbiAgMCUge1xyXG4gICAgb3BhY2l0eTogMDtcclxuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAyMDAwcHgsIDApO1xyXG4gICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDIwMDBweCwgMCk7XHJcbiAgfVxyXG5cclxuICAxMDAlIHtcclxuICAgIG9wYWNpdHk6IDE7XHJcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogbm9uZTtcclxuICAgICAgICAgICAgdHJhbnNmb3JtOiBub25lO1xyXG4gIH1cclxufVxyXG5cclxuQGtleWZyYW1lcyBmYWRlSW5VcEJpZyB7XHJcbiAgMCUge1xyXG4gICAgb3BhY2l0eTogMDtcclxuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAyMDAwcHgsIDApO1xyXG4gICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDIwMDBweCwgMCk7XHJcbiAgfVxyXG5cclxuICAxMDAlIHtcclxuICAgIG9wYWNpdHk6IDE7XHJcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogbm9uZTtcclxuICAgICAgICAgICAgdHJhbnNmb3JtOiBub25lO1xyXG4gIH1cclxufVxyXG5cclxuLmZhZGVJblVwQmlnIHtcclxuICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBmYWRlSW5VcEJpZztcclxuICAgICAgICAgIGFuaW1hdGlvbi1uYW1lOiBmYWRlSW5VcEJpZztcclxufVxyXG5cclxuQC13ZWJraXQta2V5ZnJhbWVzIGZhZGVPdXQge1xyXG4gIDAlIHtvcGFjaXR5OiAxO31cclxuICAxMDAlIHtvcGFjaXR5OiAwO31cclxufVxyXG5cclxuQGtleWZyYW1lcyBmYWRlT3V0IHtcclxuICAwJSB7b3BhY2l0eTogMTt9XHJcbiAgMTAwJSB7b3BhY2l0eTogMDt9XHJcbn1cclxuXHJcbi5mYWRlT3V0IHtcclxuICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBmYWRlT3V0O1xyXG4gICAgICAgICAgYW5pbWF0aW9uLW5hbWU6IGZhZGVPdXQ7XHJcbn1cclxuXHJcbkAtd2Via2l0LWtleWZyYW1lcyBmYWRlT3V0RG93biB7XHJcbiAgMCUge1xyXG4gICAgb3BhY2l0eTogMTtcclxuICB9XHJcblxyXG4gIDEwMCUge1xyXG4gICAgb3BhY2l0eTogMDtcclxuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAxMDAlLCAwKTtcclxuICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAxMDAlLCAwKTtcclxuICB9XHJcbn1cclxuXHJcbkBrZXlmcmFtZXMgZmFkZU91dERvd24ge1xyXG4gIDAlIHtcclxuICAgIG9wYWNpdHk6IDE7XHJcbiAgfVxyXG5cclxuICAxMDAlIHtcclxuICAgIG9wYWNpdHk6IDA7XHJcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMTAwJSwgMCk7XHJcbiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMTAwJSwgMCk7XHJcbiAgfVxyXG59XHJcblxyXG4uZmFkZU91dERvd24ge1xyXG4gIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IGZhZGVPdXREb3duO1xyXG4gICAgICAgICAgYW5pbWF0aW9uLW5hbWU6IGZhZGVPdXREb3duO1xyXG59XHJcblxyXG5ALXdlYmtpdC1rZXlmcmFtZXMgZmFkZU91dERvd25CaWcge1xyXG4gIDAlIHtcclxuICAgIG9wYWNpdHk6IDE7XHJcbiAgfVxyXG5cclxuICAxMDAlIHtcclxuICAgIG9wYWNpdHk6IDA7XHJcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMjAwMHB4LCAwKTtcclxuICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAyMDAwcHgsIDApO1xyXG4gIH1cclxufVxyXG5cclxuQGtleWZyYW1lcyBmYWRlT3V0RG93bkJpZyB7XHJcbiAgMCUge1xyXG4gICAgb3BhY2l0eTogMTtcclxuICB9XHJcblxyXG4gIDEwMCUge1xyXG4gICAgb3BhY2l0eTogMDtcclxuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAyMDAwcHgsIDApO1xyXG4gICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDIwMDBweCwgMCk7XHJcbiAgfVxyXG59XHJcblxyXG4uZmFkZU91dERvd25CaWcge1xyXG4gIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IGZhZGVPdXREb3duQmlnO1xyXG4gICAgICAgICAgYW5pbWF0aW9uLW5hbWU6IGZhZGVPdXREb3duQmlnO1xyXG59XHJcblxyXG5ALXdlYmtpdC1rZXlmcmFtZXMgZmFkZU91dExlZnQge1xyXG4gIDAlIHtcclxuICAgIG9wYWNpdHk6IDE7XHJcbiAgfVxyXG5cclxuICAxMDAlIHtcclxuICAgIG9wYWNpdHk6IDA7XHJcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTEwMCUsIDAsIDApO1xyXG4gICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0xMDAlLCAwLCAwKTtcclxuICB9XHJcbn1cclxuXHJcbkBrZXlmcmFtZXMgZmFkZU91dExlZnQge1xyXG4gIDAlIHtcclxuICAgIG9wYWNpdHk6IDE7XHJcbiAgfVxyXG5cclxuICAxMDAlIHtcclxuICAgIG9wYWNpdHk6IDA7XHJcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTEwMCUsIDAsIDApO1xyXG4gICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0xMDAlLCAwLCAwKTtcclxuICB9XHJcbn1cclxuXHJcbi5mYWRlT3V0TGVmdCB7XHJcbiAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogZmFkZU91dExlZnQ7XHJcbiAgICAgICAgICBhbmltYXRpb24tbmFtZTogZmFkZU91dExlZnQ7XHJcbn1cclxuXHJcbkAtd2Via2l0LWtleWZyYW1lcyBmYWRlT3V0TGVmdEJpZyB7XHJcbiAgMCUge1xyXG4gICAgb3BhY2l0eTogMTtcclxuICB9XHJcblxyXG4gIDEwMCUge1xyXG4gICAgb3BhY2l0eTogMDtcclxuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMjAwMHB4LCAwLCAwKTtcclxuICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMjAwMHB4LCAwLCAwKTtcclxuICB9XHJcbn1cclxuXHJcbkBrZXlmcmFtZXMgZmFkZU91dExlZnRCaWcge1xyXG4gIDAlIHtcclxuICAgIG9wYWNpdHk6IDE7XHJcbiAgfVxyXG5cclxuICAxMDAlIHtcclxuICAgIG9wYWNpdHk6IDA7XHJcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTIwMDBweCwgMCwgMCk7XHJcbiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTIwMDBweCwgMCwgMCk7XHJcbiAgfVxyXG59XHJcblxyXG4uZmFkZU91dExlZnRCaWcge1xyXG4gIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IGZhZGVPdXRMZWZ0QmlnO1xyXG4gICAgICAgICAgYW5pbWF0aW9uLW5hbWU6IGZhZGVPdXRMZWZ0QmlnO1xyXG59XHJcblxyXG5ALXdlYmtpdC1rZXlmcmFtZXMgZmFkZU91dFJpZ2h0IHtcclxuICAwJSB7XHJcbiAgICBvcGFjaXR5OiAxO1xyXG4gIH1cclxuXHJcbiAgMTAwJSB7XHJcbiAgICBvcGFjaXR5OiAwO1xyXG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDEwMCUsIDAsIDApO1xyXG4gICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDEwMCUsIDAsIDApO1xyXG4gIH1cclxufVxyXG5cclxuQGtleWZyYW1lcyBmYWRlT3V0UmlnaHQge1xyXG4gIDAlIHtcclxuICAgIG9wYWNpdHk6IDE7XHJcbiAgfVxyXG5cclxuICAxMDAlIHtcclxuICAgIG9wYWNpdHk6IDA7XHJcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMTAwJSwgMCwgMCk7XHJcbiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMTAwJSwgMCwgMCk7XHJcbiAgfVxyXG59XHJcblxyXG4uZmFkZU91dFJpZ2h0IHtcclxuICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBmYWRlT3V0UmlnaHQ7XHJcbiAgICAgICAgICBhbmltYXRpb24tbmFtZTogZmFkZU91dFJpZ2h0O1xyXG59XHJcblxyXG5ALXdlYmtpdC1rZXlmcmFtZXMgZmFkZU91dFJpZ2h0QmlnIHtcclxuICAwJSB7XHJcbiAgICBvcGFjaXR5OiAxO1xyXG4gIH1cclxuXHJcbiAgMTAwJSB7XHJcbiAgICBvcGFjaXR5OiAwO1xyXG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDIwMDBweCwgMCwgMCk7XHJcbiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMjAwMHB4LCAwLCAwKTtcclxuICB9XHJcbn1cclxuXHJcbkBrZXlmcmFtZXMgZmFkZU91dFJpZ2h0QmlnIHtcclxuICAwJSB7XHJcbiAgICBvcGFjaXR5OiAxO1xyXG4gIH1cclxuXHJcbiAgMTAwJSB7XHJcbiAgICBvcGFjaXR5OiAwO1xyXG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDIwMDBweCwgMCwgMCk7XHJcbiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMjAwMHB4LCAwLCAwKTtcclxuICB9XHJcbn1cclxuXHJcbi5mYWRlT3V0UmlnaHRCaWcge1xyXG4gIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IGZhZGVPdXRSaWdodEJpZztcclxuICAgICAgICAgIGFuaW1hdGlvbi1uYW1lOiBmYWRlT3V0UmlnaHRCaWc7XHJcbn1cclxuXHJcbkAtd2Via2l0LWtleWZyYW1lcyBmYWRlT3V0VXAge1xyXG4gIDAlIHtcclxuICAgIG9wYWNpdHk6IDE7XHJcbiAgfVxyXG5cclxuICAxMDAlIHtcclxuICAgIG9wYWNpdHk6IDA7XHJcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTEwMCUsIDApO1xyXG4gICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0xMDAlLCAwKTtcclxuICB9XHJcbn1cclxuXHJcbkBrZXlmcmFtZXMgZmFkZU91dFVwIHtcclxuICAwJSB7XHJcbiAgICBvcGFjaXR5OiAxO1xyXG4gIH1cclxuXHJcbiAgMTAwJSB7XHJcbiAgICBvcGFjaXR5OiAwO1xyXG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0xMDAlLCAwKTtcclxuICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtMTAwJSwgMCk7XHJcbiAgfVxyXG59XHJcblxyXG4uZmFkZU91dFVwIHtcclxuICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBmYWRlT3V0VXA7XHJcbiAgICAgICAgICBhbmltYXRpb24tbmFtZTogZmFkZU91dFVwO1xyXG59XHJcblxyXG5ALXdlYmtpdC1rZXlmcmFtZXMgZmFkZU91dFVwQmlnIHtcclxuICAwJSB7XHJcbiAgICBvcGFjaXR5OiAxO1xyXG4gIH1cclxuXHJcbiAgMTAwJSB7XHJcbiAgICBvcGFjaXR5OiAwO1xyXG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0yMDAwcHgsIDApO1xyXG4gICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0yMDAwcHgsIDApO1xyXG4gIH1cclxufVxyXG5cclxuQGtleWZyYW1lcyBmYWRlT3V0VXBCaWcge1xyXG4gIDAlIHtcclxuICAgIG9wYWNpdHk6IDE7XHJcbiAgfVxyXG5cclxuICAxMDAlIHtcclxuICAgIG9wYWNpdHk6IDA7XHJcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTIwMDBweCwgMCk7XHJcbiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTIwMDBweCwgMCk7XHJcbiAgfVxyXG59XHJcblxyXG4uZmFkZU91dFVwQmlnIHtcclxuICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBmYWRlT3V0VXBCaWc7XHJcbiAgICAgICAgICBhbmltYXRpb24tbmFtZTogZmFkZU91dFVwQmlnO1xyXG59XHJcblxyXG5ALXdlYmtpdC1rZXlmcmFtZXMgZmxpcCB7XHJcbiAgMCUge1xyXG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSByb3RhdGUzZCgwLCAxLCAwLCAtMzYwZGVnKTtcclxuICAgICAgICAgICAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCkgcm90YXRlM2QoMCwgMSwgMCwgLTM2MGRlZyk7XHJcbiAgICAtd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2Utb3V0O1xyXG4gICAgICAgICAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLW91dDtcclxuICB9XHJcblxyXG4gIDQwJSB7XHJcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpIHRyYW5zbGF0ZTNkKDAsIDAsIDE1MHB4KSByb3RhdGUzZCgwLCAxLCAwLCAtMTkwZGVnKTtcclxuICAgICAgICAgICAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCkgdHJhbnNsYXRlM2QoMCwgMCwgMTUwcHgpIHJvdGF0ZTNkKDAsIDEsIDAsIC0xOTBkZWcpO1xyXG4gICAgLXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLW91dDtcclxuICAgICAgICAgICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1vdXQ7XHJcbiAgfVxyXG5cclxuICA1MCUge1xyXG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSB0cmFuc2xhdGUzZCgwLCAwLCAxNTBweCkgcm90YXRlM2QoMCwgMSwgMCwgLTE3MGRlZyk7XHJcbiAgICAgICAgICAgIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpIHRyYW5zbGF0ZTNkKDAsIDAsIDE1MHB4KSByb3RhdGUzZCgwLCAxLCAwLCAtMTcwZGVnKTtcclxuICAgIC13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1pbjtcclxuICAgICAgICAgICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1pbjtcclxuICB9XHJcblxyXG4gIDgwJSB7XHJcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpIHNjYWxlM2QoLjk1LCAuOTUsIC45NSk7XHJcbiAgICAgICAgICAgIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpIHNjYWxlM2QoLjk1LCAuOTUsIC45NSk7XHJcbiAgICAtd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2UtaW47XHJcbiAgICAgICAgICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2UtaW47XHJcbiAgfVxyXG5cclxuICAxMDAlIHtcclxuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCk7XHJcbiAgICAgICAgICAgIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpO1xyXG4gICAgLXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLWluO1xyXG4gICAgICAgICAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLWluO1xyXG4gIH1cclxufVxyXG5cclxuQGtleWZyYW1lcyBmbGlwIHtcclxuICAwJSB7XHJcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpIHJvdGF0ZTNkKDAsIDEsIDAsIC0zNjBkZWcpO1xyXG4gICAgICAgICAgICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSByb3RhdGUzZCgwLCAxLCAwLCAtMzYwZGVnKTtcclxuICAgIC13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1vdXQ7XHJcbiAgICAgICAgICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2Utb3V0O1xyXG4gIH1cclxuXHJcbiAgNDAlIHtcclxuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCkgdHJhbnNsYXRlM2QoMCwgMCwgMTUwcHgpIHJvdGF0ZTNkKDAsIDEsIDAsIC0xOTBkZWcpO1xyXG4gICAgICAgICAgICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSB0cmFuc2xhdGUzZCgwLCAwLCAxNTBweCkgcm90YXRlM2QoMCwgMSwgMCwgLTE5MGRlZyk7XHJcbiAgICAtd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2Utb3V0O1xyXG4gICAgICAgICAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLW91dDtcclxuICB9XHJcblxyXG4gIDUwJSB7XHJcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpIHRyYW5zbGF0ZTNkKDAsIDAsIDE1MHB4KSByb3RhdGUzZCgwLCAxLCAwLCAtMTcwZGVnKTtcclxuICAgICAgICAgICAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCkgdHJhbnNsYXRlM2QoMCwgMCwgMTUwcHgpIHJvdGF0ZTNkKDAsIDEsIDAsIC0xNzBkZWcpO1xyXG4gICAgLXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLWluO1xyXG4gICAgICAgICAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLWluO1xyXG4gIH1cclxuXHJcbiAgODAlIHtcclxuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCkgc2NhbGUzZCguOTUsIC45NSwgLjk1KTtcclxuICAgICAgICAgICAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCkgc2NhbGUzZCguOTUsIC45NSwgLjk1KTtcclxuICAgIC13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1pbjtcclxuICAgICAgICAgICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1pbjtcclxuICB9XHJcblxyXG4gIDEwMCUge1xyXG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KTtcclxuICAgICAgICAgICAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCk7XHJcbiAgICAtd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2UtaW47XHJcbiAgICAgICAgICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2UtaW47XHJcbiAgfVxyXG59XHJcblxyXG4uYW5pbWF0ZWQuZmxpcCB7XHJcbiAgLXdlYmtpdC1iYWNrZmFjZS12aXNpYmlsaXR5OiB2aXNpYmxlO1xyXG4gICAgICAgICAgYmFja2ZhY2UtdmlzaWJpbGl0eTogdmlzaWJsZTtcclxuICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBmbGlwO1xyXG4gICAgICAgICAgYW5pbWF0aW9uLW5hbWU6IGZsaXA7XHJcbn1cclxuXHJcbkAtd2Via2l0LWtleWZyYW1lcyBmbGlwSW5YIHtcclxuICAwJSB7XHJcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpIHJvdGF0ZTNkKDEsIDAsIDAsIDkwZGVnKTtcclxuICAgICAgICAgICAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCkgcm90YXRlM2QoMSwgMCwgMCwgOTBkZWcpO1xyXG4gICAgLXdlYmtpdC10cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1pbjtcclxuICAgICAgICAgICAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2UtaW47XHJcbiAgICBvcGFjaXR5OiAwO1xyXG4gIH1cclxuXHJcbiAgNDAlIHtcclxuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCkgcm90YXRlM2QoMSwgMCwgMCwgLTIwZGVnKTtcclxuICAgICAgICAgICAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCkgcm90YXRlM2QoMSwgMCwgMCwgLTIwZGVnKTtcclxuICAgIC13ZWJraXQtdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2UtaW47XHJcbiAgICAgICAgICAgIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLWluO1xyXG4gIH1cclxuXHJcbiAgNjAlIHtcclxuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCkgcm90YXRlM2QoMSwgMCwgMCwgMTBkZWcpO1xyXG4gICAgICAgICAgICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSByb3RhdGUzZCgxLCAwLCAwLCAxMGRlZyk7XHJcbiAgICBvcGFjaXR5OiAxO1xyXG4gIH1cclxuXHJcbiAgODAlIHtcclxuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCkgcm90YXRlM2QoMSwgMCwgMCwgLTVkZWcpO1xyXG4gICAgICAgICAgICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSByb3RhdGUzZCgxLCAwLCAwLCAtNWRlZyk7XHJcbiAgfVxyXG5cclxuICAxMDAlIHtcclxuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCk7XHJcbiAgICAgICAgICAgIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpO1xyXG4gIH1cclxufVxyXG5cclxuQGtleWZyYW1lcyBmbGlwSW5YIHtcclxuICAwJSB7XHJcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpIHJvdGF0ZTNkKDEsIDAsIDAsIDkwZGVnKTtcclxuICAgICAgICAgICAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCkgcm90YXRlM2QoMSwgMCwgMCwgOTBkZWcpO1xyXG4gICAgLXdlYmtpdC10cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1pbjtcclxuICAgICAgICAgICAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2UtaW47XHJcbiAgICBvcGFjaXR5OiAwO1xyXG4gIH1cclxuXHJcbiAgNDAlIHtcclxuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCkgcm90YXRlM2QoMSwgMCwgMCwgLTIwZGVnKTtcclxuICAgICAgICAgICAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCkgcm90YXRlM2QoMSwgMCwgMCwgLTIwZGVnKTtcclxuICAgIC13ZWJraXQtdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2UtaW47XHJcbiAgICAgICAgICAgIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLWluO1xyXG4gIH1cclxuXHJcbiAgNjAlIHtcclxuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCkgcm90YXRlM2QoMSwgMCwgMCwgMTBkZWcpO1xyXG4gICAgICAgICAgICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSByb3RhdGUzZCgxLCAwLCAwLCAxMGRlZyk7XHJcbiAgICBvcGFjaXR5OiAxO1xyXG4gIH1cclxuXHJcbiAgODAlIHtcclxuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCkgcm90YXRlM2QoMSwgMCwgMCwgLTVkZWcpO1xyXG4gICAgICAgICAgICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSByb3RhdGUzZCgxLCAwLCAwLCAtNWRlZyk7XHJcbiAgfVxyXG5cclxuICAxMDAlIHtcclxuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCk7XHJcbiAgICAgICAgICAgIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpO1xyXG4gIH1cclxufVxyXG5cclxuLmZsaXBJblgge1xyXG4gIC13ZWJraXQtYmFja2ZhY2UtdmlzaWJpbGl0eTogdmlzaWJsZSAhaW1wb3J0YW50O1xyXG4gICAgICAgICAgYmFja2ZhY2UtdmlzaWJpbGl0eTogdmlzaWJsZSAhaW1wb3J0YW50O1xyXG4gIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IGZsaXBJblg7XHJcbiAgICAgICAgICBhbmltYXRpb24tbmFtZTogZmxpcEluWDtcclxufVxyXG5cclxuQC13ZWJraXQta2V5ZnJhbWVzIGZsaXBJblkge1xyXG4gIDAlIHtcclxuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCkgcm90YXRlM2QoMCwgMSwgMCwgOTBkZWcpO1xyXG4gICAgICAgICAgICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSByb3RhdGUzZCgwLCAxLCAwLCA5MGRlZyk7XHJcbiAgICAtd2Via2l0LXRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLWluO1xyXG4gICAgICAgICAgICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1pbjtcclxuICAgIG9wYWNpdHk6IDA7XHJcbiAgfVxyXG5cclxuICA0MCUge1xyXG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSByb3RhdGUzZCgwLCAxLCAwLCAtMjBkZWcpO1xyXG4gICAgICAgICAgICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSByb3RhdGUzZCgwLCAxLCAwLCAtMjBkZWcpO1xyXG4gICAgLXdlYmtpdC10cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1pbjtcclxuICAgICAgICAgICAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2UtaW47XHJcbiAgfVxyXG5cclxuICA2MCUge1xyXG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSByb3RhdGUzZCgwLCAxLCAwLCAxMGRlZyk7XHJcbiAgICAgICAgICAgIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpIHJvdGF0ZTNkKDAsIDEsIDAsIDEwZGVnKTtcclxuICAgIG9wYWNpdHk6IDE7XHJcbiAgfVxyXG5cclxuICA4MCUge1xyXG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSByb3RhdGUzZCgwLCAxLCAwLCAtNWRlZyk7XHJcbiAgICAgICAgICAgIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpIHJvdGF0ZTNkKDAsIDEsIDAsIC01ZGVnKTtcclxuICB9XHJcblxyXG4gIDEwMCUge1xyXG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KTtcclxuICAgICAgICAgICAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCk7XHJcbiAgfVxyXG59XHJcblxyXG5Aa2V5ZnJhbWVzIGZsaXBJblkge1xyXG4gIDAlIHtcclxuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCkgcm90YXRlM2QoMCwgMSwgMCwgOTBkZWcpO1xyXG4gICAgICAgICAgICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSByb3RhdGUzZCgwLCAxLCAwLCA5MGRlZyk7XHJcbiAgICAtd2Via2l0LXRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLWluO1xyXG4gICAgICAgICAgICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1pbjtcclxuICAgIG9wYWNpdHk6IDA7XHJcbiAgfVxyXG5cclxuICA0MCUge1xyXG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSByb3RhdGUzZCgwLCAxLCAwLCAtMjBkZWcpO1xyXG4gICAgICAgICAgICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSByb3RhdGUzZCgwLCAxLCAwLCAtMjBkZWcpO1xyXG4gICAgLXdlYmtpdC10cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1pbjtcclxuICAgICAgICAgICAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2UtaW47XHJcbiAgfVxyXG5cclxuICA2MCUge1xyXG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSByb3RhdGUzZCgwLCAxLCAwLCAxMGRlZyk7XHJcbiAgICAgICAgICAgIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpIHJvdGF0ZTNkKDAsIDEsIDAsIDEwZGVnKTtcclxuICAgIG9wYWNpdHk6IDE7XHJcbiAgfVxyXG5cclxuICA4MCUge1xyXG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSByb3RhdGUzZCgwLCAxLCAwLCAtNWRlZyk7XHJcbiAgICAgICAgICAgIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpIHJvdGF0ZTNkKDAsIDEsIDAsIC01ZGVnKTtcclxuICB9XHJcblxyXG4gIDEwMCUge1xyXG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KTtcclxuICAgICAgICAgICAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCk7XHJcbiAgfVxyXG59XHJcblxyXG4uZmxpcEluWSB7XHJcbiAgLXdlYmtpdC1iYWNrZmFjZS12aXNpYmlsaXR5OiB2aXNpYmxlICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgICBiYWNrZmFjZS12aXNpYmlsaXR5OiB2aXNpYmxlICFpbXBvcnRhbnQ7XHJcbiAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogZmxpcEluWTtcclxuICAgICAgICAgIGFuaW1hdGlvbi1uYW1lOiBmbGlwSW5ZO1xyXG59XHJcblxyXG5ALXdlYmtpdC1rZXlmcmFtZXMgZmxpcE91dFgge1xyXG4gIDAlIHtcclxuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCk7XHJcbiAgICAgICAgICAgIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpO1xyXG4gIH1cclxuXHJcbiAgMzAlIHtcclxuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCkgcm90YXRlM2QoMSwgMCwgMCwgLTIwZGVnKTtcclxuICAgICAgICAgICAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCkgcm90YXRlM2QoMSwgMCwgMCwgLTIwZGVnKTtcclxuICAgIG9wYWNpdHk6IDE7XHJcbiAgfVxyXG5cclxuICAxMDAlIHtcclxuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCkgcm90YXRlM2QoMSwgMCwgMCwgOTBkZWcpO1xyXG4gICAgICAgICAgICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSByb3RhdGUzZCgxLCAwLCAwLCA5MGRlZyk7XHJcbiAgICBvcGFjaXR5OiAwO1xyXG4gIH1cclxufVxyXG5cclxuQGtleWZyYW1lcyBmbGlwT3V0WCB7XHJcbiAgMCUge1xyXG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KTtcclxuICAgICAgICAgICAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCk7XHJcbiAgfVxyXG5cclxuICAzMCUge1xyXG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSByb3RhdGUzZCgxLCAwLCAwLCAtMjBkZWcpO1xyXG4gICAgICAgICAgICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSByb3RhdGUzZCgxLCAwLCAwLCAtMjBkZWcpO1xyXG4gICAgb3BhY2l0eTogMTtcclxuICB9XHJcblxyXG4gIDEwMCUge1xyXG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSByb3RhdGUzZCgxLCAwLCAwLCA5MGRlZyk7XHJcbiAgICAgICAgICAgIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpIHJvdGF0ZTNkKDEsIDAsIDAsIDkwZGVnKTtcclxuICAgIG9wYWNpdHk6IDA7XHJcbiAgfVxyXG59XHJcblxyXG4uZmxpcE91dFgge1xyXG4gIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IGZsaXBPdXRYO1xyXG4gICAgICAgICAgYW5pbWF0aW9uLW5hbWU6IGZsaXBPdXRYO1xyXG4gIC13ZWJraXQtYW5pbWF0aW9uLWR1cmF0aW9uOiAuNzVzO1xyXG4gICAgICAgICAgYW5pbWF0aW9uLWR1cmF0aW9uOiAuNzVzO1xyXG4gIC13ZWJraXQtYmFja2ZhY2UtdmlzaWJpbGl0eTogdmlzaWJsZSAhaW1wb3J0YW50O1xyXG4gICAgICAgICAgYmFja2ZhY2UtdmlzaWJpbGl0eTogdmlzaWJsZSAhaW1wb3J0YW50O1xyXG59XHJcblxyXG5ALXdlYmtpdC1rZXlmcmFtZXMgZmxpcE91dFkge1xyXG4gIDAlIHtcclxuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCk7XHJcbiAgICAgICAgICAgIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpO1xyXG4gIH1cclxuXHJcbiAgMzAlIHtcclxuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCkgcm90YXRlM2QoMCwgMSwgMCwgLTE1ZGVnKTtcclxuICAgICAgICAgICAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCkgcm90YXRlM2QoMCwgMSwgMCwgLTE1ZGVnKTtcclxuICAgIG9wYWNpdHk6IDE7XHJcbiAgfVxyXG5cclxuICAxMDAlIHtcclxuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCkgcm90YXRlM2QoMCwgMSwgMCwgOTBkZWcpO1xyXG4gICAgICAgICAgICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSByb3RhdGUzZCgwLCAxLCAwLCA5MGRlZyk7XHJcbiAgICBvcGFjaXR5OiAwO1xyXG4gIH1cclxufVxyXG5cclxuQGtleWZyYW1lcyBmbGlwT3V0WSB7XHJcbiAgMCUge1xyXG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KTtcclxuICAgICAgICAgICAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCk7XHJcbiAgfVxyXG5cclxuICAzMCUge1xyXG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSByb3RhdGUzZCgwLCAxLCAwLCAtMTVkZWcpO1xyXG4gICAgICAgICAgICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSByb3RhdGUzZCgwLCAxLCAwLCAtMTVkZWcpO1xyXG4gICAgb3BhY2l0eTogMTtcclxuICB9XHJcblxyXG4gIDEwMCUge1xyXG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSByb3RhdGUzZCgwLCAxLCAwLCA5MGRlZyk7XHJcbiAgICAgICAgICAgIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpIHJvdGF0ZTNkKDAsIDEsIDAsIDkwZGVnKTtcclxuICAgIG9wYWNpdHk6IDA7XHJcbiAgfVxyXG59XHJcblxyXG4uZmxpcE91dFkge1xyXG4gIC13ZWJraXQtYmFja2ZhY2UtdmlzaWJpbGl0eTogdmlzaWJsZSAhaW1wb3J0YW50O1xyXG4gICAgICAgICAgYmFja2ZhY2UtdmlzaWJpbGl0eTogdmlzaWJsZSAhaW1wb3J0YW50O1xyXG4gIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IGZsaXBPdXRZO1xyXG4gICAgICAgICAgYW5pbWF0aW9uLW5hbWU6IGZsaXBPdXRZO1xyXG4gIC13ZWJraXQtYW5pbWF0aW9uLWR1cmF0aW9uOiAuNzVzO1xyXG4gICAgICAgICAgYW5pbWF0aW9uLWR1cmF0aW9uOiAuNzVzO1xyXG59XHJcblxyXG5ALXdlYmtpdC1rZXlmcmFtZXMgbGlnaHRTcGVlZEluIHtcclxuICAwJSB7XHJcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMTAwJSwgMCwgMCkgc2tld1goLTMwZGVnKTtcclxuICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgxMDAlLCAwLCAwKSBza2V3WCgtMzBkZWcpO1xyXG4gICAgb3BhY2l0eTogMDtcclxuICB9XHJcblxyXG4gIDYwJSB7XHJcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2tld1goMjBkZWcpO1xyXG4gICAgICAgICAgICB0cmFuc2Zvcm06IHNrZXdYKDIwZGVnKTtcclxuICAgIG9wYWNpdHk6IDE7XHJcbiAgfVxyXG5cclxuICA4MCUge1xyXG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNrZXdYKC01ZGVnKTtcclxuICAgICAgICAgICAgdHJhbnNmb3JtOiBza2V3WCgtNWRlZyk7XHJcbiAgICBvcGFjaXR5OiAxO1xyXG4gIH1cclxuXHJcbiAgMTAwJSB7XHJcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogbm9uZTtcclxuICAgICAgICAgICAgdHJhbnNmb3JtOiBub25lO1xyXG4gICAgb3BhY2l0eTogMTtcclxuICB9XHJcbn1cclxuXHJcbkBrZXlmcmFtZXMgbGlnaHRTcGVlZEluIHtcclxuICAwJSB7XHJcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMTAwJSwgMCwgMCkgc2tld1goLTMwZGVnKTtcclxuICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgxMDAlLCAwLCAwKSBza2V3WCgtMzBkZWcpO1xyXG4gICAgb3BhY2l0eTogMDtcclxuICB9XHJcblxyXG4gIDYwJSB7XHJcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2tld1goMjBkZWcpO1xyXG4gICAgICAgICAgICB0cmFuc2Zvcm06IHNrZXdYKDIwZGVnKTtcclxuICAgIG9wYWNpdHk6IDE7XHJcbiAgfVxyXG5cclxuICA4MCUge1xyXG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNrZXdYKC01ZGVnKTtcclxuICAgICAgICAgICAgdHJhbnNmb3JtOiBza2V3WCgtNWRlZyk7XHJcbiAgICBvcGFjaXR5OiAxO1xyXG4gIH1cclxuXHJcbiAgMTAwJSB7XHJcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogbm9uZTtcclxuICAgICAgICAgICAgdHJhbnNmb3JtOiBub25lO1xyXG4gICAgb3BhY2l0eTogMTtcclxuICB9XHJcbn1cclxuXHJcbi5saWdodFNwZWVkSW4ge1xyXG4gIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IGxpZ2h0U3BlZWRJbjtcclxuICAgICAgICAgIGFuaW1hdGlvbi1uYW1lOiBsaWdodFNwZWVkSW47XHJcbiAgLXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLW91dDtcclxuICAgICAgICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2Utb3V0O1xyXG59XHJcblxyXG5ALXdlYmtpdC1rZXlmcmFtZXMgbGlnaHRTcGVlZE91dCB7XHJcbiAgMCUge1xyXG4gICAgb3BhY2l0eTogMTtcclxuICB9XHJcblxyXG4gIDEwMCUge1xyXG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDEwMCUsIDAsIDApIHNrZXdYKDMwZGVnKTtcclxuICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgxMDAlLCAwLCAwKSBza2V3WCgzMGRlZyk7XHJcbiAgICBvcGFjaXR5OiAwO1xyXG4gIH1cclxufVxyXG5cclxuQGtleWZyYW1lcyBsaWdodFNwZWVkT3V0IHtcclxuICAwJSB7XHJcbiAgICBvcGFjaXR5OiAxO1xyXG4gIH1cclxuXHJcbiAgMTAwJSB7XHJcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMTAwJSwgMCwgMCkgc2tld1goMzBkZWcpO1xyXG4gICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDEwMCUsIDAsIDApIHNrZXdYKDMwZGVnKTtcclxuICAgIG9wYWNpdHk6IDA7XHJcbiAgfVxyXG59XHJcblxyXG4ubGlnaHRTcGVlZE91dCB7XHJcbiAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogbGlnaHRTcGVlZE91dDtcclxuICAgICAgICAgIGFuaW1hdGlvbi1uYW1lOiBsaWdodFNwZWVkT3V0O1xyXG4gIC13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1pbjtcclxuICAgICAgICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2UtaW47XHJcbn1cclxuXHJcbkAtd2Via2l0LWtleWZyYW1lcyByb3RhdGVJbiB7XHJcbiAgMCUge1xyXG4gICAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiBjZW50ZXI7XHJcbiAgICAgICAgICAgIHRyYW5zZm9ybS1vcmlnaW46IGNlbnRlcjtcclxuICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUzZCgwLCAwLCAxLCAtMjAwZGVnKTtcclxuICAgICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUzZCgwLCAwLCAxLCAtMjAwZGVnKTtcclxuICAgIG9wYWNpdHk6IDA7XHJcbiAgfVxyXG5cclxuICAxMDAlIHtcclxuICAgIC13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjogY2VudGVyO1xyXG4gICAgICAgICAgICB0cmFuc2Zvcm0tb3JpZ2luOiBjZW50ZXI7XHJcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogbm9uZTtcclxuICAgICAgICAgICAgdHJhbnNmb3JtOiBub25lO1xyXG4gICAgb3BhY2l0eTogMTtcclxuICB9XHJcbn1cclxuXHJcbkBrZXlmcmFtZXMgcm90YXRlSW4ge1xyXG4gIDAlIHtcclxuICAgIC13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjogY2VudGVyO1xyXG4gICAgICAgICAgICB0cmFuc2Zvcm0tb3JpZ2luOiBjZW50ZXI7XHJcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlM2QoMCwgMCwgMSwgLTIwMGRlZyk7XHJcbiAgICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlM2QoMCwgMCwgMSwgLTIwMGRlZyk7XHJcbiAgICBvcGFjaXR5OiAwO1xyXG4gIH1cclxuXHJcbiAgMTAwJSB7XHJcbiAgICAtd2Via2l0LXRyYW5zZm9ybS1vcmlnaW46IGNlbnRlcjtcclxuICAgICAgICAgICAgdHJhbnNmb3JtLW9yaWdpbjogY2VudGVyO1xyXG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IG5vbmU7XHJcbiAgICAgICAgICAgIHRyYW5zZm9ybTogbm9uZTtcclxuICAgIG9wYWNpdHk6IDE7XHJcbiAgfVxyXG59XHJcblxyXG4ucm90YXRlSW4ge1xyXG4gIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IHJvdGF0ZUluO1xyXG4gICAgICAgICAgYW5pbWF0aW9uLW5hbWU6IHJvdGF0ZUluO1xyXG59XHJcblxyXG5ALXdlYmtpdC1rZXlmcmFtZXMgcm90YXRlSW5Eb3duTGVmdCB7XHJcbiAgMCUge1xyXG4gICAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiBsZWZ0IGJvdHRvbTtcclxuICAgICAgICAgICAgdHJhbnNmb3JtLW9yaWdpbjogbGVmdCBib3R0b207XHJcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlM2QoMCwgMCwgMSwgLTQ1ZGVnKTtcclxuICAgICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUzZCgwLCAwLCAxLCAtNDVkZWcpO1xyXG4gICAgb3BhY2l0eTogMDtcclxuICB9XHJcblxyXG4gIDEwMCUge1xyXG4gICAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiBsZWZ0IGJvdHRvbTtcclxuICAgICAgICAgICAgdHJhbnNmb3JtLW9yaWdpbjogbGVmdCBib3R0b207XHJcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogbm9uZTtcclxuICAgICAgICAgICAgdHJhbnNmb3JtOiBub25lO1xyXG4gICAgb3BhY2l0eTogMTtcclxuICB9XHJcbn1cclxuXHJcbkBrZXlmcmFtZXMgcm90YXRlSW5Eb3duTGVmdCB7XHJcbiAgMCUge1xyXG4gICAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiBsZWZ0IGJvdHRvbTtcclxuICAgICAgICAgICAgdHJhbnNmb3JtLW9yaWdpbjogbGVmdCBib3R0b207XHJcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlM2QoMCwgMCwgMSwgLTQ1ZGVnKTtcclxuICAgICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUzZCgwLCAwLCAxLCAtNDVkZWcpO1xyXG4gICAgb3BhY2l0eTogMDtcclxuICB9XHJcblxyXG4gIDEwMCUge1xyXG4gICAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiBsZWZ0IGJvdHRvbTtcclxuICAgICAgICAgICAgdHJhbnNmb3JtLW9yaWdpbjogbGVmdCBib3R0b207XHJcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogbm9uZTtcclxuICAgICAgICAgICAgdHJhbnNmb3JtOiBub25lO1xyXG4gICAgb3BhY2l0eTogMTtcclxuICB9XHJcbn1cclxuXHJcbi5yb3RhdGVJbkRvd25MZWZ0IHtcclxuICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiByb3RhdGVJbkRvd25MZWZ0O1xyXG4gICAgICAgICAgYW5pbWF0aW9uLW5hbWU6IHJvdGF0ZUluRG93bkxlZnQ7XHJcbn1cclxuXHJcbkAtd2Via2l0LWtleWZyYW1lcyByb3RhdGVJbkRvd25SaWdodCB7XHJcbiAgMCUge1xyXG4gICAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiByaWdodCBib3R0b207XHJcbiAgICAgICAgICAgIHRyYW5zZm9ybS1vcmlnaW46IHJpZ2h0IGJvdHRvbTtcclxuICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUzZCgwLCAwLCAxLCA0NWRlZyk7XHJcbiAgICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlM2QoMCwgMCwgMSwgNDVkZWcpO1xyXG4gICAgb3BhY2l0eTogMDtcclxuICB9XHJcblxyXG4gIDEwMCUge1xyXG4gICAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiByaWdodCBib3R0b207XHJcbiAgICAgICAgICAgIHRyYW5zZm9ybS1vcmlnaW46IHJpZ2h0IGJvdHRvbTtcclxuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBub25lO1xyXG4gICAgICAgICAgICB0cmFuc2Zvcm06IG5vbmU7XHJcbiAgICBvcGFjaXR5OiAxO1xyXG4gIH1cclxufVxyXG5cclxuQGtleWZyYW1lcyByb3RhdGVJbkRvd25SaWdodCB7XHJcbiAgMCUge1xyXG4gICAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiByaWdodCBib3R0b207XHJcbiAgICAgICAgICAgIHRyYW5zZm9ybS1vcmlnaW46IHJpZ2h0IGJvdHRvbTtcclxuICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUzZCgwLCAwLCAxLCA0NWRlZyk7XHJcbiAgICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlM2QoMCwgMCwgMSwgNDVkZWcpO1xyXG4gICAgb3BhY2l0eTogMDtcclxuICB9XHJcblxyXG4gIDEwMCUge1xyXG4gICAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiByaWdodCBib3R0b207XHJcbiAgICAgICAgICAgIHRyYW5zZm9ybS1vcmlnaW46IHJpZ2h0IGJvdHRvbTtcclxuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBub25lO1xyXG4gICAgICAgICAgICB0cmFuc2Zvcm06IG5vbmU7XHJcbiAgICBvcGFjaXR5OiAxO1xyXG4gIH1cclxufVxyXG5cclxuLnJvdGF0ZUluRG93blJpZ2h0IHtcclxuICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiByb3RhdGVJbkRvd25SaWdodDtcclxuICAgICAgICAgIGFuaW1hdGlvbi1uYW1lOiByb3RhdGVJbkRvd25SaWdodDtcclxufVxyXG5cclxuQC13ZWJraXQta2V5ZnJhbWVzIHJvdGF0ZUluVXBMZWZ0IHtcclxuICAwJSB7XHJcbiAgICAtd2Via2l0LXRyYW5zZm9ybS1vcmlnaW46IGxlZnQgYm90dG9tO1xyXG4gICAgICAgICAgICB0cmFuc2Zvcm0tb3JpZ2luOiBsZWZ0IGJvdHRvbTtcclxuICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUzZCgwLCAwLCAxLCA0NWRlZyk7XHJcbiAgICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlM2QoMCwgMCwgMSwgNDVkZWcpO1xyXG4gICAgb3BhY2l0eTogMDtcclxuICB9XHJcblxyXG4gIDEwMCUge1xyXG4gICAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiBsZWZ0IGJvdHRvbTtcclxuICAgICAgICAgICAgdHJhbnNmb3JtLW9yaWdpbjogbGVmdCBib3R0b207XHJcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogbm9uZTtcclxuICAgICAgICAgICAgdHJhbnNmb3JtOiBub25lO1xyXG4gICAgb3BhY2l0eTogMTtcclxuICB9XHJcbn1cclxuXHJcbkBrZXlmcmFtZXMgcm90YXRlSW5VcExlZnQge1xyXG4gIDAlIHtcclxuICAgIC13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjogbGVmdCBib3R0b207XHJcbiAgICAgICAgICAgIHRyYW5zZm9ybS1vcmlnaW46IGxlZnQgYm90dG9tO1xyXG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZTNkKDAsIDAsIDEsIDQ1ZGVnKTtcclxuICAgICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUzZCgwLCAwLCAxLCA0NWRlZyk7XHJcbiAgICBvcGFjaXR5OiAwO1xyXG4gIH1cclxuXHJcbiAgMTAwJSB7XHJcbiAgICAtd2Via2l0LXRyYW5zZm9ybS1vcmlnaW46IGxlZnQgYm90dG9tO1xyXG4gICAgICAgICAgICB0cmFuc2Zvcm0tb3JpZ2luOiBsZWZ0IGJvdHRvbTtcclxuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBub25lO1xyXG4gICAgICAgICAgICB0cmFuc2Zvcm06IG5vbmU7XHJcbiAgICBvcGFjaXR5OiAxO1xyXG4gIH1cclxufVxyXG5cclxuLnJvdGF0ZUluVXBMZWZ0IHtcclxuICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiByb3RhdGVJblVwTGVmdDtcclxuICAgICAgICAgIGFuaW1hdGlvbi1uYW1lOiByb3RhdGVJblVwTGVmdDtcclxufVxyXG5cclxuQC13ZWJraXQta2V5ZnJhbWVzIHJvdGF0ZUluVXBSaWdodCB7XHJcbiAgMCUge1xyXG4gICAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiByaWdodCBib3R0b207XHJcbiAgICAgICAgICAgIHRyYW5zZm9ybS1vcmlnaW46IHJpZ2h0IGJvdHRvbTtcclxuICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUzZCgwLCAwLCAxLCAtOTBkZWcpO1xyXG4gICAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZTNkKDAsIDAsIDEsIC05MGRlZyk7XHJcbiAgICBvcGFjaXR5OiAwO1xyXG4gIH1cclxuXHJcbiAgMTAwJSB7XHJcbiAgICAtd2Via2l0LXRyYW5zZm9ybS1vcmlnaW46IHJpZ2h0IGJvdHRvbTtcclxuICAgICAgICAgICAgdHJhbnNmb3JtLW9yaWdpbjogcmlnaHQgYm90dG9tO1xyXG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IG5vbmU7XHJcbiAgICAgICAgICAgIHRyYW5zZm9ybTogbm9uZTtcclxuICAgIG9wYWNpdHk6IDE7XHJcbiAgfVxyXG59XHJcblxyXG5Aa2V5ZnJhbWVzIHJvdGF0ZUluVXBSaWdodCB7XHJcbiAgMCUge1xyXG4gICAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiByaWdodCBib3R0b207XHJcbiAgICAgICAgICAgIHRyYW5zZm9ybS1vcmlnaW46IHJpZ2h0IGJvdHRvbTtcclxuICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUzZCgwLCAwLCAxLCAtOTBkZWcpO1xyXG4gICAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZTNkKDAsIDAsIDEsIC05MGRlZyk7XHJcbiAgICBvcGFjaXR5OiAwO1xyXG4gIH1cclxuXHJcbiAgMTAwJSB7XHJcbiAgICAtd2Via2l0LXRyYW5zZm9ybS1vcmlnaW46IHJpZ2h0IGJvdHRvbTtcclxuICAgICAgICAgICAgdHJhbnNmb3JtLW9yaWdpbjogcmlnaHQgYm90dG9tO1xyXG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IG5vbmU7XHJcbiAgICAgICAgICAgIHRyYW5zZm9ybTogbm9uZTtcclxuICAgIG9wYWNpdHk6IDE7XHJcbiAgfVxyXG59XHJcblxyXG4ucm90YXRlSW5VcFJpZ2h0IHtcclxuICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiByb3RhdGVJblVwUmlnaHQ7XHJcbiAgICAgICAgICBhbmltYXRpb24tbmFtZTogcm90YXRlSW5VcFJpZ2h0O1xyXG59XHJcblxyXG5ALXdlYmtpdC1rZXlmcmFtZXMgcm90YXRlT3V0IHtcclxuICAwJSB7XHJcbiAgICAtd2Via2l0LXRyYW5zZm9ybS1vcmlnaW46IGNlbnRlcjtcclxuICAgICAgICAgICAgdHJhbnNmb3JtLW9yaWdpbjogY2VudGVyO1xyXG4gICAgb3BhY2l0eTogMTtcclxuICB9XHJcblxyXG4gIDEwMCUge1xyXG4gICAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiBjZW50ZXI7XHJcbiAgICAgICAgICAgIHRyYW5zZm9ybS1vcmlnaW46IGNlbnRlcjtcclxuICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUzZCgwLCAwLCAxLCAyMDBkZWcpO1xyXG4gICAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZTNkKDAsIDAsIDEsIDIwMGRlZyk7XHJcbiAgICBvcGFjaXR5OiAwO1xyXG4gIH1cclxufVxyXG5cclxuQGtleWZyYW1lcyByb3RhdGVPdXQge1xyXG4gIDAlIHtcclxuICAgIC13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjogY2VudGVyO1xyXG4gICAgICAgICAgICB0cmFuc2Zvcm0tb3JpZ2luOiBjZW50ZXI7XHJcbiAgICBvcGFjaXR5OiAxO1xyXG4gIH1cclxuXHJcbiAgMTAwJSB7XHJcbiAgICAtd2Via2l0LXRyYW5zZm9ybS1vcmlnaW46IGNlbnRlcjtcclxuICAgICAgICAgICAgdHJhbnNmb3JtLW9yaWdpbjogY2VudGVyO1xyXG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZTNkKDAsIDAsIDEsIDIwMGRlZyk7XHJcbiAgICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlM2QoMCwgMCwgMSwgMjAwZGVnKTtcclxuICAgIG9wYWNpdHk6IDA7XHJcbiAgfVxyXG59XHJcblxyXG4ucm90YXRlT3V0IHtcclxuICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiByb3RhdGVPdXQ7XHJcbiAgICAgICAgICBhbmltYXRpb24tbmFtZTogcm90YXRlT3V0O1xyXG59XHJcblxyXG5ALXdlYmtpdC1rZXlmcmFtZXMgcm90YXRlT3V0RG93bkxlZnQge1xyXG4gIDAlIHtcclxuICAgIC13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjogbGVmdCBib3R0b207XHJcbiAgICAgICAgICAgIHRyYW5zZm9ybS1vcmlnaW46IGxlZnQgYm90dG9tO1xyXG4gICAgb3BhY2l0eTogMTtcclxuICB9XHJcblxyXG4gIDEwMCUge1xyXG4gICAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiBsZWZ0IGJvdHRvbTtcclxuICAgICAgICAgICAgdHJhbnNmb3JtLW9yaWdpbjogbGVmdCBib3R0b207XHJcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlM2QoMCwgMCwgMSwgNDVkZWcpO1xyXG4gICAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZTNkKDAsIDAsIDEsIDQ1ZGVnKTtcclxuICAgIG9wYWNpdHk6IDA7XHJcbiAgfVxyXG59XHJcblxyXG5Aa2V5ZnJhbWVzIHJvdGF0ZU91dERvd25MZWZ0IHtcclxuICAwJSB7XHJcbiAgICAtd2Via2l0LXRyYW5zZm9ybS1vcmlnaW46IGxlZnQgYm90dG9tO1xyXG4gICAgICAgICAgICB0cmFuc2Zvcm0tb3JpZ2luOiBsZWZ0IGJvdHRvbTtcclxuICAgIG9wYWNpdHk6IDE7XHJcbiAgfVxyXG5cclxuICAxMDAlIHtcclxuICAgIC13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjogbGVmdCBib3R0b207XHJcbiAgICAgICAgICAgIHRyYW5zZm9ybS1vcmlnaW46IGxlZnQgYm90dG9tO1xyXG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZTNkKDAsIDAsIDEsIDQ1ZGVnKTtcclxuICAgICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUzZCgwLCAwLCAxLCA0NWRlZyk7XHJcbiAgICBvcGFjaXR5OiAwO1xyXG4gIH1cclxufVxyXG5cclxuLnJvdGF0ZU91dERvd25MZWZ0IHtcclxuICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiByb3RhdGVPdXREb3duTGVmdDtcclxuICAgICAgICAgIGFuaW1hdGlvbi1uYW1lOiByb3RhdGVPdXREb3duTGVmdDtcclxufVxyXG5cclxuQC13ZWJraXQta2V5ZnJhbWVzIHJvdGF0ZU91dERvd25SaWdodCB7XHJcbiAgMCUge1xyXG4gICAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiByaWdodCBib3R0b207XHJcbiAgICAgICAgICAgIHRyYW5zZm9ybS1vcmlnaW46IHJpZ2h0IGJvdHRvbTtcclxuICAgIG9wYWNpdHk6IDE7XHJcbiAgfVxyXG5cclxuICAxMDAlIHtcclxuICAgIC13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjogcmlnaHQgYm90dG9tO1xyXG4gICAgICAgICAgICB0cmFuc2Zvcm0tb3JpZ2luOiByaWdodCBib3R0b207XHJcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlM2QoMCwgMCwgMSwgLTQ1ZGVnKTtcclxuICAgICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUzZCgwLCAwLCAxLCAtNDVkZWcpO1xyXG4gICAgb3BhY2l0eTogMDtcclxuICB9XHJcbn1cclxuXHJcbkBrZXlmcmFtZXMgcm90YXRlT3V0RG93blJpZ2h0IHtcclxuICAwJSB7XHJcbiAgICAtd2Via2l0LXRyYW5zZm9ybS1vcmlnaW46IHJpZ2h0IGJvdHRvbTtcclxuICAgICAgICAgICAgdHJhbnNmb3JtLW9yaWdpbjogcmlnaHQgYm90dG9tO1xyXG4gICAgb3BhY2l0eTogMTtcclxuICB9XHJcblxyXG4gIDEwMCUge1xyXG4gICAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiByaWdodCBib3R0b207XHJcbiAgICAgICAgICAgIHRyYW5zZm9ybS1vcmlnaW46IHJpZ2h0IGJvdHRvbTtcclxuICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUzZCgwLCAwLCAxLCAtNDVkZWcpO1xyXG4gICAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZTNkKDAsIDAsIDEsIC00NWRlZyk7XHJcbiAgICBvcGFjaXR5OiAwO1xyXG4gIH1cclxufVxyXG5cclxuLnJvdGF0ZU91dERvd25SaWdodCB7XHJcbiAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogcm90YXRlT3V0RG93blJpZ2h0O1xyXG4gICAgICAgICAgYW5pbWF0aW9uLW5hbWU6IHJvdGF0ZU91dERvd25SaWdodDtcclxufVxyXG5cclxuQC13ZWJraXQta2V5ZnJhbWVzIHJvdGF0ZU91dFVwTGVmdCB7XHJcbiAgMCUge1xyXG4gICAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiBsZWZ0IGJvdHRvbTtcclxuICAgICAgICAgICAgdHJhbnNmb3JtLW9yaWdpbjogbGVmdCBib3R0b207XHJcbiAgICBvcGFjaXR5OiAxO1xyXG4gIH1cclxuXHJcbiAgMTAwJSB7XHJcbiAgICAtd2Via2l0LXRyYW5zZm9ybS1vcmlnaW46IGxlZnQgYm90dG9tO1xyXG4gICAgICAgICAgICB0cmFuc2Zvcm0tb3JpZ2luOiBsZWZ0IGJvdHRvbTtcclxuICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUzZCgwLCAwLCAxLCAtNDVkZWcpO1xyXG4gICAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZTNkKDAsIDAsIDEsIC00NWRlZyk7XHJcbiAgICBvcGFjaXR5OiAwO1xyXG4gIH1cclxufVxyXG5cclxuQGtleWZyYW1lcyByb3RhdGVPdXRVcExlZnQge1xyXG4gIDAlIHtcclxuICAgIC13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjogbGVmdCBib3R0b207XHJcbiAgICAgICAgICAgIHRyYW5zZm9ybS1vcmlnaW46IGxlZnQgYm90dG9tO1xyXG4gICAgb3BhY2l0eTogMTtcclxuICB9XHJcblxyXG4gIDEwMCUge1xyXG4gICAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiBsZWZ0IGJvdHRvbTtcclxuICAgICAgICAgICAgdHJhbnNmb3JtLW9yaWdpbjogbGVmdCBib3R0b207XHJcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlM2QoMCwgMCwgMSwgLTQ1ZGVnKTtcclxuICAgICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUzZCgwLCAwLCAxLCAtNDVkZWcpO1xyXG4gICAgb3BhY2l0eTogMDtcclxuICB9XHJcbn1cclxuXHJcbi5yb3RhdGVPdXRVcExlZnQge1xyXG4gIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IHJvdGF0ZU91dFVwTGVmdDtcclxuICAgICAgICAgIGFuaW1hdGlvbi1uYW1lOiByb3RhdGVPdXRVcExlZnQ7XHJcbn1cclxuXHJcbkAtd2Via2l0LWtleWZyYW1lcyByb3RhdGVPdXRVcFJpZ2h0IHtcclxuICAwJSB7XHJcbiAgICAtd2Via2l0LXRyYW5zZm9ybS1vcmlnaW46IHJpZ2h0IGJvdHRvbTtcclxuICAgICAgICAgICAgdHJhbnNmb3JtLW9yaWdpbjogcmlnaHQgYm90dG9tO1xyXG4gICAgb3BhY2l0eTogMTtcclxuICB9XHJcblxyXG4gIDEwMCUge1xyXG4gICAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiByaWdodCBib3R0b207XHJcbiAgICAgICAgICAgIHRyYW5zZm9ybS1vcmlnaW46IHJpZ2h0IGJvdHRvbTtcclxuICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUzZCgwLCAwLCAxLCA5MGRlZyk7XHJcbiAgICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlM2QoMCwgMCwgMSwgOTBkZWcpO1xyXG4gICAgb3BhY2l0eTogMDtcclxuICB9XHJcbn1cclxuXHJcbkBrZXlmcmFtZXMgcm90YXRlT3V0VXBSaWdodCB7XHJcbiAgMCUge1xyXG4gICAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiByaWdodCBib3R0b207XHJcbiAgICAgICAgICAgIHRyYW5zZm9ybS1vcmlnaW46IHJpZ2h0IGJvdHRvbTtcclxuICAgIG9wYWNpdHk6IDE7XHJcbiAgfVxyXG5cclxuICAxMDAlIHtcclxuICAgIC13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjogcmlnaHQgYm90dG9tO1xyXG4gICAgICAgICAgICB0cmFuc2Zvcm0tb3JpZ2luOiByaWdodCBib3R0b207XHJcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlM2QoMCwgMCwgMSwgOTBkZWcpO1xyXG4gICAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZTNkKDAsIDAsIDEsIDkwZGVnKTtcclxuICAgIG9wYWNpdHk6IDA7XHJcbiAgfVxyXG59XHJcblxyXG4ucm90YXRlT3V0VXBSaWdodCB7XHJcbiAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogcm90YXRlT3V0VXBSaWdodDtcclxuICAgICAgICAgIGFuaW1hdGlvbi1uYW1lOiByb3RhdGVPdXRVcFJpZ2h0O1xyXG59XHJcblxyXG5ALXdlYmtpdC1rZXlmcmFtZXMgaGluZ2Uge1xyXG4gIDAlIHtcclxuICAgIC13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjogdG9wIGxlZnQ7XHJcbiAgICAgICAgICAgIHRyYW5zZm9ybS1vcmlnaW46IHRvcCBsZWZ0O1xyXG4gICAgLXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLWluLW91dDtcclxuICAgICAgICAgICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1pbi1vdXQ7XHJcbiAgfVxyXG5cclxuICAyMCUsIDYwJSB7XHJcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlM2QoMCwgMCwgMSwgODBkZWcpO1xyXG4gICAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZTNkKDAsIDAsIDEsIDgwZGVnKTtcclxuICAgIC13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjogdG9wIGxlZnQ7XHJcbiAgICAgICAgICAgIHRyYW5zZm9ybS1vcmlnaW46IHRvcCBsZWZ0O1xyXG4gICAgLXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLWluLW91dDtcclxuICAgICAgICAgICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1pbi1vdXQ7XHJcbiAgfVxyXG5cclxuICA0MCUsIDgwJSB7XHJcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlM2QoMCwgMCwgMSwgNjBkZWcpO1xyXG4gICAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZTNkKDAsIDAsIDEsIDYwZGVnKTtcclxuICAgIC13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjogdG9wIGxlZnQ7XHJcbiAgICAgICAgICAgIHRyYW5zZm9ybS1vcmlnaW46IHRvcCBsZWZ0O1xyXG4gICAgLXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLWluLW91dDtcclxuICAgICAgICAgICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1pbi1vdXQ7XHJcbiAgICBvcGFjaXR5OiAxO1xyXG4gIH1cclxuXHJcbiAgMTAwJSB7XHJcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgNzAwcHgsIDApO1xyXG4gICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDcwMHB4LCAwKTtcclxuICAgIG9wYWNpdHk6IDA7XHJcbiAgfVxyXG59XHJcblxyXG5Aa2V5ZnJhbWVzIGhpbmdlIHtcclxuICAwJSB7XHJcbiAgICAtd2Via2l0LXRyYW5zZm9ybS1vcmlnaW46IHRvcCBsZWZ0O1xyXG4gICAgICAgICAgICB0cmFuc2Zvcm0tb3JpZ2luOiB0b3AgbGVmdDtcclxuICAgIC13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1pbi1vdXQ7XHJcbiAgICAgICAgICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2UtaW4tb3V0O1xyXG4gIH1cclxuXHJcbiAgMjAlLCA2MCUge1xyXG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZTNkKDAsIDAsIDEsIDgwZGVnKTtcclxuICAgICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUzZCgwLCAwLCAxLCA4MGRlZyk7XHJcbiAgICAtd2Via2l0LXRyYW5zZm9ybS1vcmlnaW46IHRvcCBsZWZ0O1xyXG4gICAgICAgICAgICB0cmFuc2Zvcm0tb3JpZ2luOiB0b3AgbGVmdDtcclxuICAgIC13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1pbi1vdXQ7XHJcbiAgICAgICAgICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2UtaW4tb3V0O1xyXG4gIH1cclxuXHJcbiAgNDAlLCA4MCUge1xyXG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZTNkKDAsIDAsIDEsIDYwZGVnKTtcclxuICAgICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUzZCgwLCAwLCAxLCA2MGRlZyk7XHJcbiAgICAtd2Via2l0LXRyYW5zZm9ybS1vcmlnaW46IHRvcCBsZWZ0O1xyXG4gICAgICAgICAgICB0cmFuc2Zvcm0tb3JpZ2luOiB0b3AgbGVmdDtcclxuICAgIC13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1pbi1vdXQ7XHJcbiAgICAgICAgICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2UtaW4tb3V0O1xyXG4gICAgb3BhY2l0eTogMTtcclxuICB9XHJcblxyXG4gIDEwMCUge1xyXG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDcwMHB4LCAwKTtcclxuICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCA3MDBweCwgMCk7XHJcbiAgICBvcGFjaXR5OiAwO1xyXG4gIH1cclxufVxyXG5cclxuLmhpbmdlIHtcclxuICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBoaW5nZTtcclxuICAgICAgICAgIGFuaW1hdGlvbi1uYW1lOiBoaW5nZTtcclxufVxyXG5cclxuLyogb3JpZ2luYWxseSBhdXRob3JlZCBieSBOaWNrIFBldHRpdCAtIGh0dHBzOi8vZ2l0aHViLmNvbS9uaWNrcGV0dGl0L2dsaWRlICovXHJcblxyXG5ALXdlYmtpdC1rZXlmcmFtZXMgcm9sbEluIHtcclxuICAwJSB7XHJcbiAgICBvcGFjaXR5OiAwO1xyXG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0xMDAlLCAwLCAwKSByb3RhdGUzZCgwLCAwLCAxLCAtMTIwZGVnKTtcclxuICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMTAwJSwgMCwgMCkgcm90YXRlM2QoMCwgMCwgMSwgLTEyMGRlZyk7XHJcbiAgfVxyXG5cclxuICAxMDAlIHtcclxuICAgIG9wYWNpdHk6IDE7XHJcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogbm9uZTtcclxuICAgICAgICAgICAgdHJhbnNmb3JtOiBub25lO1xyXG4gIH1cclxufVxyXG5cclxuQGtleWZyYW1lcyByb2xsSW4ge1xyXG4gIDAlIHtcclxuICAgIG9wYWNpdHk6IDA7XHJcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTEwMCUsIDAsIDApIHJvdGF0ZTNkKDAsIDAsIDEsIC0xMjBkZWcpO1xyXG4gICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0xMDAlLCAwLCAwKSByb3RhdGUzZCgwLCAwLCAxLCAtMTIwZGVnKTtcclxuICB9XHJcblxyXG4gIDEwMCUge1xyXG4gICAgb3BhY2l0eTogMTtcclxuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBub25lO1xyXG4gICAgICAgICAgICB0cmFuc2Zvcm06IG5vbmU7XHJcbiAgfVxyXG59XHJcblxyXG4ucm9sbEluIHtcclxuICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiByb2xsSW47XHJcbiAgICAgICAgICBhbmltYXRpb24tbmFtZTogcm9sbEluO1xyXG59XHJcblxyXG4vKiBvcmlnaW5hbGx5IGF1dGhvcmVkIGJ5IE5pY2sgUGV0dGl0IC0gaHR0cHM6Ly9naXRodWIuY29tL25pY2twZXR0aXQvZ2xpZGUgKi9cclxuXHJcbkAtd2Via2l0LWtleWZyYW1lcyByb2xsT3V0IHtcclxuICAwJSB7XHJcbiAgICBvcGFjaXR5OiAxO1xyXG4gIH1cclxuXHJcbiAgMTAwJSB7XHJcbiAgICBvcGFjaXR5OiAwO1xyXG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDEwMCUsIDAsIDApIHJvdGF0ZTNkKDAsIDAsIDEsIDEyMGRlZyk7XHJcbiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMTAwJSwgMCwgMCkgcm90YXRlM2QoMCwgMCwgMSwgMTIwZGVnKTtcclxuICB9XHJcbn1cclxuXHJcbkBrZXlmcmFtZXMgcm9sbE91dCB7XHJcbiAgMCUge1xyXG4gICAgb3BhY2l0eTogMTtcclxuICB9XHJcblxyXG4gIDEwMCUge1xyXG4gICAgb3BhY2l0eTogMDtcclxuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgxMDAlLCAwLCAwKSByb3RhdGUzZCgwLCAwLCAxLCAxMjBkZWcpO1xyXG4gICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDEwMCUsIDAsIDApIHJvdGF0ZTNkKDAsIDAsIDEsIDEyMGRlZyk7XHJcbiAgfVxyXG59XHJcblxyXG4ucm9sbE91dCB7XHJcbiAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogcm9sbE91dDtcclxuICAgICAgICAgIGFuaW1hdGlvbi1uYW1lOiByb2xsT3V0O1xyXG59XHJcblxyXG5ALXdlYmtpdC1rZXlmcmFtZXMgem9vbUluIHtcclxuICAwJSB7XHJcbiAgICBvcGFjaXR5OiAwO1xyXG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlM2QoLjMsIC4zLCAuMyk7XHJcbiAgICAgICAgICAgIHRyYW5zZm9ybTogc2NhbGUzZCguMywgLjMsIC4zKTtcclxuICB9XHJcblxyXG4gIDUwJSB7XHJcbiAgICBvcGFjaXR5OiAxO1xyXG4gIH1cclxufVxyXG5cclxuQGtleWZyYW1lcyB6b29tSW4ge1xyXG4gIDAlIHtcclxuICAgIG9wYWNpdHk6IDA7XHJcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUzZCguMywgLjMsIC4zKTtcclxuICAgICAgICAgICAgdHJhbnNmb3JtOiBzY2FsZTNkKC4zLCAuMywgLjMpO1xyXG4gIH1cclxuXHJcbiAgNTAlIHtcclxuICAgIG9wYWNpdHk6IDE7XHJcbiAgfVxyXG59XHJcblxyXG4uem9vbUluIHtcclxuICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiB6b29tSW47XHJcbiAgICAgICAgICBhbmltYXRpb24tbmFtZTogem9vbUluO1xyXG59XHJcblxyXG5ALXdlYmtpdC1rZXlmcmFtZXMgem9vbUluRG93biB7XHJcbiAgMCUge1xyXG4gICAgb3BhY2l0eTogMDtcclxuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNkKC4xLCAuMSwgLjEpIHRyYW5zbGF0ZTNkKDAsIC0xMDAwcHgsIDApO1xyXG4gICAgICAgICAgICB0cmFuc2Zvcm06IHNjYWxlM2QoLjEsIC4xLCAuMSkgdHJhbnNsYXRlM2QoMCwgLTEwMDBweCwgMCk7XHJcbiAgICAtd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjU1MCwgMC4wNTUsIDAuNjc1LCAwLjE5MCk7XHJcbiAgICAgICAgICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjU1MCwgMC4wNTUsIDAuNjc1LCAwLjE5MCk7XHJcbiAgfVxyXG5cclxuICA2MCUge1xyXG4gICAgb3BhY2l0eTogMTtcclxuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNkKC40NzUsIC40NzUsIC40NzUpIHRyYW5zbGF0ZTNkKDAsIDYwcHgsIDApO1xyXG4gICAgICAgICAgICB0cmFuc2Zvcm06IHNjYWxlM2QoLjQ3NSwgLjQ3NSwgLjQ3NSkgdHJhbnNsYXRlM2QoMCwgNjBweCwgMCk7XHJcbiAgICAtd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjE3NSwgMC44ODUsIDAuMzIwLCAxKTtcclxuICAgICAgICAgICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuMTc1LCAwLjg4NSwgMC4zMjAsIDEpO1xyXG4gIH1cclxufVxyXG5cclxuQGtleWZyYW1lcyB6b29tSW5Eb3duIHtcclxuICAwJSB7XHJcbiAgICBvcGFjaXR5OiAwO1xyXG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlM2QoLjEsIC4xLCAuMSkgdHJhbnNsYXRlM2QoMCwgLTEwMDBweCwgMCk7XHJcbiAgICAgICAgICAgIHRyYW5zZm9ybTogc2NhbGUzZCguMSwgLjEsIC4xKSB0cmFuc2xhdGUzZCgwLCAtMTAwMHB4LCAwKTtcclxuICAgIC13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuNTUwLCAwLjA1NSwgMC42NzUsIDAuMTkwKTtcclxuICAgICAgICAgICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuNTUwLCAwLjA1NSwgMC42NzUsIDAuMTkwKTtcclxuICB9XHJcblxyXG4gIDYwJSB7XHJcbiAgICBvcGFjaXR5OiAxO1xyXG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlM2QoLjQ3NSwgLjQ3NSwgLjQ3NSkgdHJhbnNsYXRlM2QoMCwgNjBweCwgMCk7XHJcbiAgICAgICAgICAgIHRyYW5zZm9ybTogc2NhbGUzZCguNDc1LCAuNDc1LCAuNDc1KSB0cmFuc2xhdGUzZCgwLCA2MHB4LCAwKTtcclxuICAgIC13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuMTc1LCAwLjg4NSwgMC4zMjAsIDEpO1xyXG4gICAgICAgICAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC4xNzUsIDAuODg1LCAwLjMyMCwgMSk7XHJcbiAgfVxyXG59XHJcblxyXG4uem9vbUluRG93biB7XHJcbiAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogem9vbUluRG93bjtcclxuICAgICAgICAgIGFuaW1hdGlvbi1uYW1lOiB6b29tSW5Eb3duO1xyXG59XHJcblxyXG5ALXdlYmtpdC1rZXlmcmFtZXMgem9vbUluTGVmdCB7XHJcbiAgMCUge1xyXG4gICAgb3BhY2l0eTogMDtcclxuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNkKC4xLCAuMSwgLjEpIHRyYW5zbGF0ZTNkKC0xMDAwcHgsIDAsIDApO1xyXG4gICAgICAgICAgICB0cmFuc2Zvcm06IHNjYWxlM2QoLjEsIC4xLCAuMSkgdHJhbnNsYXRlM2QoLTEwMDBweCwgMCwgMCk7XHJcbiAgICAtd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjU1MCwgMC4wNTUsIDAuNjc1LCAwLjE5MCk7XHJcbiAgICAgICAgICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjU1MCwgMC4wNTUsIDAuNjc1LCAwLjE5MCk7XHJcbiAgfVxyXG5cclxuICA2MCUge1xyXG4gICAgb3BhY2l0eTogMTtcclxuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNkKC40NzUsIC40NzUsIC40NzUpIHRyYW5zbGF0ZTNkKDEwcHgsIDAsIDApO1xyXG4gICAgICAgICAgICB0cmFuc2Zvcm06IHNjYWxlM2QoLjQ3NSwgLjQ3NSwgLjQ3NSkgdHJhbnNsYXRlM2QoMTBweCwgMCwgMCk7XHJcbiAgICAtd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjE3NSwgMC44ODUsIDAuMzIwLCAxKTtcclxuICAgICAgICAgICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuMTc1LCAwLjg4NSwgMC4zMjAsIDEpO1xyXG4gIH1cclxufVxyXG5cclxuQGtleWZyYW1lcyB6b29tSW5MZWZ0IHtcclxuICAwJSB7XHJcbiAgICBvcGFjaXR5OiAwO1xyXG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlM2QoLjEsIC4xLCAuMSkgdHJhbnNsYXRlM2QoLTEwMDBweCwgMCwgMCk7XHJcbiAgICAgICAgICAgIHRyYW5zZm9ybTogc2NhbGUzZCguMSwgLjEsIC4xKSB0cmFuc2xhdGUzZCgtMTAwMHB4LCAwLCAwKTtcclxuICAgIC13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuNTUwLCAwLjA1NSwgMC42NzUsIDAuMTkwKTtcclxuICAgICAgICAgICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuNTUwLCAwLjA1NSwgMC42NzUsIDAuMTkwKTtcclxuICB9XHJcblxyXG4gIDYwJSB7XHJcbiAgICBvcGFjaXR5OiAxO1xyXG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlM2QoLjQ3NSwgLjQ3NSwgLjQ3NSkgdHJhbnNsYXRlM2QoMTBweCwgMCwgMCk7XHJcbiAgICAgICAgICAgIHRyYW5zZm9ybTogc2NhbGUzZCguNDc1LCAuNDc1LCAuNDc1KSB0cmFuc2xhdGUzZCgxMHB4LCAwLCAwKTtcclxuICAgIC13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuMTc1LCAwLjg4NSwgMC4zMjAsIDEpO1xyXG4gICAgICAgICAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC4xNzUsIDAuODg1LCAwLjMyMCwgMSk7XHJcbiAgfVxyXG59XHJcblxyXG4uem9vbUluTGVmdCB7XHJcbiAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogem9vbUluTGVmdDtcclxuICAgICAgICAgIGFuaW1hdGlvbi1uYW1lOiB6b29tSW5MZWZ0O1xyXG59XHJcblxyXG5ALXdlYmtpdC1rZXlmcmFtZXMgem9vbUluUmlnaHQge1xyXG4gIDAlIHtcclxuICAgIG9wYWNpdHk6IDA7XHJcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUzZCguMSwgLjEsIC4xKSB0cmFuc2xhdGUzZCgxMDAwcHgsIDAsIDApO1xyXG4gICAgICAgICAgICB0cmFuc2Zvcm06IHNjYWxlM2QoLjEsIC4xLCAuMSkgdHJhbnNsYXRlM2QoMTAwMHB4LCAwLCAwKTtcclxuICAgIC13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuNTUwLCAwLjA1NSwgMC42NzUsIDAuMTkwKTtcclxuICAgICAgICAgICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuNTUwLCAwLjA1NSwgMC42NzUsIDAuMTkwKTtcclxuICB9XHJcblxyXG4gIDYwJSB7XHJcbiAgICBvcGFjaXR5OiAxO1xyXG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlM2QoLjQ3NSwgLjQ3NSwgLjQ3NSkgdHJhbnNsYXRlM2QoLTEwcHgsIDAsIDApO1xyXG4gICAgICAgICAgICB0cmFuc2Zvcm06IHNjYWxlM2QoLjQ3NSwgLjQ3NSwgLjQ3NSkgdHJhbnNsYXRlM2QoLTEwcHgsIDAsIDApO1xyXG4gICAgLXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC4xNzUsIDAuODg1LCAwLjMyMCwgMSk7XHJcbiAgICAgICAgICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjE3NSwgMC44ODUsIDAuMzIwLCAxKTtcclxuICB9XHJcbn1cclxuXHJcbkBrZXlmcmFtZXMgem9vbUluUmlnaHQge1xyXG4gIDAlIHtcclxuICAgIG9wYWNpdHk6IDA7XHJcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUzZCguMSwgLjEsIC4xKSB0cmFuc2xhdGUzZCgxMDAwcHgsIDAsIDApO1xyXG4gICAgICAgICAgICB0cmFuc2Zvcm06IHNjYWxlM2QoLjEsIC4xLCAuMSkgdHJhbnNsYXRlM2QoMTAwMHB4LCAwLCAwKTtcclxuICAgIC13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuNTUwLCAwLjA1NSwgMC42NzUsIDAuMTkwKTtcclxuICAgICAgICAgICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuNTUwLCAwLjA1NSwgMC42NzUsIDAuMTkwKTtcclxuICB9XHJcblxyXG4gIDYwJSB7XHJcbiAgICBvcGFjaXR5OiAxO1xyXG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlM2QoLjQ3NSwgLjQ3NSwgLjQ3NSkgdHJhbnNsYXRlM2QoLTEwcHgsIDAsIDApO1xyXG4gICAgICAgICAgICB0cmFuc2Zvcm06IHNjYWxlM2QoLjQ3NSwgLjQ3NSwgLjQ3NSkgdHJhbnNsYXRlM2QoLTEwcHgsIDAsIDApO1xyXG4gICAgLXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC4xNzUsIDAuODg1LCAwLjMyMCwgMSk7XHJcbiAgICAgICAgICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjE3NSwgMC44ODUsIDAuMzIwLCAxKTtcclxuICB9XHJcbn1cclxuXHJcbi56b29tSW5SaWdodCB7XHJcbiAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogem9vbUluUmlnaHQ7XHJcbiAgICAgICAgICBhbmltYXRpb24tbmFtZTogem9vbUluUmlnaHQ7XHJcbn1cclxuXHJcbkAtd2Via2l0LWtleWZyYW1lcyB6b29tSW5VcCB7XHJcbiAgMCUge1xyXG4gICAgb3BhY2l0eTogMDtcclxuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNkKC4xLCAuMSwgLjEpIHRyYW5zbGF0ZTNkKDAsIDEwMDBweCwgMCk7XHJcbiAgICAgICAgICAgIHRyYW5zZm9ybTogc2NhbGUzZCguMSwgLjEsIC4xKSB0cmFuc2xhdGUzZCgwLCAxMDAwcHgsIDApO1xyXG4gICAgLXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC41NTAsIDAuMDU1LCAwLjY3NSwgMC4xOTApO1xyXG4gICAgICAgICAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC41NTAsIDAuMDU1LCAwLjY3NSwgMC4xOTApO1xyXG4gIH1cclxuXHJcbiAgNjAlIHtcclxuICAgIG9wYWNpdHk6IDE7XHJcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUzZCguNDc1LCAuNDc1LCAuNDc1KSB0cmFuc2xhdGUzZCgwLCAtNjBweCwgMCk7XHJcbiAgICAgICAgICAgIHRyYW5zZm9ybTogc2NhbGUzZCguNDc1LCAuNDc1LCAuNDc1KSB0cmFuc2xhdGUzZCgwLCAtNjBweCwgMCk7XHJcbiAgICAtd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjE3NSwgMC44ODUsIDAuMzIwLCAxKTtcclxuICAgICAgICAgICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuMTc1LCAwLjg4NSwgMC4zMjAsIDEpO1xyXG4gIH1cclxufVxyXG5cclxuQGtleWZyYW1lcyB6b29tSW5VcCB7XHJcbiAgMCUge1xyXG4gICAgb3BhY2l0eTogMDtcclxuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNkKC4xLCAuMSwgLjEpIHRyYW5zbGF0ZTNkKDAsIDEwMDBweCwgMCk7XHJcbiAgICAgICAgICAgIHRyYW5zZm9ybTogc2NhbGUzZCguMSwgLjEsIC4xKSB0cmFuc2xhdGUzZCgwLCAxMDAwcHgsIDApO1xyXG4gICAgLXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC41NTAsIDAuMDU1LCAwLjY3NSwgMC4xOTApO1xyXG4gICAgICAgICAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC41NTAsIDAuMDU1LCAwLjY3NSwgMC4xOTApO1xyXG4gIH1cclxuXHJcbiAgNjAlIHtcclxuICAgIG9wYWNpdHk6IDE7XHJcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUzZCguNDc1LCAuNDc1LCAuNDc1KSB0cmFuc2xhdGUzZCgwLCAtNjBweCwgMCk7XHJcbiAgICAgICAgICAgIHRyYW5zZm9ybTogc2NhbGUzZCguNDc1LCAuNDc1LCAuNDc1KSB0cmFuc2xhdGUzZCgwLCAtNjBweCwgMCk7XHJcbiAgICAtd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjE3NSwgMC44ODUsIDAuMzIwLCAxKTtcclxuICAgICAgICAgICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuMTc1LCAwLjg4NSwgMC4zMjAsIDEpO1xyXG4gIH1cclxufVxyXG5cclxuLnpvb21JblVwIHtcclxuICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiB6b29tSW5VcDtcclxuICAgICAgICAgIGFuaW1hdGlvbi1uYW1lOiB6b29tSW5VcDtcclxufVxyXG5cclxuQC13ZWJraXQta2V5ZnJhbWVzIHpvb21PdXQge1xyXG4gIDAlIHtcclxuICAgIG9wYWNpdHk6IDE7XHJcbiAgfVxyXG5cclxuICA1MCUge1xyXG4gICAgb3BhY2l0eTogMDtcclxuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNkKC4zLCAuMywgLjMpO1xyXG4gICAgICAgICAgICB0cmFuc2Zvcm06IHNjYWxlM2QoLjMsIC4zLCAuMyk7XHJcbiAgfVxyXG5cclxuICAxMDAlIHtcclxuICAgIG9wYWNpdHk6IDA7XHJcbiAgfVxyXG59XHJcblxyXG5Aa2V5ZnJhbWVzIHpvb21PdXQge1xyXG4gIDAlIHtcclxuICAgIG9wYWNpdHk6IDE7XHJcbiAgfVxyXG5cclxuICA1MCUge1xyXG4gICAgb3BhY2l0eTogMDtcclxuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNkKC4zLCAuMywgLjMpO1xyXG4gICAgICAgICAgICB0cmFuc2Zvcm06IHNjYWxlM2QoLjMsIC4zLCAuMyk7XHJcbiAgfVxyXG5cclxuICAxMDAlIHtcclxuICAgIG9wYWNpdHk6IDA7XHJcbiAgfVxyXG59XHJcblxyXG4uem9vbU91dCB7XHJcbiAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogem9vbU91dDtcclxuICAgICAgICAgIGFuaW1hdGlvbi1uYW1lOiB6b29tT3V0O1xyXG59XHJcblxyXG5ALXdlYmtpdC1rZXlmcmFtZXMgem9vbU91dERvd24ge1xyXG4gIDQwJSB7XHJcbiAgICBvcGFjaXR5OiAxO1xyXG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlM2QoLjQ3NSwgLjQ3NSwgLjQ3NSkgdHJhbnNsYXRlM2QoMCwgLTYwcHgsIDApO1xyXG4gICAgICAgICAgICB0cmFuc2Zvcm06IHNjYWxlM2QoLjQ3NSwgLjQ3NSwgLjQ3NSkgdHJhbnNsYXRlM2QoMCwgLTYwcHgsIDApO1xyXG4gICAgLXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC41NTAsIDAuMDU1LCAwLjY3NSwgMC4xOTApO1xyXG4gICAgICAgICAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC41NTAsIDAuMDU1LCAwLjY3NSwgMC4xOTApO1xyXG4gIH1cclxuXHJcbiAgMTAwJSB7XHJcbiAgICBvcGFjaXR5OiAwO1xyXG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlM2QoLjEsIC4xLCAuMSkgdHJhbnNsYXRlM2QoMCwgMjAwMHB4LCAwKTtcclxuICAgICAgICAgICAgdHJhbnNmb3JtOiBzY2FsZTNkKC4xLCAuMSwgLjEpIHRyYW5zbGF0ZTNkKDAsIDIwMDBweCwgMCk7XHJcbiAgICAtd2Via2l0LXRyYW5zZm9ybS1vcmlnaW46IGNlbnRlciBib3R0b207XHJcbiAgICAgICAgICAgIHRyYW5zZm9ybS1vcmlnaW46IGNlbnRlciBib3R0b207XHJcbiAgICAtd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjE3NSwgMC44ODUsIDAuMzIwLCAxKTtcclxuICAgICAgICAgICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuMTc1LCAwLjg4NSwgMC4zMjAsIDEpO1xyXG4gIH1cclxufVxyXG5cclxuQGtleWZyYW1lcyB6b29tT3V0RG93biB7XHJcbiAgNDAlIHtcclxuICAgIG9wYWNpdHk6IDE7XHJcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUzZCguNDc1LCAuNDc1LCAuNDc1KSB0cmFuc2xhdGUzZCgwLCAtNjBweCwgMCk7XHJcbiAgICAgICAgICAgIHRyYW5zZm9ybTogc2NhbGUzZCguNDc1LCAuNDc1LCAuNDc1KSB0cmFuc2xhdGUzZCgwLCAtNjBweCwgMCk7XHJcbiAgICAtd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjU1MCwgMC4wNTUsIDAuNjc1LCAwLjE5MCk7XHJcbiAgICAgICAgICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjU1MCwgMC4wNTUsIDAuNjc1LCAwLjE5MCk7XHJcbiAgfVxyXG5cclxuICAxMDAlIHtcclxuICAgIG9wYWNpdHk6IDA7XHJcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUzZCguMSwgLjEsIC4xKSB0cmFuc2xhdGUzZCgwLCAyMDAwcHgsIDApO1xyXG4gICAgICAgICAgICB0cmFuc2Zvcm06IHNjYWxlM2QoLjEsIC4xLCAuMSkgdHJhbnNsYXRlM2QoMCwgMjAwMHB4LCAwKTtcclxuICAgIC13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjogY2VudGVyIGJvdHRvbTtcclxuICAgICAgICAgICAgdHJhbnNmb3JtLW9yaWdpbjogY2VudGVyIGJvdHRvbTtcclxuICAgIC13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuMTc1LCAwLjg4NSwgMC4zMjAsIDEpO1xyXG4gICAgICAgICAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC4xNzUsIDAuODg1LCAwLjMyMCwgMSk7XHJcbiAgfVxyXG59XHJcblxyXG4uem9vbU91dERvd24ge1xyXG4gIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IHpvb21PdXREb3duO1xyXG4gICAgICAgICAgYW5pbWF0aW9uLW5hbWU6IHpvb21PdXREb3duO1xyXG59XHJcblxyXG5ALXdlYmtpdC1rZXlmcmFtZXMgem9vbU91dExlZnQge1xyXG4gIDQwJSB7XHJcbiAgICBvcGFjaXR5OiAxO1xyXG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlM2QoLjQ3NSwgLjQ3NSwgLjQ3NSkgdHJhbnNsYXRlM2QoNDJweCwgMCwgMCk7XHJcbiAgICAgICAgICAgIHRyYW5zZm9ybTogc2NhbGUzZCguNDc1LCAuNDc1LCAuNDc1KSB0cmFuc2xhdGUzZCg0MnB4LCAwLCAwKTtcclxuICB9XHJcblxyXG4gIDEwMCUge1xyXG4gICAgb3BhY2l0eTogMDtcclxuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSguMSkgdHJhbnNsYXRlM2QoLTIwMDBweCwgMCwgMCk7XHJcbiAgICAgICAgICAgIHRyYW5zZm9ybTogc2NhbGUoLjEpIHRyYW5zbGF0ZTNkKC0yMDAwcHgsIDAsIDApO1xyXG4gICAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiBsZWZ0IGNlbnRlcjtcclxuICAgICAgICAgICAgdHJhbnNmb3JtLW9yaWdpbjogbGVmdCBjZW50ZXI7XHJcbiAgfVxyXG59XHJcblxyXG5Aa2V5ZnJhbWVzIHpvb21PdXRMZWZ0IHtcclxuICA0MCUge1xyXG4gICAgb3BhY2l0eTogMTtcclxuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNkKC40NzUsIC40NzUsIC40NzUpIHRyYW5zbGF0ZTNkKDQycHgsIDAsIDApO1xyXG4gICAgICAgICAgICB0cmFuc2Zvcm06IHNjYWxlM2QoLjQ3NSwgLjQ3NSwgLjQ3NSkgdHJhbnNsYXRlM2QoNDJweCwgMCwgMCk7XHJcbiAgfVxyXG5cclxuICAxMDAlIHtcclxuICAgIG9wYWNpdHk6IDA7XHJcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoLjEpIHRyYW5zbGF0ZTNkKC0yMDAwcHgsIDAsIDApO1xyXG4gICAgICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKC4xKSB0cmFuc2xhdGUzZCgtMjAwMHB4LCAwLCAwKTtcclxuICAgIC13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjogbGVmdCBjZW50ZXI7XHJcbiAgICAgICAgICAgIHRyYW5zZm9ybS1vcmlnaW46IGxlZnQgY2VudGVyO1xyXG4gIH1cclxufVxyXG5cclxuLnpvb21PdXRMZWZ0IHtcclxuICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiB6b29tT3V0TGVmdDtcclxuICAgICAgICAgIGFuaW1hdGlvbi1uYW1lOiB6b29tT3V0TGVmdDtcclxufVxyXG5cclxuQC13ZWJraXQta2V5ZnJhbWVzIHpvb21PdXRSaWdodCB7XHJcbiAgNDAlIHtcclxuICAgIG9wYWNpdHk6IDE7XHJcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUzZCguNDc1LCAuNDc1LCAuNDc1KSB0cmFuc2xhdGUzZCgtNDJweCwgMCwgMCk7XHJcbiAgICAgICAgICAgIHRyYW5zZm9ybTogc2NhbGUzZCguNDc1LCAuNDc1LCAuNDc1KSB0cmFuc2xhdGUzZCgtNDJweCwgMCwgMCk7XHJcbiAgfVxyXG5cclxuICAxMDAlIHtcclxuICAgIG9wYWNpdHk6IDA7XHJcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoLjEpIHRyYW5zbGF0ZTNkKDIwMDBweCwgMCwgMCk7XHJcbiAgICAgICAgICAgIHRyYW5zZm9ybTogc2NhbGUoLjEpIHRyYW5zbGF0ZTNkKDIwMDBweCwgMCwgMCk7XHJcbiAgICAtd2Via2l0LXRyYW5zZm9ybS1vcmlnaW46IHJpZ2h0IGNlbnRlcjtcclxuICAgICAgICAgICAgdHJhbnNmb3JtLW9yaWdpbjogcmlnaHQgY2VudGVyO1xyXG4gIH1cclxufVxyXG5cclxuQGtleWZyYW1lcyB6b29tT3V0UmlnaHQge1xyXG4gIDQwJSB7XHJcbiAgICBvcGFjaXR5OiAxO1xyXG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlM2QoLjQ3NSwgLjQ3NSwgLjQ3NSkgdHJhbnNsYXRlM2QoLTQycHgsIDAsIDApO1xyXG4gICAgICAgICAgICB0cmFuc2Zvcm06IHNjYWxlM2QoLjQ3NSwgLjQ3NSwgLjQ3NSkgdHJhbnNsYXRlM2QoLTQycHgsIDAsIDApO1xyXG4gIH1cclxuXHJcbiAgMTAwJSB7XHJcbiAgICBvcGFjaXR5OiAwO1xyXG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKC4xKSB0cmFuc2xhdGUzZCgyMDAwcHgsIDAsIDApO1xyXG4gICAgICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKC4xKSB0cmFuc2xhdGUzZCgyMDAwcHgsIDAsIDApO1xyXG4gICAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiByaWdodCBjZW50ZXI7XHJcbiAgICAgICAgICAgIHRyYW5zZm9ybS1vcmlnaW46IHJpZ2h0IGNlbnRlcjtcclxuICB9XHJcbn1cclxuXHJcbi56b29tT3V0UmlnaHQge1xyXG4gIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IHpvb21PdXRSaWdodDtcclxuICAgICAgICAgIGFuaW1hdGlvbi1uYW1lOiB6b29tT3V0UmlnaHQ7XHJcbn1cclxuXHJcbkAtd2Via2l0LWtleWZyYW1lcyB6b29tT3V0VXAge1xyXG4gIDQwJSB7XHJcbiAgICBvcGFjaXR5OiAxO1xyXG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlM2QoLjQ3NSwgLjQ3NSwgLjQ3NSkgdHJhbnNsYXRlM2QoMCwgNjBweCwgMCk7XHJcbiAgICAgICAgICAgIHRyYW5zZm9ybTogc2NhbGUzZCguNDc1LCAuNDc1LCAuNDc1KSB0cmFuc2xhdGUzZCgwLCA2MHB4LCAwKTtcclxuICAgIC13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuNTUwLCAwLjA1NSwgMC42NzUsIDAuMTkwKTtcclxuICAgICAgICAgICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuNTUwLCAwLjA1NSwgMC42NzUsIDAuMTkwKTtcclxuICB9XHJcblxyXG4gIDEwMCUge1xyXG4gICAgb3BhY2l0eTogMDtcclxuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNkKC4xLCAuMSwgLjEpIHRyYW5zbGF0ZTNkKDAsIC0yMDAwcHgsIDApO1xyXG4gICAgICAgICAgICB0cmFuc2Zvcm06IHNjYWxlM2QoLjEsIC4xLCAuMSkgdHJhbnNsYXRlM2QoMCwgLTIwMDBweCwgMCk7XHJcbiAgICAtd2Via2l0LXRyYW5zZm9ybS1vcmlnaW46IGNlbnRlciBib3R0b207XHJcbiAgICAgICAgICAgIHRyYW5zZm9ybS1vcmlnaW46IGNlbnRlciBib3R0b207XHJcbiAgICAtd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjE3NSwgMC44ODUsIDAuMzIwLCAxKTtcclxuICAgICAgICAgICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuMTc1LCAwLjg4NSwgMC4zMjAsIDEpO1xyXG4gIH1cclxufVxyXG5cclxuQGtleWZyYW1lcyB6b29tT3V0VXAge1xyXG4gIDQwJSB7XHJcbiAgICBvcGFjaXR5OiAxO1xyXG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlM2QoLjQ3NSwgLjQ3NSwgLjQ3NSkgdHJhbnNsYXRlM2QoMCwgNjBweCwgMCk7XHJcbiAgICAgICAgICAgIHRyYW5zZm9ybTogc2NhbGUzZCguNDc1LCAuNDc1LCAuNDc1KSB0cmFuc2xhdGUzZCgwLCA2MHB4LCAwKTtcclxuICAgIC13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuNTUwLCAwLjA1NSwgMC42NzUsIDAuMTkwKTtcclxuICAgICAgICAgICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuNTUwLCAwLjA1NSwgMC42NzUsIDAuMTkwKTtcclxuICB9XHJcblxyXG4gIDEwMCUge1xyXG4gICAgb3BhY2l0eTogMDtcclxuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNkKC4xLCAuMSwgLjEpIHRyYW5zbGF0ZTNkKDAsIC0yMDAwcHgsIDApO1xyXG4gICAgICAgICAgICB0cmFuc2Zvcm06IHNjYWxlM2QoLjEsIC4xLCAuMSkgdHJhbnNsYXRlM2QoMCwgLTIwMDBweCwgMCk7XHJcbiAgICAtd2Via2l0LXRyYW5zZm9ybS1vcmlnaW46IGNlbnRlciBib3R0b207XHJcbiAgICAgICAgICAgIHRyYW5zZm9ybS1vcmlnaW46IGNlbnRlciBib3R0b207XHJcbiAgICAtd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjE3NSwgMC44ODUsIDAuMzIwLCAxKTtcclxuICAgICAgICAgICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuMTc1LCAwLjg4NSwgMC4zMjAsIDEpO1xyXG4gIH1cclxufVxyXG5cclxuLnpvb21PdXRVcCB7XHJcbiAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogem9vbU91dFVwO1xyXG4gICAgICAgICAgYW5pbWF0aW9uLW5hbWU6IHpvb21PdXRVcDtcclxufVxyXG5cclxuQC13ZWJraXQta2V5ZnJhbWVzIHNsaWRlSW5Eb3duIHtcclxuICAwJSB7XHJcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMTAwJSk7XHJcbiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMTAwJSk7XHJcbiAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xyXG4gIH1cclxuXHJcbiAgMTAwJSB7XHJcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcclxuICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xyXG4gIH1cclxufVxyXG5cclxuQGtleWZyYW1lcyBzbGlkZUluRG93biB7XHJcbiAgMCUge1xyXG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTEwMCUpO1xyXG4gICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTEwMCUpO1xyXG4gICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcclxuICB9XHJcblxyXG4gIDEwMCUge1xyXG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XHJcbiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcclxuICB9XHJcbn1cclxuXHJcbi5zbGlkZUluRG93biB7XHJcbiAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogc2xpZGVJbkRvd247XHJcbiAgICAgICAgICBhbmltYXRpb24tbmFtZTogc2xpZGVJbkRvd247XHJcbn1cclxuXHJcbkAtd2Via2l0LWtleWZyYW1lcyBzbGlkZUluTGVmdCB7XHJcbiAgMCUge1xyXG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTEwMCUpO1xyXG4gICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTEwMCUpO1xyXG4gICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcclxuICB9XHJcblxyXG4gIDEwMCUge1xyXG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCk7XHJcbiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKTtcclxuICB9XHJcbn1cclxuXHJcbkBrZXlmcmFtZXMgc2xpZGVJbkxlZnQge1xyXG4gIDAlIHtcclxuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0xMDAlKTtcclxuICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0xMDAlKTtcclxuICAgIHZpc2liaWxpdHk6IHZpc2libGU7XHJcbiAgfVxyXG5cclxuICAxMDAlIHtcclxuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApO1xyXG4gICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCk7XHJcbiAgfVxyXG59XHJcblxyXG4uc2xpZGVJbkxlZnQge1xyXG4gIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IHNsaWRlSW5MZWZ0O1xyXG4gICAgICAgICAgYW5pbWF0aW9uLW5hbWU6IHNsaWRlSW5MZWZ0O1xyXG59XHJcblxyXG5ALXdlYmtpdC1rZXlmcmFtZXMgc2xpZGVJblJpZ2h0IHtcclxuICAwJSB7XHJcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgxMDAlKTtcclxuICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDEwMCUpO1xyXG4gICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcclxuICB9XHJcblxyXG4gIDEwMCUge1xyXG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCk7XHJcbiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKTtcclxuICB9XHJcbn1cclxuXHJcbkBrZXlmcmFtZXMgc2xpZGVJblJpZ2h0IHtcclxuICAwJSB7XHJcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgxMDAlKTtcclxuICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDEwMCUpO1xyXG4gICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcclxuICB9XHJcblxyXG4gIDEwMCUge1xyXG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCk7XHJcbiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKTtcclxuICB9XHJcbn1cclxuXHJcbi5zbGlkZUluUmlnaHQge1xyXG4gIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IHNsaWRlSW5SaWdodDtcclxuICAgICAgICAgIGFuaW1hdGlvbi1uYW1lOiBzbGlkZUluUmlnaHQ7XHJcbn1cclxuXHJcbkAtd2Via2l0LWtleWZyYW1lcyBzbGlkZUluVXAge1xyXG4gIDAlIHtcclxuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDEwMCUpO1xyXG4gICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMTAwJSk7XHJcbiAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xyXG4gIH1cclxuXHJcbiAgMTAwJSB7XHJcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcclxuICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xyXG4gIH1cclxufVxyXG5cclxuQGtleWZyYW1lcyBzbGlkZUluVXAge1xyXG4gIDAlIHtcclxuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDEwMCUpO1xyXG4gICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMTAwJSk7XHJcbiAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xyXG4gIH1cclxuXHJcbiAgMTAwJSB7XHJcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcclxuICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xyXG4gIH1cclxufVxyXG5cclxuLnNsaWRlSW5VcCB7XHJcbiAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogc2xpZGVJblVwO1xyXG4gICAgICAgICAgYW5pbWF0aW9uLW5hbWU6IHNsaWRlSW5VcDtcclxufVxyXG5cclxuQC13ZWJraXQta2V5ZnJhbWVzIHNsaWRlT3V0RG93biB7XHJcbiAgMCUge1xyXG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XHJcbiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcclxuICB9XHJcblxyXG4gIDEwMCUge1xyXG4gICAgdmlzaWJpbGl0eTogaGlkZGVuO1xyXG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMTAwJSk7XHJcbiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgxMDAlKTtcclxuICB9XHJcbn1cclxuXHJcbkBrZXlmcmFtZXMgc2xpZGVPdXREb3duIHtcclxuICAwJSB7XHJcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcclxuICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xyXG4gIH1cclxuXHJcbiAgMTAwJSB7XHJcbiAgICB2aXNpYmlsaXR5OiBoaWRkZW47XHJcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgxMDAlKTtcclxuICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDEwMCUpO1xyXG4gIH1cclxufVxyXG5cclxuLnNsaWRlT3V0RG93biB7XHJcbiAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogc2xpZGVPdXREb3duO1xyXG4gICAgICAgICAgYW5pbWF0aW9uLW5hbWU6IHNsaWRlT3V0RG93bjtcclxufVxyXG5cclxuQC13ZWJraXQta2V5ZnJhbWVzIHNsaWRlT3V0TGVmdCB7XHJcbiAgMCUge1xyXG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCk7XHJcbiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKTtcclxuICB9XHJcblxyXG4gIDEwMCUge1xyXG4gICAgdmlzaWJpbGl0eTogaGlkZGVuO1xyXG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTEwMCUpO1xyXG4gICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTEwMCUpO1xyXG4gIH1cclxufVxyXG5cclxuQGtleWZyYW1lcyBzbGlkZU91dExlZnQge1xyXG4gIDAlIHtcclxuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApO1xyXG4gICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCk7XHJcbiAgfVxyXG5cclxuICAxMDAlIHtcclxuICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcclxuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0xMDAlKTtcclxuICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0xMDAlKTtcclxuICB9XHJcbn1cclxuXHJcbi5zbGlkZU91dExlZnQge1xyXG4gIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IHNsaWRlT3V0TGVmdDtcclxuICAgICAgICAgIGFuaW1hdGlvbi1uYW1lOiBzbGlkZU91dExlZnQ7XHJcbn1cclxuXHJcbkAtd2Via2l0LWtleWZyYW1lcyBzbGlkZU91dFJpZ2h0IHtcclxuICAwJSB7XHJcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKTtcclxuICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApO1xyXG4gIH1cclxuXHJcbiAgMTAwJSB7XHJcbiAgICB2aXNpYmlsaXR5OiBoaWRkZW47XHJcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgxMDAlKTtcclxuICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDEwMCUpO1xyXG4gIH1cclxufVxyXG5cclxuQGtleWZyYW1lcyBzbGlkZU91dFJpZ2h0IHtcclxuICAwJSB7XHJcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKTtcclxuICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApO1xyXG4gIH1cclxuXHJcbiAgMTAwJSB7XHJcbiAgICB2aXNpYmlsaXR5OiBoaWRkZW47XHJcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgxMDAlKTtcclxuICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDEwMCUpO1xyXG4gIH1cclxufVxyXG5cclxuLnNsaWRlT3V0UmlnaHQge1xyXG4gIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IHNsaWRlT3V0UmlnaHQ7XHJcbiAgICAgICAgICBhbmltYXRpb24tbmFtZTogc2xpZGVPdXRSaWdodDtcclxufVxyXG5cclxuQC13ZWJraXQta2V5ZnJhbWVzIHNsaWRlT3V0VXAge1xyXG4gIDAlIHtcclxuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xyXG4gICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XHJcbiAgfVxyXG5cclxuICAxMDAlIHtcclxuICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcclxuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xMDAlKTtcclxuICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xMDAlKTtcclxuICB9XHJcbn1cclxuXHJcbkBrZXlmcmFtZXMgc2xpZGVPdXRVcCB7XHJcbiAgMCUge1xyXG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XHJcbiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcclxuICB9XHJcblxyXG4gIDEwMCUge1xyXG4gICAgdmlzaWJpbGl0eTogaGlkZGVuO1xyXG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTEwMCUpO1xyXG4gICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTEwMCUpO1xyXG4gIH1cclxufVxyXG5cclxuLnNsaWRlT3V0VXAge1xyXG4gIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IHNsaWRlT3V0VXA7XHJcbiAgICAgICAgICBhbmltYXRpb24tbmFtZTogc2xpZGVPdXRVcDtcclxufVxyXG4iLCIvKiBcclxuICogXHRDb3JlIE93bCBDYXJvdXNlbCBDU1MgRmlsZVxyXG4gKlx0djEuMy4zXHJcbiAqL1xyXG5cclxuLyogY2xlYXJmaXggKi9cclxuLm93bC1jYXJvdXNlbCAub3dsLXdyYXBwZXI6YWZ0ZXIge1xyXG5cdGNvbnRlbnQ6IFwiLlwiO1xyXG5cdGRpc3BsYXk6IGJsb2NrO1xyXG5cdGNsZWFyOiBib3RoO1xyXG5cdHZpc2liaWxpdHk6IGhpZGRlbjtcclxuXHRsaW5lLWhlaWdodDogMDtcclxuXHRoZWlnaHQ6IDA7XHJcbn1cclxuLyogZGlzcGxheSBub25lIHVudGlsIGluaXQgKi9cclxuLm93bC1jYXJvdXNlbHtcclxuXHRkaXNwbGF5OiBub25lO1xyXG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHR3aWR0aDogMTAwJTtcclxuXHQtbXMtdG91Y2gtYWN0aW9uOiBwYW4teTtcclxufVxyXG4ub3dsLWNhcm91c2VsIC5vd2wtd3JhcHBlcntcclxuXHRkaXNwbGF5OiBub25lO1xyXG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHQtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMHB4LCAwcHgsIDBweCk7XHJcbn1cclxuLm93bC1jYXJvdXNlbCAub3dsLXdyYXBwZXItb3V0ZXJ7XHJcblx0b3ZlcmZsb3c6IGhpZGRlbjtcclxuXHRwb3NpdGlvbjogcmVsYXRpdmU7XHJcblx0d2lkdGg6IDEwMCU7XHJcbn1cclxuLm93bC1jYXJvdXNlbCAub3dsLXdyYXBwZXItb3V0ZXIuYXV0b0hlaWdodHtcclxuXHQtd2Via2l0LXRyYW5zaXRpb246IGhlaWdodCA1MDBtcyBlYXNlLWluLW91dDtcclxuXHQtbW96LXRyYW5zaXRpb246IGhlaWdodCA1MDBtcyBlYXNlLWluLW91dDtcclxuXHQtbXMtdHJhbnNpdGlvbjogaGVpZ2h0IDUwMG1zIGVhc2UtaW4tb3V0O1xyXG5cdC1vLXRyYW5zaXRpb246IGhlaWdodCA1MDBtcyBlYXNlLWluLW91dDtcclxuXHR0cmFuc2l0aW9uOiBoZWlnaHQgNTAwbXMgZWFzZS1pbi1vdXQ7XHJcbn1cclxuXHRcclxuLm93bC1jYXJvdXNlbCAub3dsLWl0ZW17XHJcblx0ZmxvYXQ6IGxlZnQ7XHJcbn1cclxuLm93bC1jb250cm9scyAub3dsLXBhZ2UsXHJcbi5vd2wtY29udHJvbHMgLm93bC1idXR0b25zIGRpdntcclxuXHRjdXJzb3I6IHBvaW50ZXI7XHJcbn1cclxuLm93bC1jb250cm9scyB7XHJcblx0LXdlYmtpdC11c2VyLXNlbGVjdDogbm9uZTtcclxuXHQta2h0bWwtdXNlci1zZWxlY3Q6IG5vbmU7XHJcblx0LW1vei11c2VyLXNlbGVjdDogbm9uZTtcclxuXHQtbXMtdXNlci1zZWxlY3Q6IG5vbmU7XHJcblx0dXNlci1zZWxlY3Q6IG5vbmU7XHJcblx0LXdlYmtpdC10YXAtaGlnaGxpZ2h0LWNvbG9yOiByZ2JhKDAsIDAsIDAsIDApO1xyXG59XHJcblxyXG4vKiBtb3VzZSBncmFiIGljb24gKi9cclxuLy8uZ3JhYmJpbmcge1xyXG4vLyAgICBjdXJzb3I6dXJsKGdyYWJiaW5nLnBuZykgOCA4LCBtb3ZlO1xyXG4vL31cclxuXHJcbi8qIGZpeCAqL1xyXG4ub3dsLWNhcm91c2VsICAub3dsLXdyYXBwZXIsXHJcbi5vd2wtY2Fyb3VzZWwgIC5vd2wtaXRlbXtcclxuXHQtd2Via2l0LWJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcclxuXHQtbW96LWJhY2tmYWNlLXZpc2liaWxpdHk6ICAgIGhpZGRlbjtcclxuXHQtbXMtYmFja2ZhY2UtdmlzaWJpbGl0eTogICAgIGhpZGRlbjtcclxuICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwwLDApO1xyXG4gIC1tb3otdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLDAsMCk7XHJcbiAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwwLDApO1xyXG59XHJcblxyXG4iLCIvKlxyXG4qIFx0T3dsIENhcm91c2VsIE93bCBEZW1vIFRoZW1lIFxyXG4qXHR2MS4zLjNcclxuKi9cclxuXHJcbi5vd2wtdGhlbWUgLm93bC1jb250cm9sc3tcclxuXHRtYXJnaW4tdG9wOiAxMHB4O1xyXG5cdHRleHQtYWxpZ246IGNlbnRlcjtcclxufVxyXG5cclxuLyogU3R5bGluZyBOZXh0IGFuZCBQcmV2IGJ1dHRvbnMgKi9cclxuXHJcbi5vd2wtdGhlbWUgLm93bC1jb250cm9scyAub3dsLWJ1dHRvbnMgZGl2e1xyXG5cdGNvbG9yOiAjRkZGO1xyXG5cdGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuXHR6b29tOiAxO1xyXG5cdCpkaXNwbGF5OiBpbmxpbmU7LypJRTcgbGlmZS1zYXZlciAqL1xyXG5cdG1hcmdpbjogNXB4O1xyXG5cdHBhZGRpbmc6IDNweCAxMHB4O1xyXG5cdGZvbnQtc2l6ZTogMTJweDtcclxuXHQtd2Via2l0LWJvcmRlci1yYWRpdXM6IDMwcHg7XHJcblx0LW1vei1ib3JkZXItcmFkaXVzOiAzMHB4O1xyXG5cdGJvcmRlci1yYWRpdXM6IDMwcHg7XHJcblx0YmFja2dyb3VuZDogIzg2OTc5MTtcclxuXHRmaWx0ZXI6IEFscGhhKE9wYWNpdHk9NTApOy8qSUU3IGZpeCovXHJcblx0b3BhY2l0eTogMC41O1xyXG59XHJcbi8qIENsaWNrYWJsZSBjbGFzcyBmaXggcHJvYmxlbSB3aXRoIGhvdmVyIG9uIHRvdWNoIGRldmljZXMgKi9cclxuLyogVXNlIGl0IGZvciBub24tdG91Y2ggaG92ZXIgYWN0aW9uICovXHJcbi5vd2wtdGhlbWUgLm93bC1jb250cm9scy5jbGlja2FibGUgLm93bC1idXR0b25zIGRpdjpob3ZlcntcclxuXHRmaWx0ZXI6IEFscGhhKE9wYWNpdHk9MTAwKTsvKklFNyBmaXgqL1xyXG5cdG9wYWNpdHk6IDE7XHJcblx0dGV4dC1kZWNvcmF0aW9uOiBub25lO1xyXG59XHJcblxyXG4vKiBTdHlsaW5nIFBhZ2luYXRpb24qL1xyXG5cclxuLm93bC10aGVtZSAub3dsLWNvbnRyb2xzIC5vd2wtcGFnZXtcclxuXHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcblx0em9vbTogMTtcclxuXHQqZGlzcGxheTogaW5saW5lOy8qSUU3IGxpZmUtc2F2ZXIgKi9cclxufVxyXG4ub3dsLXRoZW1lIC5vd2wtY29udHJvbHMgLm93bC1wYWdlIHNwYW57XHJcblx0ZGlzcGxheTogYmxvY2s7XHJcblx0d2lkdGg6IDEycHg7XHJcblx0aGVpZ2h0OiAxMnB4O1xyXG5cdG1hcmdpbjogNXB4IDdweDtcclxuXHRvcGFjaXR5OiAwLjU7XHJcblx0LXdlYmtpdC1ib3JkZXItcmFkaXVzOiAyMHB4O1xyXG5cdC1tb3otYm9yZGVyLXJhZGl1czogMjBweDtcclxuXHRib3JkZXItcmFkaXVzOiAyMHB4O1xyXG5cdGJvcmRlcjogc29saWQgMnB4O1xyXG5cdC13ZWJraXQtdHJhbnNpdGlvbjogYWxsIDIwMG1zIGVhc2U7XHJcblx0LW1vei10cmFuc2l0aW9uOiBhbGwgMjAwbXMgZWFzZTtcclxuXHQtbXMtdHJhbnNpdGlvbjogYWxsIDIwMG1zIGVhc2U7XHJcblx0LW8tdHJhbnNpdGlvbjogYWxsIDIwMG1zIGVhc2U7XHJcblx0dHJhbnNpdGlvbjogYWxsIDIwMG1zIGVhc2U7XHJcbn1cclxuXHJcbi5vd2wtdGhlbWUgLm93bC1jb250cm9scyAub3dsLXBhZ2UuYWN0aXZlIHNwYW4sXHJcbi5vd2wtdGhlbWUgLm93bC1jb250cm9scy5jbGlja2FibGUgLm93bC1wYWdlOmhvdmVyIHNwYW57XHJcblx0b3BhY2l0eTogMTtcdFxyXG59XHJcblxyXG4vKiBJZiBQYWdpbmF0aW9uTnVtYmVycyBpcyB0cnVlICovXHJcblxyXG4ub3dsLXRoZW1lIC5vd2wtY29udHJvbHMgLm93bC1wYWdlIHNwYW4ub3dsLW51bWJlcnN7XHJcblx0aGVpZ2h0OiBhdXRvO1xyXG5cdHdpZHRoOiBhdXRvO1xyXG5cdGNvbG9yOiAjRkZGO1xyXG5cdHBhZGRpbmc6IDJweCAxMHB4O1xyXG5cdGZvbnQtc2l6ZTogMTJweDtcclxuXHQtd2Via2l0LWJvcmRlci1yYWRpdXM6IDMwcHg7XHJcblx0LW1vei1ib3JkZXItcmFkaXVzOiAzMHB4O1xyXG5cdGJvcmRlci1yYWRpdXM6IDMwcHg7XHJcbn1cclxuXHJcbi8qIHByZWxvYWRpbmcgaW1hZ2VzICovXHJcbi5vd2wtaXRlbS5sb2FkaW5ne1xyXG5cdG1pbi1oZWlnaHQ6IDE1MHB4O1xyXG5cdC8vYmFja2dyb3VuZDogdXJsKEFqYXhMb2FkZXIuZ2lmKSBuby1yZXBlYXQgY2VudGVyIGNlbnRlclxyXG59IiwiLyogXHJcbiAqICBPd2wgQ2Fyb3VzZWwgQ1NTMyBUcmFuc2l0aW9ucyBcclxuICogIHYxLjMuMlxyXG4gKi9cclxuXHJcbi5vd2wtb3JpZ2luIHtcclxuXHQtd2Via2l0LXBlcnNwZWN0aXZlOiAxMjAwcHg7XHJcblx0LXdlYmtpdC1wZXJzcGVjdGl2ZS1vcmlnaW4teCA6IDUwJTtcclxuXHQtd2Via2l0LXBlcnNwZWN0aXZlLW9yaWdpbi15IDogNTAlO1xyXG5cdC1tb3otcGVyc3BlY3RpdmUgOiAxMjAwcHg7XHJcblx0LW1vei1wZXJzcGVjdGl2ZS1vcmlnaW4teCA6IDUwJTtcclxuXHQtbW96LXBlcnNwZWN0aXZlLW9yaWdpbi15IDogNTAlO1xyXG5cdHBlcnNwZWN0aXZlIDogMTIwMHB4O1xyXG59XHJcbi8qIGZhZGUgKi9cclxuLm93bC1mYWRlLW91dCB7XHJcbiAgei1pbmRleDogMTA7XHJcbiAgLXdlYmtpdC1hbmltYXRpb246IGZhZGVPdXQgLjdzIGJvdGggZWFzZTtcclxuICAtbW96LWFuaW1hdGlvbjogZmFkZU91dCAuN3MgYm90aCBlYXNlO1xyXG4gIGFuaW1hdGlvbjogZmFkZU91dCAuN3MgYm90aCBlYXNlO1xyXG59XHJcbi5vd2wtZmFkZS1pbiB7XHJcbiAgLXdlYmtpdC1hbmltYXRpb246IGZhZGVJbiAuN3MgYm90aCBlYXNlO1xyXG4gIC1tb3otYW5pbWF0aW9uOiBmYWRlSW4gLjdzIGJvdGggZWFzZTtcclxuICBhbmltYXRpb246IGZhZGVJbiAuN3MgYm90aCBlYXNlO1xyXG59XHJcbi8qIGJhY2tTbGlkZSAqL1xyXG4ub3dsLWJhY2tTbGlkZS1vdXQge1xyXG4gIC13ZWJraXQtYW5pbWF0aW9uOiBiYWNrU2xpZGVPdXQgMXMgYm90aCBlYXNlO1xyXG4gIC1tb3otYW5pbWF0aW9uOiBiYWNrU2xpZGVPdXQgMXMgYm90aCBlYXNlO1xyXG4gIGFuaW1hdGlvbjogYmFja1NsaWRlT3V0IDFzIGJvdGggZWFzZTtcclxufVxyXG4ub3dsLWJhY2tTbGlkZS1pbiB7XHJcbiAgLXdlYmtpdC1hbmltYXRpb246IGJhY2tTbGlkZUluIDFzIGJvdGggZWFzZTtcclxuICAtbW96LWFuaW1hdGlvbjogYmFja1NsaWRlSW4gMXMgYm90aCBlYXNlO1xyXG4gIGFuaW1hdGlvbjogYmFja1NsaWRlSW4gMXMgYm90aCBlYXNlO1xyXG59XHJcbi8qIGdvRG93biAqL1xyXG4ub3dsLWdvRG93bi1vdXQge1xyXG4gIC13ZWJraXQtYW5pbWF0aW9uOiBzY2FsZVRvRmFkZSAuN3MgZWFzZSBib3RoO1xyXG4gIC1tb3otYW5pbWF0aW9uOiBzY2FsZVRvRmFkZSAuN3MgZWFzZSBib3RoO1xyXG4gIGFuaW1hdGlvbjogc2NhbGVUb0ZhZGUgLjdzIGVhc2UgYm90aDtcclxufVxyXG4ub3dsLWdvRG93bi1pbiB7XHJcbiAgLXdlYmtpdC1hbmltYXRpb246IGdvRG93biAuNnMgZWFzZSBib3RoO1xyXG4gIC1tb3otYW5pbWF0aW9uOiBnb0Rvd24gLjZzIGVhc2UgYm90aDtcclxuICBhbmltYXRpb246IGdvRG93biAuNnMgZWFzZSBib3RoO1xyXG59XHJcbi8qIHNjYWxlVXAgKi9cclxuLm93bC1mYWRlVXAtaW4ge1xyXG4gIC13ZWJraXQtYW5pbWF0aW9uOiBzY2FsZVVwRnJvbSAuNXMgZWFzZSBib3RoO1xyXG4gIC1tb3otYW5pbWF0aW9uOiBzY2FsZVVwRnJvbSAuNXMgZWFzZSBib3RoO1xyXG4gIGFuaW1hdGlvbjogc2NhbGVVcEZyb20gLjVzIGVhc2UgYm90aDtcclxufVxyXG5cclxuLm93bC1mYWRlVXAtb3V0IHtcclxuICAtd2Via2l0LWFuaW1hdGlvbjogc2NhbGVVcFRvIC41cyBlYXNlIGJvdGg7XHJcbiAgLW1vei1hbmltYXRpb246IHNjYWxlVXBUbyAuNXMgZWFzZSBib3RoO1xyXG4gIGFuaW1hdGlvbjogc2NhbGVVcFRvIC41cyBlYXNlIGJvdGg7XHJcbn1cclxuLyogS2V5ZnJhbWVzICovXHJcbi8qZW1wdHkqL1xyXG5ALXdlYmtpdC1rZXlmcmFtZXMgZW1wdHkge1xyXG4gIDAlIHtvcGFjaXR5OiAxfVxyXG59XHJcbkAtbW96LWtleWZyYW1lcyBlbXB0eSB7XHJcbiAgMCUge29wYWNpdHk6IDF9XHJcbn1cclxuQGtleWZyYW1lcyBlbXB0eSB7XHJcbiAgMCUge29wYWNpdHk6IDF9XHJcbn1cclxuQC13ZWJraXQta2V5ZnJhbWVzIGZhZGVJbiB7XHJcbiAgMCUgeyBvcGFjaXR5OjA7IH1cclxuICAxMDAlIHsgb3BhY2l0eToxOyB9XHJcbn1cclxuQC1tb3ota2V5ZnJhbWVzIGZhZGVJbiB7XHJcbiAgMCUgeyBvcGFjaXR5OjA7IH1cclxuICAxMDAlIHsgb3BhY2l0eToxOyB9XHJcbn1cclxuQGtleWZyYW1lcyBmYWRlSW4ge1xyXG4gIDAlIHsgb3BhY2l0eTowOyB9XHJcbiAgMTAwJSB7IG9wYWNpdHk6MTsgfVxyXG59XHJcbkAtd2Via2l0LWtleWZyYW1lcyBmYWRlT3V0IHtcclxuICAwJSB7IG9wYWNpdHk6MTsgfVxyXG4gIDEwMCUgeyBvcGFjaXR5OjA7IH1cclxufVxyXG5ALW1vei1rZXlmcmFtZXMgZmFkZU91dCB7XHJcbiAgMCUgeyBvcGFjaXR5OjE7IH1cclxuICAxMDAlIHsgb3BhY2l0eTowOyB9XHJcbn1cclxuQGtleWZyYW1lcyBmYWRlT3V0IHtcclxuICAwJSB7IG9wYWNpdHk6MTsgfVxyXG4gIDEwMCUgeyBvcGFjaXR5OjA7IH1cclxufVxyXG5ALXdlYmtpdC1rZXlmcmFtZXMgYmFja1NsaWRlT3V0IHtcclxuICAyNSUgeyBvcGFjaXR5OiAuNTsgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVooLTUwMHB4KTsgfVxyXG4gIDc1JSB7IG9wYWNpdHk6IC41OyAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWigtNTAwcHgpIHRyYW5zbGF0ZVgoLTIwMCUpOyB9XHJcbiAgMTAwJSB7IG9wYWNpdHk6IC41OyAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWigtNTAwcHgpIHRyYW5zbGF0ZVgoLTIwMCUpOyB9XHJcbn1cclxuQC1tb3ota2V5ZnJhbWVzIGJhY2tTbGlkZU91dCB7XHJcbiAgMjUlIHsgb3BhY2l0eTogLjU7IC1tb3otdHJhbnNmb3JtOiB0cmFuc2xhdGVaKC01MDBweCk7IH1cclxuICA3NSUgeyBvcGFjaXR5OiAuNTsgLW1vei10cmFuc2Zvcm06IHRyYW5zbGF0ZVooLTUwMHB4KSB0cmFuc2xhdGVYKC0yMDAlKTsgfVxyXG4gIDEwMCUgeyBvcGFjaXR5OiAuNTsgLW1vei10cmFuc2Zvcm06IHRyYW5zbGF0ZVooLTUwMHB4KSB0cmFuc2xhdGVYKC0yMDAlKTsgfVxyXG59XHJcbkBrZXlmcmFtZXMgYmFja1NsaWRlT3V0IHtcclxuICAyNSUgeyBvcGFjaXR5OiAuNTsgdHJhbnNmb3JtOiB0cmFuc2xhdGVaKC01MDBweCk7IH1cclxuICA3NSUgeyBvcGFjaXR5OiAuNTsgdHJhbnNmb3JtOiB0cmFuc2xhdGVaKC01MDBweCkgdHJhbnNsYXRlWCgtMjAwJSk7IH1cclxuICAxMDAlIHsgb3BhY2l0eTogLjU7IHRyYW5zZm9ybTogdHJhbnNsYXRlWigtNTAwcHgpIHRyYW5zbGF0ZVgoLTIwMCUpOyB9XHJcbn1cclxuQC13ZWJraXQta2V5ZnJhbWVzIGJhY2tTbGlkZUluIHtcclxuICAwJSwgMjUlIHsgb3BhY2l0eTogLjU7IC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVaKC01MDBweCkgdHJhbnNsYXRlWCgyMDAlKTsgfVxyXG4gIDc1JSB7IG9wYWNpdHk6IC41OyAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWigtNTAwcHgpOyB9XHJcbiAgMTAwJSB7IG9wYWNpdHk6IDE7IC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVaKDApIHRyYW5zbGF0ZVgoMCk7IH1cclxufVxyXG5ALW1vei1rZXlmcmFtZXMgYmFja1NsaWRlSW4ge1xyXG4gIDAlLCAyNSUgeyBvcGFjaXR5OiAuNTsgLW1vei10cmFuc2Zvcm06IHRyYW5zbGF0ZVooLTUwMHB4KSB0cmFuc2xhdGVYKDIwMCUpOyB9XHJcbiAgNzUlIHsgb3BhY2l0eTogLjU7IC1tb3otdHJhbnNmb3JtOiB0cmFuc2xhdGVaKC01MDBweCk7IH1cclxuICAxMDAlIHsgb3BhY2l0eTogMTsgLW1vei10cmFuc2Zvcm06IHRyYW5zbGF0ZVooMCkgdHJhbnNsYXRlWCgwKTsgfVxyXG59XHJcbkBrZXlmcmFtZXMgYmFja1NsaWRlSW4ge1xyXG4gIDAlLCAyNSUgeyBvcGFjaXR5OiAuNTsgdHJhbnNmb3JtOiB0cmFuc2xhdGVaKC01MDBweCkgdHJhbnNsYXRlWCgyMDAlKTsgfVxyXG4gIDc1JSB7IG9wYWNpdHk6IC41OyB0cmFuc2Zvcm06IHRyYW5zbGF0ZVooLTUwMHB4KTsgfVxyXG4gIDEwMCUgeyBvcGFjaXR5OiAxOyB0cmFuc2Zvcm06IHRyYW5zbGF0ZVooMCkgdHJhbnNsYXRlWCgwKTsgfVxyXG59XHJcbkAtd2Via2l0LWtleWZyYW1lcyBzY2FsZVRvRmFkZSB7XHJcbiAgdG8geyBvcGFjaXR5OiAwOyAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoLjgpOyB9XHJcbn1cclxuQC1tb3ota2V5ZnJhbWVzIHNjYWxlVG9GYWRlIHtcclxuICB0byB7IG9wYWNpdHk6IDA7IC1tb3otdHJhbnNmb3JtOiBzY2FsZSguOCk7IH1cclxufVxyXG5Aa2V5ZnJhbWVzIHNjYWxlVG9GYWRlIHtcclxuICB0byB7IG9wYWNpdHk6IDA7IHRyYW5zZm9ybTogc2NhbGUoLjgpOyB9XHJcbn1cclxuQC13ZWJraXQta2V5ZnJhbWVzIGdvRG93biB7XHJcbiAgZnJvbSB7IC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xMDAlKTsgfVxyXG59XHJcbkAtbW96LWtleWZyYW1lcyBnb0Rvd24ge1xyXG4gIGZyb20geyAtbW96LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMTAwJSk7IH1cclxufVxyXG5Aa2V5ZnJhbWVzIGdvRG93biB7XHJcbiAgZnJvbSB7IHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMTAwJSk7IH1cclxufVxyXG5cclxuQC13ZWJraXQta2V5ZnJhbWVzIHNjYWxlVXBGcm9tIHtcclxuICBmcm9tIHsgb3BhY2l0eTogMDsgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDEuNSk7IH1cclxufVxyXG5ALW1vei1rZXlmcmFtZXMgc2NhbGVVcEZyb20ge1xyXG4gIGZyb20geyBvcGFjaXR5OiAwOyAtbW96LXRyYW5zZm9ybTogc2NhbGUoMS41KTsgfVxyXG59XHJcbkBrZXlmcmFtZXMgc2NhbGVVcEZyb20ge1xyXG4gIGZyb20geyBvcGFjaXR5OiAwOyB0cmFuc2Zvcm06IHNjYWxlKDEuNSk7IH1cclxufVxyXG5cclxuQC13ZWJraXQta2V5ZnJhbWVzIHNjYWxlVXBUbyB7XHJcbiAgdG8geyBvcGFjaXR5OiAwOyAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMS41KTsgfVxyXG59XHJcbkAtbW96LWtleWZyYW1lcyBzY2FsZVVwVG8ge1xyXG4gIHRvIHsgb3BhY2l0eTogMDsgLW1vei10cmFuc2Zvcm06IHNjYWxlKDEuNSk7IH1cclxufVxyXG5Aa2V5ZnJhbWVzIHNjYWxlVXBUbyB7XHJcbiAgdG8geyBvcGFjaXR5OiAwOyB0cmFuc2Zvcm06IHNjYWxlKDEuNSk7IH1cclxufSIsIi8qIVxuICogQm9vdHN0cmFwIHY0LjAuMC1hbHBoYS42IChodHRwczovL2dldGJvb3RzdHJhcC5jb20pXG4gKiBDb3B5cmlnaHQgMjAxMS0yMDE3IFRoZSBCb290c3RyYXAgQXV0aG9yc1xuICogQ29weXJpZ2h0IDIwMTEtMjAxNyBUd2l0dGVyLCBJbmMuXG4gKiBMaWNlbnNlZCB1bmRlciBNSVQgKGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9ibG9iL21hc3Rlci9MSUNFTlNFKVxuICovXG5cbi8vIENvcmUgdmFyaWFibGVzIGFuZCBtaXhpbnNcbkBpbXBvcnQgXCJ2YXJpYWJsZXNcIjtcbkBpbXBvcnQgXCJtaXhpbnNcIjtcbkBpbXBvcnQgXCJjdXN0b21cIjtcblxuLy8gUmVzZXQgYW5kIGRlcGVuZGVuY2llc1xuQGltcG9ydCBcIm5vcm1hbGl6ZVwiO1xuQGltcG9ydCBcInByaW50XCI7XG5cbi8vIENvcmUgQ1NTXG5AaW1wb3J0IFwicmVib290XCI7XG5AaW1wb3J0IFwidHlwZVwiO1xuQGltcG9ydCBcImltYWdlc1wiO1xuQGltcG9ydCBcImNvZGVcIjtcbkBpbXBvcnQgXCJncmlkXCI7XG5AaW1wb3J0IFwidGFibGVzXCI7XG5AaW1wb3J0IFwiZm9ybXNcIjtcbkBpbXBvcnQgXCJidXR0b25zXCI7XG5cbi8vIENvbXBvbmVudHNcbkBpbXBvcnQgXCJ0cmFuc2l0aW9uc1wiO1xuQGltcG9ydCBcImRyb3Bkb3duXCI7XG5AaW1wb3J0IFwiYnV0dG9uLWdyb3VwXCI7XG5AaW1wb3J0IFwiaW5wdXQtZ3JvdXBcIjtcbkBpbXBvcnQgXCJjdXN0b20tZm9ybXNcIjtcbkBpbXBvcnQgXCJuYXZcIjtcbkBpbXBvcnQgXCJuYXZiYXJcIjtcbkBpbXBvcnQgXCJjYXJkXCI7XG5AaW1wb3J0IFwiYnJlYWRjcnVtYlwiO1xuQGltcG9ydCBcInBhZ2luYXRpb25cIjtcbkBpbXBvcnQgXCJiYWRnZVwiO1xuQGltcG9ydCBcImp1bWJvdHJvblwiO1xuQGltcG9ydCBcImFsZXJ0XCI7XG5AaW1wb3J0IFwicHJvZ3Jlc3NcIjtcbkBpbXBvcnQgXCJtZWRpYVwiO1xuQGltcG9ydCBcImxpc3QtZ3JvdXBcIjtcbkBpbXBvcnQgXCJyZXNwb25zaXZlLWVtYmVkXCI7XG5AaW1wb3J0IFwiY2xvc2VcIjtcblxuLy8gQ29tcG9uZW50cyB3LyBKYXZhU2NyaXB0XG5AaW1wb3J0IFwibW9kYWxcIjtcbkBpbXBvcnQgXCJ0b29sdGlwXCI7XG5AaW1wb3J0IFwicG9wb3ZlclwiO1xuQGltcG9ydCBcImNhcm91c2VsXCI7XG5cbi8vIFV0aWxpdHkgY2xhc3Nlc1xuQGltcG9ydCBcInV0aWxpdGllc1wiO1xuIiwiLy8gVmFyaWFibGVzXG4vL1xuLy8gQ29weSBzZXR0aW5ncyBmcm9tIHRoaXMgZmlsZSBpbnRvIHRoZSBwcm92aWRlZCBgX2N1c3RvbS5zY3NzYCB0byBvdmVycmlkZVxuLy8gdGhlIEJvb3RzdHJhcCBkZWZhdWx0cyB3aXRob3V0IG1vZGlmeWluZyBrZXksIHZlcnNpb25lZCBmaWxlcy5cblxuXG4vLyBUYWJsZSBvZiBDb250ZW50c1xuLy9cbi8vIENvbG9yc1xuLy8gT3B0aW9uc1xuLy8gU3BhY2luZ1xuLy8gQm9keVxuLy8gTGlua3Ncbi8vIEdyaWQgYnJlYWtwb2ludHNcbi8vIEdyaWQgY29udGFpbmVyc1xuLy8gR3JpZCBjb2x1bW5zXG4vLyBGb250c1xuLy8gQ29tcG9uZW50c1xuLy8gVGFibGVzXG4vLyBCdXR0b25zXG4vLyBGb3Jtc1xuLy8gRHJvcGRvd25zXG4vLyBaLWluZGV4IG1hc3RlciBsaXN0XG4vLyBOYXZiYXJcbi8vIE5hdnNcbi8vIFBhZ2luYXRpb25cbi8vIEp1bWJvdHJvblxuLy8gRm9ybSBzdGF0ZXMgYW5kIGFsZXJ0c1xuLy8gQ2FyZHNcbi8vIFRvb2x0aXBzXG4vLyBQb3BvdmVyc1xuLy8gQmFkZ2VzXG4vLyBNb2RhbHNcbi8vIEFsZXJ0c1xuLy8gUHJvZ3Jlc3MgYmFyc1xuLy8gTGlzdCBncm91cFxuLy8gSW1hZ2UgdGh1bWJuYWlsc1xuLy8gRmlndXJlc1xuLy8gQnJlYWRjcnVtYnNcbi8vIENhcm91c2VsXG4vLyBDbG9zZVxuLy8gQ29kZVxuXG5AbWl4aW4gX2Fzc2VydC1hc2NlbmRpbmcoJG1hcCwgJG1hcC1uYW1lKSB7XG4gICRwcmV2LWtleTogbnVsbDtcbiAgJHByZXYtbnVtOiBudWxsO1xuICBAZWFjaCAka2V5LCAkbnVtIGluICRtYXAge1xuICAgIEBpZiAkcHJldi1udW0gPT0gbnVsbCB7XG4gICAgICAvLyBEbyBub3RoaW5nXG4gICAgfSBAZWxzZSBpZiBub3QgY29tcGFyYWJsZSgkcHJldi1udW0sICRudW0pIHtcbiAgICAgIEB3YXJuIFwiUG90ZW50aWFsbHkgaW52YWxpZCB2YWx1ZSBmb3IgI3skbWFwLW5hbWV9OiBUaGlzIG1hcCBtdXN0IGJlIGluIGFzY2VuZGluZyBvcmRlciwgYnV0IGtleSAnI3ska2V5fScgaGFzIHZhbHVlICN7JG51bX0gd2hvc2UgdW5pdCBtYWtlcyBpdCBpbmNvbXBhcmFibGUgdG8gI3skcHJldi1udW19LCB0aGUgdmFsdWUgb2YgdGhlIHByZXZpb3VzIGtleSAnI3skcHJldi1rZXl9JyAhXCI7XG4gICAgfSBAZWxzZSBpZiAkcHJldi1udW0gPj0gJG51bSB7XG4gICAgICBAd2FybiBcIkludmFsaWQgdmFsdWUgZm9yICN7JG1hcC1uYW1lfTogVGhpcyBtYXAgbXVzdCBiZSBpbiBhc2NlbmRpbmcgb3JkZXIsIGJ1dCBrZXkgJyN7JGtleX0nIGhhcyB2YWx1ZSAjeyRudW19IHdoaWNoIGlzbid0IGdyZWF0ZXIgdGhhbiAjeyRwcmV2LW51bX0sIHRoZSB2YWx1ZSBvZiB0aGUgcHJldmlvdXMga2V5ICcjeyRwcmV2LWtleX0nICFcIjtcbiAgICB9XG4gICAgJHByZXYta2V5OiAka2V5O1xuICAgICRwcmV2LW51bTogJG51bTtcbiAgfVxufVxuXG4vLyBSZXBsYWNlIGAkc2VhcmNoYCB3aXRoIGAkcmVwbGFjZWAgaW4gYCRzdHJpbmdgXG4vLyBAYXV0aG9yIEh1Z28gR2lyYXVkZWxcbi8vIEBwYXJhbSB7U3RyaW5nfSAkc3RyaW5nIC0gSW5pdGlhbCBzdHJpbmdcbi8vIEBwYXJhbSB7U3RyaW5nfSAkc2VhcmNoIC0gU3Vic3RyaW5nIHRvIHJlcGxhY2Vcbi8vIEBwYXJhbSB7U3RyaW5nfSAkcmVwbGFjZSAoJycpIC0gTmV3IHZhbHVlXG4vLyBAcmV0dXJuIHtTdHJpbmd9IC0gVXBkYXRlZCBzdHJpbmdcbkBmdW5jdGlvbiBzdHItcmVwbGFjZSgkc3RyaW5nLCAkc2VhcmNoLCAkcmVwbGFjZTogXCJcIikge1xuICAkaW5kZXg6IHN0ci1pbmRleCgkc3RyaW5nLCAkc2VhcmNoKTtcblxuICBAaWYgJGluZGV4IHtcbiAgICBAcmV0dXJuIHN0ci1zbGljZSgkc3RyaW5nLCAxLCAkaW5kZXggLSAxKSArICRyZXBsYWNlICsgc3RyLXJlcGxhY2Uoc3RyLXNsaWNlKCRzdHJpbmcsICRpbmRleCArIHN0ci1sZW5ndGgoJHNlYXJjaCkpLCAkc2VhcmNoLCAkcmVwbGFjZSk7XG4gIH1cblxuICBAcmV0dXJuICRzdHJpbmc7XG59XG5cbkBtaXhpbiBfYXNzZXJ0LXN0YXJ0cy1hdC16ZXJvKCRtYXApIHtcbiAgJHZhbHVlczogbWFwLXZhbHVlcygkbWFwKTtcbiAgJGZpcnN0LXZhbHVlOiBudGgoJHZhbHVlcywgMSk7XG4gIEBpZiAkZmlyc3QtdmFsdWUgIT0gMCB7XG4gICAgQHdhcm4gXCJGaXJzdCBicmVha3BvaW50IGluIGAkZ3JpZC1icmVha3BvaW50c2AgbXVzdCBzdGFydCBhdCAwLCBidXQgc3RhcnRzIGF0ICN7JGZpcnN0LXZhbHVlfS5cIjtcbiAgfVxufVxuXG5cbi8vIEdlbmVyYWwgdmFyaWFibGUgc3RydWN0dXJlXG4vL1xuLy8gVmFyaWFibGUgZm9ybWF0IHNob3VsZCBmb2xsb3cgdGhlIGAkY29tcG9uZW50LW1vZGlmaWVyLXN0YXRlLXByb3BlcnR5YCBvcmRlci5cblxuXG4vLyBDb2xvcnNcbi8vXG4vLyBHcmF5c2NhbGUgYW5kIGJyYW5kIGNvbG9ycyBmb3IgdXNlIGFjcm9zcyBCb290c3RyYXAuXG5cbi8vIFN0YXJ0IHdpdGggYXNzaWduaW5nIGNvbG9yIG5hbWVzIHRvIHNwZWNpZmljIGhleCB2YWx1ZXMuXG4kd2hpdGU6ICAjZmZmICFkZWZhdWx0O1xuJGJsYWNrOiAgIzAwMCAhZGVmYXVsdDtcbiRyZWQ6ICAgICNkOTUzNGYgIWRlZmF1bHQ7XG4kb3JhbmdlOiAjZjBhZDRlICFkZWZhdWx0O1xuJHllbGxvdzogI2ZmZDUwMCAhZGVmYXVsdDtcbiRncmVlbjogICM1Y2I4NWMgIWRlZmF1bHQ7XG4kYmx1ZTogICAjMDI3NWQ4ICFkZWZhdWx0O1xuJHRlYWw6ICAgIzViYzBkZSAhZGVmYXVsdDtcbiRwaW5rOiAgICNmZjViNzcgIWRlZmF1bHQ7XG4kcHVycGxlOiAjNjEzZDdjICFkZWZhdWx0O1xuXG4vLyBDcmVhdGUgZ3JheXNjYWxlXG4kZ3JheS1kYXJrOiAgICAgICAgICAgICAgICAgIzI5MmIyYyAhZGVmYXVsdDtcbiRncmF5OiAgICAgICAgICAgICAgICAgICAgICAjNDY0YTRjICFkZWZhdWx0O1xuJGdyYXktbGlnaHQ6ICAgICAgICAgICAgICAgICM2MzZjNzIgIWRlZmF1bHQ7XG4kZ3JheS1saWdodGVyOiAgICAgICAgICAgICAgI2VjZWVlZiAhZGVmYXVsdDtcbiRncmF5LWxpZ2h0ZXN0OiAgICAgICAgICAgICAjZjdmN2Y5ICFkZWZhdWx0O1xuXG4vLyBSZWFzc2lnbiBjb2xvciB2YXJzIHRvIHNlbWFudGljIGNvbG9yIHNjaGVtZVxuJGJyYW5kLXByaW1hcnk6ICAgICAgICAgICAgICRibHVlICFkZWZhdWx0O1xuJGJyYW5kLXN1Y2Nlc3M6ICAgICAgICAgICAgICRncmVlbiAhZGVmYXVsdDtcbiRicmFuZC1pbmZvOiAgICAgICAgICAgICAgICAkdGVhbCAhZGVmYXVsdDtcbiRicmFuZC13YXJuaW5nOiAgICAgICAgICAgICAkb3JhbmdlICFkZWZhdWx0O1xuJGJyYW5kLWRhbmdlcjogICAgICAgICAgICAgICRyZWQgIWRlZmF1bHQ7XG4kYnJhbmQtaW52ZXJzZTogICAgICAgICAgICAgJGdyYXktZGFyayAhZGVmYXVsdDtcblxuXG4vLyBPcHRpb25zXG4vL1xuLy8gUXVpY2tseSBtb2RpZnkgZ2xvYmFsIHN0eWxpbmcgYnkgZW5hYmxpbmcgb3IgZGlzYWJsaW5nIG9wdGlvbmFsIGZlYXR1cmVzLlxuXG4kZW5hYmxlLXJvdW5kZWQ6ICAgICAgICAgICAgdHJ1ZSAhZGVmYXVsdDtcbiRlbmFibGUtc2hhZG93czogICAgICAgICAgICBmYWxzZSAhZGVmYXVsdDtcbiRlbmFibGUtZ3JhZGllbnRzOiAgICAgICAgICBmYWxzZSAhZGVmYXVsdDtcbiRlbmFibGUtdHJhbnNpdGlvbnM6ICAgICAgICB0cnVlICFkZWZhdWx0O1xuJGVuYWJsZS1ob3Zlci1tZWRpYS1xdWVyeTogIGZhbHNlICFkZWZhdWx0O1xuJGVuYWJsZS1ncmlkLWNsYXNzZXM6ICAgICAgIHRydWUgIWRlZmF1bHQ7XG4kZW5hYmxlLXByaW50LXN0eWxlczogICAgICAgdHJ1ZSAhZGVmYXVsdDtcblxuXG4vLyBTcGFjaW5nXG4vL1xuLy8gQ29udHJvbCB0aGUgZGVmYXVsdCBzdHlsaW5nIG9mIG1vc3QgQm9vdHN0cmFwIGVsZW1lbnRzIGJ5IG1vZGlmeWluZyB0aGVzZVxuLy8gdmFyaWFibGVzLiBNb3N0bHkgZm9jdXNlZCBvbiBzcGFjaW5nLlxuLy8gWW91IGNhbiBhZGQgbW9yZSBlbnRyaWVzIHRvIHRoZSAkc3BhY2VycyBtYXAsIHNob3VsZCB5b3UgbmVlZCBtb3JlIHZhcmlhdGlvbi5cblxuJHNwYWNlcjogICAxcmVtICFkZWZhdWx0O1xuJHNwYWNlci14OiAkc3BhY2VyICFkZWZhdWx0O1xuJHNwYWNlci15OiAkc3BhY2VyICFkZWZhdWx0O1xuJHNwYWNlcnM6IChcbiAgMDogKFxuICAgIHg6IDAsXG4gICAgeTogMFxuICApLFxuICAxOiAoXG4gICAgeDogKCRzcGFjZXIteCAqIC4yNSksXG4gICAgeTogKCRzcGFjZXIteSAqIC4yNSlcbiAgKSxcbiAgMjogKFxuICAgIHg6ICgkc3BhY2VyLXggKiAuNSksXG4gICAgeTogKCRzcGFjZXIteSAqIC41KVxuICApLFxuICAzOiAoXG4gICAgeDogJHNwYWNlci14LFxuICAgIHk6ICRzcGFjZXIteVxuICApLFxuICA0OiAoXG4gICAgeDogKCRzcGFjZXIteCAqIDEuNSksXG4gICAgeTogKCRzcGFjZXIteSAqIDEuNSlcbiAgKSxcbiAgNTogKFxuICAgIHg6ICgkc3BhY2VyLXggKiAzKSxcbiAgICB5OiAoJHNwYWNlci15ICogMylcbiAgKVxuKSAhZGVmYXVsdDtcbiRib3JkZXItd2lkdGg6IDFweCAhZGVmYXVsdDtcblxuLy8gVGhpcyB2YXJpYWJsZSBhZmZlY3RzIHRoZSBgLmgtKmAgYW5kIGAudy0qYCBjbGFzc2VzLlxuJHNpemVzOiAoXG4gIDI1OiAyNSUsXG4gIDUwOiA1MCUsXG4gIDc1OiA3NSUsXG4gIDEwMDogMTAwJVxuKSAhZGVmYXVsdDtcblxuLy8gQm9keVxuLy9cbi8vIFNldHRpbmdzIGZvciB0aGUgYDxib2R5PmAgZWxlbWVudC5cblxuJGJvZHktYmc6ICAgICAgICR3aGl0ZSAhZGVmYXVsdDtcbiRib2R5LWNvbG9yOiAgICAkZ3JheS1kYXJrICFkZWZhdWx0O1xuJGludmVyc2UtYmc6ICAgICRncmF5LWRhcmsgIWRlZmF1bHQ7XG4kaW52ZXJzZS1jb2xvcjogJGdyYXktbGlnaHRlciAhZGVmYXVsdDtcblxuXG4vLyBMaW5rc1xuLy9cbi8vIFN0eWxlIGFuY2hvciBlbGVtZW50cy5cblxuJGxpbmstY29sb3I6ICAgICAgICAgICAgJGJyYW5kLXByaW1hcnkgIWRlZmF1bHQ7XG4kbGluay1kZWNvcmF0aW9uOiAgICAgICBub25lICFkZWZhdWx0O1xuJGxpbmstaG92ZXItY29sb3I6ICAgICAgZGFya2VuKCRsaW5rLWNvbG9yLCAxNSUpICFkZWZhdWx0O1xuJGxpbmstaG92ZXItZGVjb3JhdGlvbjogdW5kZXJsaW5lICFkZWZhdWx0O1xuXG5cbi8vIEdyaWQgYnJlYWtwb2ludHNcbi8vXG4vLyBEZWZpbmUgdGhlIG1pbmltdW0gZGltZW5zaW9ucyBhdCB3aGljaCB5b3VyIGxheW91dCB3aWxsIGNoYW5nZSxcbi8vIGFkYXB0aW5nIHRvIGRpZmZlcmVudCBzY3JlZW4gc2l6ZXMsIGZvciB1c2UgaW4gbWVkaWEgcXVlcmllcy5cblxuJGdyaWQtYnJlYWtwb2ludHM6IChcbiAgeHM6IDAsXG4gIHNtOiA1NzZweCxcbiAgbWQ6IDc2OHB4LFxuICBsZzogOTkycHgsXG4gIHhsOiAxMjAwcHhcbikgIWRlZmF1bHQ7XG5AaW5jbHVkZSBfYXNzZXJ0LWFzY2VuZGluZygkZ3JpZC1icmVha3BvaW50cywgXCIkZ3JpZC1icmVha3BvaW50c1wiKTtcbkBpbmNsdWRlIF9hc3NlcnQtc3RhcnRzLWF0LXplcm8oJGdyaWQtYnJlYWtwb2ludHMpO1xuXG5cbi8vIEdyaWQgY29udGFpbmVyc1xuLy9cbi8vIERlZmluZSB0aGUgbWF4aW11bSB3aWR0aCBvZiBgLmNvbnRhaW5lcmAgZm9yIGRpZmZlcmVudCBzY3JlZW4gc2l6ZXMuXG5cbiRjb250YWluZXItbWF4LXdpZHRoczogKFxuICBzbTogNTQwcHgsXG4gIG1kOiA3MjBweCxcbiAgbGc6IDk2MHB4LFxuICB4bDogMTE0MHB4XG4pICFkZWZhdWx0O1xuQGluY2x1ZGUgX2Fzc2VydC1hc2NlbmRpbmcoJGNvbnRhaW5lci1tYXgtd2lkdGhzLCBcIiRjb250YWluZXItbWF4LXdpZHRoc1wiKTtcblxuXG4vLyBHcmlkIGNvbHVtbnNcbi8vXG4vLyBTZXQgdGhlIG51bWJlciBvZiBjb2x1bW5zIGFuZCBzcGVjaWZ5IHRoZSB3aWR0aCBvZiB0aGUgZ3V0dGVycy5cblxuJGdyaWQtY29sdW1uczogICAgICAgICAgICAgICAxMiAhZGVmYXVsdDtcbiRncmlkLWd1dHRlci13aWR0aC1iYXNlOiAgICAgMzBweCAhZGVmYXVsdDtcbiRncmlkLWd1dHRlci13aWR0aHM6IChcbiAgeHM6ICRncmlkLWd1dHRlci13aWR0aC1iYXNlLFxuICBzbTogJGdyaWQtZ3V0dGVyLXdpZHRoLWJhc2UsXG4gIG1kOiAkZ3JpZC1ndXR0ZXItd2lkdGgtYmFzZSxcbiAgbGc6ICRncmlkLWd1dHRlci13aWR0aC1iYXNlLFxuICB4bDogJGdyaWQtZ3V0dGVyLXdpZHRoLWJhc2VcbikgIWRlZmF1bHQ7XG5cbi8vIEZvbnRzXG4vL1xuLy8gRm9udCwgbGluZS1oZWlnaHQsIGFuZCBjb2xvciBmb3IgYm9keSB0ZXh0LCBoZWFkaW5ncywgYW5kIG1vcmUuXG5cbiRmb250LWZhbWlseS1zYW5zLXNlcmlmOiAtYXBwbGUtc3lzdGVtLCBzeXN0ZW0tdWksIEJsaW5rTWFjU3lzdGVtRm9udCwgXCJTZWdvZSBVSVwiLCBSb2JvdG8sIFwiSGVsdmV0aWNhIE5ldWVcIiwgQXJpYWwsIHNhbnMtc2VyaWYgIWRlZmF1bHQ7XG4kZm9udC1mYW1pbHktc2VyaWY6ICAgICAgR2VvcmdpYSwgXCJUaW1lcyBOZXcgUm9tYW5cIiwgVGltZXMsIHNlcmlmICFkZWZhdWx0O1xuJGZvbnQtZmFtaWx5LW1vbm9zcGFjZTogIE1lbmxvLCBNb25hY28sIENvbnNvbGFzLCBcIkxpYmVyYXRpb24gTW9ub1wiLCBcIkNvdXJpZXIgTmV3XCIsIG1vbm9zcGFjZSAhZGVmYXVsdDtcbiRmb250LWZhbWlseS1iYXNlOiAgICAgICAkZm9udC1mYW1pbHktc2Fucy1zZXJpZiAhZGVmYXVsdDtcblxuJGZvbnQtc2l6ZS1iYXNlOiAxcmVtICFkZWZhdWx0OyAvLyBBc3N1bWVzIHRoZSBicm93c2VyIGRlZmF1bHQsIHR5cGljYWxseSBgMTZweGBcbiRmb250LXNpemUtbGc6ICAgMS4yNXJlbSAhZGVmYXVsdDtcbiRmb250LXNpemUtc206ICAgLjg3NXJlbSAhZGVmYXVsdDtcbiRmb250LXNpemUteHM6ICAgLjc1cmVtICFkZWZhdWx0O1xuXG4kZm9udC13ZWlnaHQtbm9ybWFsOiBub3JtYWwgIWRlZmF1bHQ7XG4kZm9udC13ZWlnaHQtYm9sZDogYm9sZCAhZGVmYXVsdDtcblxuJGZvbnQtd2VpZ2h0LWJhc2U6ICRmb250LXdlaWdodC1ub3JtYWwgIWRlZmF1bHQ7XG4kbGluZS1oZWlnaHQtYmFzZTogMS41ICFkZWZhdWx0O1xuXG4kZm9udC1zaXplLWgxOiAyLjVyZW0gIWRlZmF1bHQ7XG4kZm9udC1zaXplLWgyOiAycmVtICFkZWZhdWx0O1xuJGZvbnQtc2l6ZS1oMzogMS43NXJlbSAhZGVmYXVsdDtcbiRmb250LXNpemUtaDQ6IDEuNXJlbSAhZGVmYXVsdDtcbiRmb250LXNpemUtaDU6IDEuMjVyZW0gIWRlZmF1bHQ7XG4kZm9udC1zaXplLWg2OiAxcmVtICFkZWZhdWx0O1xuXG4kaGVhZGluZ3MtbWFyZ2luLWJvdHRvbTogKCRzcGFjZXIgLyAyKSAhZGVmYXVsdDtcbiRoZWFkaW5ncy1mb250LWZhbWlseTogICBpbmhlcml0ICFkZWZhdWx0O1xuJGhlYWRpbmdzLWZvbnQtd2VpZ2h0OiAgIDUwMCAhZGVmYXVsdDtcbiRoZWFkaW5ncy1saW5lLWhlaWdodDogICAxLjEgIWRlZmF1bHQ7XG4kaGVhZGluZ3MtY29sb3I6ICAgICAgICAgaW5oZXJpdCAhZGVmYXVsdDtcblxuJGRpc3BsYXkxLXNpemU6IDZyZW0gIWRlZmF1bHQ7XG4kZGlzcGxheTItc2l6ZTogNS41cmVtICFkZWZhdWx0O1xuJGRpc3BsYXkzLXNpemU6IDQuNXJlbSAhZGVmYXVsdDtcbiRkaXNwbGF5NC1zaXplOiAzLjVyZW0gIWRlZmF1bHQ7XG5cbiRkaXNwbGF5MS13ZWlnaHQ6ICAgICAzMDAgIWRlZmF1bHQ7XG4kZGlzcGxheTItd2VpZ2h0OiAgICAgMzAwICFkZWZhdWx0O1xuJGRpc3BsYXkzLXdlaWdodDogICAgIDMwMCAhZGVmYXVsdDtcbiRkaXNwbGF5NC13ZWlnaHQ6ICAgICAzMDAgIWRlZmF1bHQ7XG4kZGlzcGxheS1saW5lLWhlaWdodDogJGhlYWRpbmdzLWxpbmUtaGVpZ2h0ICFkZWZhdWx0O1xuXG4kbGVhZC1mb250LXNpemU6ICAgMS4yNXJlbSAhZGVmYXVsdDtcbiRsZWFkLWZvbnQtd2VpZ2h0OiAzMDAgIWRlZmF1bHQ7XG5cbiRzbWFsbC1mb250LXNpemU6IDgwJSAhZGVmYXVsdDtcblxuJHRleHQtbXV0ZWQ6ICRncmF5LWxpZ2h0ICFkZWZhdWx0O1xuXG4kYWJici1ib3JkZXItY29sb3I6ICRncmF5LWxpZ2h0ICFkZWZhdWx0O1xuXG4kYmxvY2txdW90ZS1zbWFsbC1jb2xvcjogICRncmF5LWxpZ2h0ICFkZWZhdWx0O1xuJGJsb2NrcXVvdGUtZm9udC1zaXplOiAgICAoJGZvbnQtc2l6ZS1iYXNlICogMS4yNSkgIWRlZmF1bHQ7XG4kYmxvY2txdW90ZS1ib3JkZXItY29sb3I6ICRncmF5LWxpZ2h0ZXIgIWRlZmF1bHQ7XG4kYmxvY2txdW90ZS1ib3JkZXItd2lkdGg6IC4yNXJlbSAhZGVmYXVsdDtcblxuJGhyLWJvcmRlci1jb2xvcjogcmdiYSgkYmxhY2ssLjEpICFkZWZhdWx0O1xuJGhyLWJvcmRlci13aWR0aDogJGJvcmRlci13aWR0aCAhZGVmYXVsdDtcblxuJG1hcmstcGFkZGluZzogLjJlbSAhZGVmYXVsdDtcblxuJGR0LWZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtYm9sZCAhZGVmYXVsdDtcblxuJGtiZC1ib3gtc2hhZG93OiAgICAgICAgIGluc2V0IDAgLS4xcmVtIDAgcmdiYSgkYmxhY2ssLjI1KSAhZGVmYXVsdDtcbiRuZXN0ZWQta2JkLWZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtYm9sZCAhZGVmYXVsdDtcblxuJGxpc3QtaW5saW5lLXBhZGRpbmc6IDVweCAhZGVmYXVsdDtcblxuXG4vLyBDb21wb25lbnRzXG4vL1xuLy8gRGVmaW5lIGNvbW1vbiBwYWRkaW5nIGFuZCBib3JkZXIgcmFkaXVzIHNpemVzIGFuZCBtb3JlLlxuXG4kbGluZS1oZWlnaHQtbGc6ICAgICAgICAgKDQgLyAzKSAhZGVmYXVsdDtcbiRsaW5lLWhlaWdodC1zbTogICAgICAgICAxLjUgIWRlZmF1bHQ7XG5cbiRib3JkZXItcmFkaXVzOiAgICAgICAgICAuMjVyZW0gIWRlZmF1bHQ7XG4kYm9yZGVyLXJhZGl1cy1sZzogICAgICAgLjNyZW0gIWRlZmF1bHQ7XG4kYm9yZGVyLXJhZGl1cy1zbTogICAgICAgLjJyZW0gIWRlZmF1bHQ7XG5cbiRjb21wb25lbnQtYWN0aXZlLWNvbG9yOiAkd2hpdGUgIWRlZmF1bHQ7XG4kY29tcG9uZW50LWFjdGl2ZS1iZzogICAgJGJyYW5kLXByaW1hcnkgIWRlZmF1bHQ7XG5cbiRjYXJldC13aWR0aDogICAgICAgICAgICAuM2VtICFkZWZhdWx0O1xuXG4kdHJhbnNpdGlvbi1iYXNlOiAgICAgICAgYWxsIC4ycyBlYXNlLWluLW91dCAhZGVmYXVsdDtcbiR0cmFuc2l0aW9uLWZhZGU6ICAgICAgICBvcGFjaXR5IC4xNXMgbGluZWFyICFkZWZhdWx0O1xuJHRyYW5zaXRpb24tY29sbGFwc2U6ICAgIGhlaWdodCAuMzVzIGVhc2UgIWRlZmF1bHQ7XG5cblxuLy8gVGFibGVzXG4vL1xuLy8gQ3VzdG9taXplcyB0aGUgYC50YWJsZWAgY29tcG9uZW50IHdpdGggYmFzaWMgdmFsdWVzLCBlYWNoIHVzZWQgYWNyb3NzIGFsbCB0YWJsZSB2YXJpYXRpb25zLlxuXG4kdGFibGUtY2VsbC1wYWRkaW5nOiAgICAgICAgICAgIC43NXJlbSAhZGVmYXVsdDtcbiR0YWJsZS1zbS1jZWxsLXBhZGRpbmc6ICAgICAgICAgLjNyZW0gIWRlZmF1bHQ7XG5cbiR0YWJsZS1iZzogICAgICAgICAgICAgICAgICAgICAgdHJhbnNwYXJlbnQgIWRlZmF1bHQ7XG5cbiR0YWJsZS1pbnZlcnNlLWJnOiAgICAgICAgICAgICAgJGdyYXktZGFyayAhZGVmYXVsdDtcbiR0YWJsZS1pbnZlcnNlLWNvbG9yOiAgICAgICAgICAgJGJvZHktYmcgIWRlZmF1bHQ7XG5cbiR0YWJsZS1iZy1hY2NlbnQ6ICAgICAgICAgICAgICAgcmdiYSgkYmxhY2ssLjA1KSAhZGVmYXVsdDtcbiR0YWJsZS1iZy1ob3ZlcjogICAgICAgICAgICAgICAgcmdiYSgkYmxhY2ssLjA3NSkgIWRlZmF1bHQ7XG4kdGFibGUtYmctYWN0aXZlOiAgICAgICAgICAgICAgICR0YWJsZS1iZy1ob3ZlciAhZGVmYXVsdDtcblxuJHRhYmxlLWhlYWQtYmc6ICAgICAgICAgICAgICAgICAkZ3JheS1saWdodGVyICFkZWZhdWx0O1xuJHRhYmxlLWhlYWQtY29sb3I6ICAgICAgICAgICAgICAkZ3JheSAhZGVmYXVsdDtcblxuJHRhYmxlLWJvcmRlci13aWR0aDogICAgICAgICAgICAkYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuJHRhYmxlLWJvcmRlci1jb2xvcjogICAgICAgICAgICAkZ3JheS1saWdodGVyICFkZWZhdWx0O1xuXG5cbi8vIEJ1dHRvbnNcbi8vXG4vLyBGb3IgZWFjaCBvZiBCb290c3RyYXAncyBidXR0b25zLCBkZWZpbmUgdGV4dCwgYmFja2dyb3VuZCBhbmQgYm9yZGVyIGNvbG9yLlxuXG4kYnRuLXBhZGRpbmcteDogICAgICAgICAgICAgICAgICAxcmVtICFkZWZhdWx0O1xuJGJ0bi1wYWRkaW5nLXk6ICAgICAgICAgICAgICAgICAgLjVyZW0gIWRlZmF1bHQ7XG4kYnRuLWxpbmUtaGVpZ2h0OiAgICAgICAgICAgICAgICAxLjI1ICFkZWZhdWx0O1xuJGJ0bi1mb250LXdlaWdodDogICAgICAgICAgICAgICAgJGZvbnQtd2VpZ2h0LW5vcm1hbCAhZGVmYXVsdDtcbiRidG4tYm94LXNoYWRvdzogICAgICAgICAgICAgICAgIGluc2V0IDAgMXB4IDAgcmdiYSgkd2hpdGUsLjE1KSwgMCAxcHggMXB4IHJnYmEoJGJsYWNrLC4wNzUpICFkZWZhdWx0O1xuJGJ0bi1mb2N1cy1ib3gtc2hhZG93OiAgICAgICAgICAgMCAwIDAgMnB4IHJnYmEoJGJyYW5kLXByaW1hcnksIC4yNSkgIWRlZmF1bHQ7XG4kYnRuLWFjdGl2ZS1ib3gtc2hhZG93OiAgICAgICAgICBpbnNldCAwIDNweCA1cHggcmdiYSgkYmxhY2ssLjEyNSkgIWRlZmF1bHQ7XG5cbiRidG4tcHJpbWFyeS1jb2xvcjogICAgICAgICAgICAgICR3aGl0ZSAhZGVmYXVsdDtcbiRidG4tcHJpbWFyeS1iZzogICAgICAgICAgICAgICAgICRicmFuZC1wcmltYXJ5ICFkZWZhdWx0O1xuJGJ0bi1wcmltYXJ5LWJvcmRlcjogICAgICAgICAgICAgJGJ0bi1wcmltYXJ5LWJnICFkZWZhdWx0O1xuXG4kYnRuLXNlY29uZGFyeS1jb2xvcjogICAgICAgICAgICAkZ3JheS1kYXJrICFkZWZhdWx0O1xuJGJ0bi1zZWNvbmRhcnktYmc6ICAgICAgICAgICAgICAgJHdoaXRlICFkZWZhdWx0O1xuJGJ0bi1zZWNvbmRhcnktYm9yZGVyOiAgICAgICAgICAgI2NjYyAhZGVmYXVsdDtcblxuJGJ0bi1pbmZvLWNvbG9yOiAgICAgICAgICAgICAgICAgJHdoaXRlICFkZWZhdWx0O1xuJGJ0bi1pbmZvLWJnOiAgICAgICAgICAgICAgICAgICAgJGJyYW5kLWluZm8gIWRlZmF1bHQ7XG4kYnRuLWluZm8tYm9yZGVyOiAgICAgICAgICAgICAgICAkYnRuLWluZm8tYmcgIWRlZmF1bHQ7XG5cbiRidG4tc3VjY2Vzcy1jb2xvcjogICAgICAgICAgICAgICR3aGl0ZSAhZGVmYXVsdDtcbiRidG4tc3VjY2Vzcy1iZzogICAgICAgICAgICAgICAgICRicmFuZC1zdWNjZXNzICFkZWZhdWx0O1xuJGJ0bi1zdWNjZXNzLWJvcmRlcjogICAgICAgICAgICAgJGJ0bi1zdWNjZXNzLWJnICFkZWZhdWx0O1xuXG4kYnRuLXdhcm5pbmctY29sb3I6ICAgICAgICAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XG4kYnRuLXdhcm5pbmctYmc6ICAgICAgICAgICAgICAgICAkYnJhbmQtd2FybmluZyAhZGVmYXVsdDtcbiRidG4td2FybmluZy1ib3JkZXI6ICAgICAgICAgICAgICRidG4td2FybmluZy1iZyAhZGVmYXVsdDtcblxuJGJ0bi1kYW5nZXItY29sb3I6ICAgICAgICAgICAgICAgJHdoaXRlICFkZWZhdWx0O1xuJGJ0bi1kYW5nZXItYmc6ICAgICAgICAgICAgICAgICAgJGJyYW5kLWRhbmdlciAhZGVmYXVsdDtcbiRidG4tZGFuZ2VyLWJvcmRlcjogICAgICAgICAgICAgICRidG4tZGFuZ2VyLWJnICFkZWZhdWx0O1xuXG4kYnRuLWxpbmstZGlzYWJsZWQtY29sb3I6ICAgICAgICAkZ3JheS1saWdodCAhZGVmYXVsdDtcblxuJGJ0bi1wYWRkaW5nLXgtc206ICAgICAgICAgICAgICAgLjVyZW0gIWRlZmF1bHQ7XG4kYnRuLXBhZGRpbmcteS1zbTogICAgICAgICAgICAgICAuMjVyZW0gIWRlZmF1bHQ7XG5cbiRidG4tcGFkZGluZy14LWxnOiAgICAgICAgICAgICAgIDEuNXJlbSAhZGVmYXVsdDtcbiRidG4tcGFkZGluZy15LWxnOiAgICAgICAgICAgICAgIC43NXJlbSAhZGVmYXVsdDtcblxuJGJ0bi1ibG9jay1zcGFjaW5nLXk6ICAgICAgICAgICAgLjVyZW0gIWRlZmF1bHQ7XG4kYnRuLXRvb2xiYXItbWFyZ2luOiAgICAgICAgICAgICAuNXJlbSAhZGVmYXVsdDtcblxuLy8gQWxsb3dzIGZvciBjdXN0b21pemluZyBidXR0b24gcmFkaXVzIGluZGVwZW5kZW50bHkgZnJvbSBnbG9iYWwgYm9yZGVyIHJhZGl1c1xuJGJ0bi1ib3JkZXItcmFkaXVzOiAgICAgICAgICAgICAgJGJvcmRlci1yYWRpdXMgIWRlZmF1bHQ7XG4kYnRuLWJvcmRlci1yYWRpdXMtbGc6ICAgICAgICAgICAkYm9yZGVyLXJhZGl1cy1sZyAhZGVmYXVsdDtcbiRidG4tYm9yZGVyLXJhZGl1cy1zbTogICAgICAgICAgICRib3JkZXItcmFkaXVzLXNtICFkZWZhdWx0O1xuXG4kYnRuLXRyYW5zaXRpb246ICAgICAgICAgICAgICAgICBhbGwgLjJzIGVhc2UtaW4tb3V0ICFkZWZhdWx0O1xuXG5cbi8vIEZvcm1zXG5cbiRpbnB1dC1wYWRkaW5nLXg6ICAgICAgICAgICAgICAgIC43NXJlbSAhZGVmYXVsdDtcbiRpbnB1dC1wYWRkaW5nLXk6ICAgICAgICAgICAgICAgIC41cmVtICFkZWZhdWx0O1xuJGlucHV0LWxpbmUtaGVpZ2h0OiAgICAgICAgICAgICAgMS4yNSAhZGVmYXVsdDtcblxuJGlucHV0LWJnOiAgICAgICAgICAgICAgICAgICAgICAgJHdoaXRlICFkZWZhdWx0O1xuJGlucHV0LWJnLWRpc2FibGVkOiAgICAgICAgICAgICAgJGdyYXktbGlnaHRlciAhZGVmYXVsdDtcblxuJGlucHV0LWNvbG9yOiAgICAgICAgICAgICAgICAgICAgJGdyYXkgIWRlZmF1bHQ7XG4kaW5wdXQtYm9yZGVyLWNvbG9yOiAgICAgICAgICAgICByZ2JhKCRibGFjaywuMTUpICFkZWZhdWx0O1xuJGlucHV0LWJ0bi1ib3JkZXItd2lkdGg6ICAgICAgICAgJGJvcmRlci13aWR0aCAhZGVmYXVsdDsgLy8gRm9yIGZvcm0gY29udHJvbHMgYW5kIGJ1dHRvbnNcbiRpbnB1dC1ib3gtc2hhZG93OiAgICAgICAgICAgICAgIGluc2V0IDAgMXB4IDFweCByZ2JhKCRibGFjaywuMDc1KSAhZGVmYXVsdDtcblxuJGlucHV0LWJvcmRlci1yYWRpdXM6ICAgICAgICAgICAgJGJvcmRlci1yYWRpdXMgIWRlZmF1bHQ7XG4kaW5wdXQtYm9yZGVyLXJhZGl1cy1sZzogICAgICAgICAkYm9yZGVyLXJhZGl1cy1sZyAhZGVmYXVsdDtcbiRpbnB1dC1ib3JkZXItcmFkaXVzLXNtOiAgICAgICAgICRib3JkZXItcmFkaXVzLXNtICFkZWZhdWx0O1xuXG4kaW5wdXQtYmctZm9jdXM6ICAgICAgICAgICAgICAgICAkaW5wdXQtYmcgIWRlZmF1bHQ7XG4kaW5wdXQtYm9yZGVyLWZvY3VzOiAgICAgICAgICAgICBsaWdodGVuKCRicmFuZC1wcmltYXJ5LCAyNSUpICFkZWZhdWx0O1xuJGlucHV0LWJveC1zaGFkb3ctZm9jdXM6ICAgICAgICAgJGlucHV0LWJveC1zaGFkb3csIHJnYmEoJGlucHV0LWJvcmRlci1mb2N1cywgLjYpICFkZWZhdWx0O1xuJGlucHV0LWNvbG9yLWZvY3VzOiAgICAgICAgICAgICAgJGlucHV0LWNvbG9yICFkZWZhdWx0O1xuXG4kaW5wdXQtY29sb3ItcGxhY2Vob2xkZXI6ICAgICAgICAkZ3JheS1saWdodCAhZGVmYXVsdDtcblxuJGlucHV0LXBhZGRpbmcteC1zbTogICAgICAgICAgICAgLjVyZW0gIWRlZmF1bHQ7XG4kaW5wdXQtcGFkZGluZy15LXNtOiAgICAgICAgICAgICAuMjVyZW0gIWRlZmF1bHQ7XG5cbiRpbnB1dC1wYWRkaW5nLXgtbGc6ICAgICAgICAgICAgIDEuNXJlbSAhZGVmYXVsdDtcbiRpbnB1dC1wYWRkaW5nLXktbGc6ICAgICAgICAgICAgIC43NXJlbSAhZGVmYXVsdDtcblxuJGlucHV0LWhlaWdodDogICAgICAgICAgICAgICAgICAgKCgkZm9udC1zaXplLWJhc2UgKiAkaW5wdXQtbGluZS1oZWlnaHQpICsgKCRpbnB1dC1wYWRkaW5nLXkgKiAyKSkgIWRlZmF1bHQ7XG4kaW5wdXQtaGVpZ2h0LWxnOiAgICAgICAgICAgICAgICAoKCRmb250LXNpemUtbGcgKiAkbGluZS1oZWlnaHQtbGcpICsgKCRpbnB1dC1wYWRkaW5nLXktbGcgKiAyKSkgIWRlZmF1bHQ7XG4kaW5wdXQtaGVpZ2h0LXNtOiAgICAgICAgICAgICAgICAoKCRmb250LXNpemUtc20gKiAkbGluZS1oZWlnaHQtc20pICsgKCRpbnB1dC1wYWRkaW5nLXktc20gKiAyKSkgIWRlZmF1bHQ7XG5cbiRpbnB1dC10cmFuc2l0aW9uOiAgICAgICAgICAgICAgIGJvcmRlci1jb2xvciBlYXNlLWluLW91dCAuMTVzLCBib3gtc2hhZG93IGVhc2UtaW4tb3V0IC4xNXMgIWRlZmF1bHQ7XG5cbiRmb3JtLXRleHQtbWFyZ2luLXRvcDogICAgIC4yNXJlbSAhZGVmYXVsdDtcbiRmb3JtLWZlZWRiYWNrLW1hcmdpbi10b3A6ICRmb3JtLXRleHQtbWFyZ2luLXRvcCAhZGVmYXVsdDtcblxuJGZvcm0tY2hlY2stbWFyZ2luLWJvdHRvbTogIC41cmVtICFkZWZhdWx0O1xuJGZvcm0tY2hlY2staW5wdXQtZ3V0dGVyOiAgIDEuMjVyZW0gIWRlZmF1bHQ7XG4kZm9ybS1jaGVjay1pbnB1dC1tYXJnaW4teTogLjI1cmVtICFkZWZhdWx0O1xuJGZvcm0tY2hlY2staW5wdXQtbWFyZ2luLXg6IC4yNXJlbSAhZGVmYXVsdDtcblxuJGZvcm0tY2hlY2staW5saW5lLW1hcmdpbi14OiAuNzVyZW0gIWRlZmF1bHQ7XG5cbiRmb3JtLWdyb3VwLW1hcmdpbi1ib3R0b206ICAgICAgICRzcGFjZXIteSAhZGVmYXVsdDtcblxuJGlucHV0LWdyb3VwLWFkZG9uLWJnOiAgICAgICAgICAgJGdyYXktbGlnaHRlciAhZGVmYXVsdDtcbiRpbnB1dC1ncm91cC1hZGRvbi1ib3JkZXItY29sb3I6ICRpbnB1dC1ib3JkZXItY29sb3IgIWRlZmF1bHQ7XG5cbiRjdXJzb3ItZGlzYWJsZWQ6ICAgICAgICAgICAgICAgIG5vdC1hbGxvd2VkICFkZWZhdWx0O1xuXG4kY3VzdG9tLWNvbnRyb2wtZ3V0dGVyOiAgIDEuNXJlbSAhZGVmYXVsdDtcbiRjdXN0b20tY29udHJvbC1zcGFjZXIteDogMXJlbSAhZGVmYXVsdDtcbiRjdXN0b20tY29udHJvbC1zcGFjZXIteTogLjI1cmVtICFkZWZhdWx0O1xuXG4kY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLXNpemU6ICAgICAgIDFyZW0gIWRlZmF1bHQ7XG4kY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLW1hcmdpbi15OiAgICgoJGxpbmUtaGVpZ2h0LWJhc2UgKiAxcmVtKSAtICRjdXN0b20tY29udHJvbC1pbmRpY2F0b3Itc2l6ZSkgLyAtMiAhZGVmYXVsdDtcbiRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItYmc6ICAgICAgICAgI2RkZCAhZGVmYXVsdDtcbiRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItYmctc2l6ZTogICAgNTAlIDUwJSAhZGVmYXVsdDtcbiRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItYm94LXNoYWRvdzogaW5zZXQgMCAuMjVyZW0gLjI1cmVtIHJnYmEoJGJsYWNrLC4xKSAhZGVmYXVsdDtcblxuJGN1c3RvbS1jb250cm9sLWRpc2FibGVkLWN1cnNvcjogICAgICAgICAgICAgJGN1cnNvci1kaXNhYmxlZCAhZGVmYXVsdDtcbiRjdXN0b20tY29udHJvbC1kaXNhYmxlZC1pbmRpY2F0b3ItYmc6ICAgICAgICRncmF5LWxpZ2h0ZXIgIWRlZmF1bHQ7XG4kY3VzdG9tLWNvbnRyb2wtZGlzYWJsZWQtZGVzY3JpcHRpb24tY29sb3I6ICAkZ3JheS1saWdodCAhZGVmYXVsdDtcblxuJGN1c3RvbS1jb250cm9sLWNoZWNrZWQtaW5kaWNhdG9yLWNvbG9yOiAgICAgICR3aGl0ZSAhZGVmYXVsdDtcbiRjdXN0b20tY29udHJvbC1jaGVja2VkLWluZGljYXRvci1iZzogICAgICAgICAkYnJhbmQtcHJpbWFyeSAhZGVmYXVsdDtcbiRjdXN0b20tY29udHJvbC1jaGVja2VkLWluZGljYXRvci1ib3gtc2hhZG93OiBub25lICFkZWZhdWx0O1xuXG4kY3VzdG9tLWNvbnRyb2wtZm9jdXMtaW5kaWNhdG9yLWJveC1zaGFkb3c6IDAgMCAwIDFweCAkYm9keS1iZywgMCAwIDAgM3B4ICRicmFuZC1wcmltYXJ5ICFkZWZhdWx0O1xuXG4kY3VzdG9tLWNvbnRyb2wtYWN0aXZlLWluZGljYXRvci1jb2xvcjogICAgICAkd2hpdGUgIWRlZmF1bHQ7XG4kY3VzdG9tLWNvbnRyb2wtYWN0aXZlLWluZGljYXRvci1iZzogICAgICAgICBsaWdodGVuKCRicmFuZC1wcmltYXJ5LCAzNSUpICFkZWZhdWx0O1xuJGN1c3RvbS1jb250cm9sLWFjdGl2ZS1pbmRpY2F0b3ItYm94LXNoYWRvdzogbm9uZSAhZGVmYXVsdDtcblxuJGN1c3RvbS1jaGVja2JveC1yYWRpdXM6ICRib3JkZXItcmFkaXVzICFkZWZhdWx0O1xuJGN1c3RvbS1jaGVja2JveC1jaGVja2VkLWljb246IHN0ci1yZXBsYWNlKHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbDtjaGFyc2V0PXV0ZjgsJTNDc3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgdmlld0JveD0nMCAwIDggOCclM0UlM0NwYXRoIGZpbGw9JyN7JGN1c3RvbS1jb250cm9sLWNoZWNrZWQtaW5kaWNhdG9yLWNvbG9yfScgZD0nTTYuNTY0Ljc1bC0zLjU5IDMuNjEyLTEuNTM4LTEuNTVMMCA0LjI2IDIuOTc0IDcuMjUgOCAyLjE5M3onLyUzRSUzQy9zdmclM0VcIiksIFwiI1wiLCBcIiUyM1wiKSAhZGVmYXVsdDtcblxuJGN1c3RvbS1jaGVja2JveC1pbmRldGVybWluYXRlLWJnOiAkYnJhbmQtcHJpbWFyeSAhZGVmYXVsdDtcbiRjdXN0b20tY2hlY2tib3gtaW5kZXRlcm1pbmF0ZS1pbmRpY2F0b3ItY29sb3I6ICRjdXN0b20tY29udHJvbC1jaGVja2VkLWluZGljYXRvci1jb2xvciAhZGVmYXVsdDtcbiRjdXN0b20tY2hlY2tib3gtaW5kZXRlcm1pbmF0ZS1pY29uOiBzdHItcmVwbGFjZSh1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWw7Y2hhcnNldD11dGY4LCUzQ3N2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHZpZXdCb3g9JzAgMCA0IDQnJTNFJTNDcGF0aCBzdHJva2U9JyN7JGN1c3RvbS1jaGVja2JveC1pbmRldGVybWluYXRlLWluZGljYXRvci1jb2xvcn0nIGQ9J00wIDJoNCcvJTNFJTNDL3N2ZyUzRVwiKSwgXCIjXCIsIFwiJTIzXCIpICFkZWZhdWx0O1xuJGN1c3RvbS1jaGVja2JveC1pbmRldGVybWluYXRlLWJveC1zaGFkb3c6IG5vbmUgIWRlZmF1bHQ7XG5cbiRjdXN0b20tcmFkaW8tcmFkaXVzOiA1MCUgIWRlZmF1bHQ7XG4kY3VzdG9tLXJhZGlvLWNoZWNrZWQtaWNvbjogc3RyLXJlcGxhY2UodXJsKFwiZGF0YTppbWFnZS9zdmcreG1sO2NoYXJzZXQ9dXRmOCwlM0NzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB2aWV3Qm94PSctNCAtNCA4IDgnJTNFJTNDY2lyY2xlIHI9JzMnIGZpbGw9JyN7JGN1c3RvbS1jb250cm9sLWNoZWNrZWQtaW5kaWNhdG9yLWNvbG9yfScvJTNFJTNDL3N2ZyUzRVwiKSwgXCIjXCIsIFwiJTIzXCIpICFkZWZhdWx0O1xuXG4kY3VzdG9tLXNlbGVjdC1wYWRkaW5nLXg6ICAgICAgICAgIC43NXJlbSAgIWRlZmF1bHQ7XG4kY3VzdG9tLXNlbGVjdC1wYWRkaW5nLXk6ICAgICAgICAgIC4zNzVyZW0gIWRlZmF1bHQ7XG4kY3VzdG9tLXNlbGVjdC1pbmRpY2F0b3ItcGFkZGluZzogICAxcmVtICFkZWZhdWx0OyAvLyBFeHRyYSBwYWRkaW5nIHRvIGFjY291bnQgZm9yIHRoZSBwcmVzZW5jZSBvZiB0aGUgYmFja2dyb3VuZC1pbWFnZSBiYXNlZCBpbmRpY2F0b3JcbiRjdXN0b20tc2VsZWN0LWxpbmUtaGVpZ2h0OiAgICAgICAgICRpbnB1dC1saW5lLWhlaWdodCAhZGVmYXVsdDtcbiRjdXN0b20tc2VsZWN0LWNvbG9yOiAgICAgICAgICAgICAgICRpbnB1dC1jb2xvciAhZGVmYXVsdDtcbiRjdXN0b20tc2VsZWN0LWRpc2FibGVkLWNvbG9yOiAgICAgICRncmF5LWxpZ2h0ICFkZWZhdWx0O1xuJGN1c3RvbS1zZWxlY3QtYmc6ICAgICAgICAgICAgJHdoaXRlICFkZWZhdWx0O1xuJGN1c3RvbS1zZWxlY3QtZGlzYWJsZWQtYmc6ICAgJGdyYXktbGlnaHRlciAhZGVmYXVsdDtcbiRjdXN0b20tc2VsZWN0LWJnLXNpemU6ICAgICAgIDhweCAxMHB4ICFkZWZhdWx0OyAvLyBJbiBwaXhlbHMgYmVjYXVzZSBpbWFnZSBkaW1lbnNpb25zXG4kY3VzdG9tLXNlbGVjdC1pbmRpY2F0b3ItY29sb3I6ICMzMzMgIWRlZmF1bHQ7XG4kY3VzdG9tLXNlbGVjdC1pbmRpY2F0b3I6ICAgICBzdHItcmVwbGFjZSh1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWw7Y2hhcnNldD11dGY4LCUzQ3N2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHZpZXdCb3g9JzAgMCA0IDUnJTNFJTNDcGF0aCBmaWxsPScjeyRjdXN0b20tc2VsZWN0LWluZGljYXRvci1jb2xvcn0nIGQ9J00yIDBMMCAyaDR6bTAgNUwwIDNoNHonLyUzRSUzQy9zdmclM0VcIiksIFwiI1wiLCBcIiUyM1wiKSAhZGVmYXVsdDtcbiRjdXN0b20tc2VsZWN0LWJvcmRlci13aWR0aDogICRpbnB1dC1idG4tYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuJGN1c3RvbS1zZWxlY3QtYm9yZGVyLWNvbG9yOiAgJGlucHV0LWJvcmRlci1jb2xvciAhZGVmYXVsdDtcbiRjdXN0b20tc2VsZWN0LWJvcmRlci1yYWRpdXM6ICRib3JkZXItcmFkaXVzICFkZWZhdWx0O1xuXG4kY3VzdG9tLXNlbGVjdC1mb2N1cy1ib3JkZXItY29sb3I6IGxpZ2h0ZW4oJGJyYW5kLXByaW1hcnksIDI1JSkgIWRlZmF1bHQ7XG4kY3VzdG9tLXNlbGVjdC1mb2N1cy1ib3gtc2hhZG93OiAgIGluc2V0IDAgMXB4IDJweCByZ2JhKCRibGFjaywgLjA3NSksIDAgMCA1cHggcmdiYSgkY3VzdG9tLXNlbGVjdC1mb2N1cy1ib3JkZXItY29sb3IsIC41KSAhZGVmYXVsdDtcblxuJGN1c3RvbS1zZWxlY3Qtc20tcGFkZGluZy15OiAgLjJyZW0gIWRlZmF1bHQ7XG4kY3VzdG9tLXNlbGVjdC1zbS1mb250LXNpemU6ICA3NSUgIWRlZmF1bHQ7XG5cbiRjdXN0b20tZmlsZS1oZWlnaHQ6ICAgICAgICAgICAyLjVyZW0gIWRlZmF1bHQ7XG4kY3VzdG9tLWZpbGUtd2lkdGg6ICAgICAgICAgICAgMTRyZW0gIWRlZmF1bHQ7XG4kY3VzdG9tLWZpbGUtZm9jdXMtYm94LXNoYWRvdzogMCAwIDAgLjA3NXJlbSAkd2hpdGUsIDAgMCAwIC4ycmVtICRicmFuZC1wcmltYXJ5ICFkZWZhdWx0O1xuXG4kY3VzdG9tLWZpbGUtcGFkZGluZy14OiAgICAgLjVyZW0gIWRlZmF1bHQ7XG4kY3VzdG9tLWZpbGUtcGFkZGluZy15OiAgICAgMXJlbSAhZGVmYXVsdDtcbiRjdXN0b20tZmlsZS1saW5lLWhlaWdodDogICAxLjUgIWRlZmF1bHQ7XG4kY3VzdG9tLWZpbGUtY29sb3I6ICAgICAgICAgJGdyYXkgIWRlZmF1bHQ7XG4kY3VzdG9tLWZpbGUtYmc6ICAgICAgICAgICAgJHdoaXRlICFkZWZhdWx0O1xuJGN1c3RvbS1maWxlLWJvcmRlci13aWR0aDogICRib3JkZXItd2lkdGggIWRlZmF1bHQ7XG4kY3VzdG9tLWZpbGUtYm9yZGVyLWNvbG9yOiAgJGlucHV0LWJvcmRlci1jb2xvciAhZGVmYXVsdDtcbiRjdXN0b20tZmlsZS1ib3JkZXItcmFkaXVzOiAkYm9yZGVyLXJhZGl1cyAhZGVmYXVsdDtcbiRjdXN0b20tZmlsZS1ib3gtc2hhZG93OiAgICBpbnNldCAwIC4ycmVtIC40cmVtIHJnYmEoJGJsYWNrLC4wNSkgIWRlZmF1bHQ7XG4kY3VzdG9tLWZpbGUtYnV0dG9uLWNvbG9yOiAgJGN1c3RvbS1maWxlLWNvbG9yICFkZWZhdWx0O1xuJGN1c3RvbS1maWxlLWJ1dHRvbi1iZzogICAgICRncmF5LWxpZ2h0ZXIgIWRlZmF1bHQ7XG4kY3VzdG9tLWZpbGUtdGV4dDogKFxuICBwbGFjZWhvbGRlcjogKFxuICAgIGVuOiBcIkNob29zZSBmaWxlLi4uXCJcbiAgKSxcbiAgYnV0dG9uLWxhYmVsOiAoXG4gICAgZW46IFwiQnJvd3NlXCJcbiAgKVxuKSAhZGVmYXVsdDtcblxuXG4vLyBGb3JtIHZhbGlkYXRpb24gaWNvbnNcbiRmb3JtLWljb24tc3VjY2Vzcy1jb2xvcjogJGJyYW5kLXN1Y2Nlc3MgIWRlZmF1bHQ7XG4kZm9ybS1pY29uLXN1Y2Nlc3M6IHN0ci1yZXBsYWNlKHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbDtjaGFyc2V0PXV0ZjgsJTNDc3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgdmlld0JveD0nMCAwIDggOCclM0UlM0NwYXRoIGZpbGw9JyN7JGZvcm0taWNvbi1zdWNjZXNzLWNvbG9yfScgZD0nTTIuMyA2LjczTC42IDQuNTNjLS40LTEuMDQuNDYtMS40IDEuMS0uOGwxLjEgMS40IDMuNC0zLjhjLjYtLjYzIDEuNi0uMjcgMS4yLjdsLTQgNC42Yy0uNDMuNS0uOC40LTEuMS4xeicvJTNFJTNDL3N2ZyUzRVwiKSwgXCIjXCIsIFwiJTIzXCIpICFkZWZhdWx0O1xuXG4kZm9ybS1pY29uLXdhcm5pbmctY29sb3I6ICRicmFuZC13YXJuaW5nICFkZWZhdWx0O1xuJGZvcm0taWNvbi13YXJuaW5nOiBzdHItcmVwbGFjZSh1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWw7Y2hhcnNldD11dGY4LCUzQ3N2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHZpZXdCb3g9JzAgMCA4IDgnJTNFJTNDcGF0aCBmaWxsPScjeyRmb3JtLWljb24td2FybmluZy1jb2xvcn0nIGQ9J000LjQgNS4zMjRoLS44di0yLjQ2aC44em0wIDEuNDJoLS44VjUuODloLjh6TTMuNzYuNjNMLjA0IDcuMDc1Yy0uMTE1LjIuMDE2LjQyNS4yNi40MjZoNy4zOTdjLjI0MiAwIC4zNzItLjIyNi4yNTgtLjQyNkM2LjcyNiA0LjkyNCA1LjQ3IDIuNzkgNC4yNTMuNjNjLS4xMTMtLjE3NC0uMzktLjE3NC0uNDk0IDB6Jy8lM0UlM0Mvc3ZnJTNFXCIpLCBcIiNcIiwgXCIlMjNcIikgIWRlZmF1bHQ7XG5cbiRmb3JtLWljb24tZGFuZ2VyLWNvbG9yOiAkYnJhbmQtZGFuZ2VyICFkZWZhdWx0O1xuJGZvcm0taWNvbi1kYW5nZXI6IHN0ci1yZXBsYWNlKHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbDtjaGFyc2V0PXV0ZjgsJTNDc3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZycgZmlsbD0nI3skZm9ybS1pY29uLWRhbmdlci1jb2xvcn0nIHZpZXdCb3g9Jy0yIC0yIDcgNyclM0UlM0NwYXRoIHN0cm9rZT0nJTIzZDk1MzRmJyBkPSdNMCAwbDMgM20wLTNMMCAzJy8lM0UlM0NjaXJjbGUgcj0nLjUnLyUzRSUzQ2NpcmNsZSBjeD0nMycgcj0nLjUnLyUzRSUzQ2NpcmNsZSBjeT0nMycgcj0nLjUnLyUzRSUzQ2NpcmNsZSBjeD0nMycgY3k9JzMnIHI9Jy41Jy8lM0UlM0Mvc3ZnJTNFXCIpLCBcIiNcIiwgXCIlMjNcIikgIWRlZmF1bHQ7XG5cblxuLy8gRHJvcGRvd25zXG4vL1xuLy8gRHJvcGRvd24gbWVudSBjb250YWluZXIgYW5kIGNvbnRlbnRzLlxuXG4kZHJvcGRvd24tbWluLXdpZHRoOiAgICAgICAgICAgICAxMHJlbSAhZGVmYXVsdDtcbiRkcm9wZG93bi1wYWRkaW5nLXk6ICAgICAgICAgICAgIC41cmVtICFkZWZhdWx0O1xuJGRyb3Bkb3duLW1hcmdpbi10b3A6ICAgICAgICAgICAgLjEyNXJlbSAhZGVmYXVsdDtcbiRkcm9wZG93bi1iZzogICAgICAgICAgICAgICAgICAgICR3aGl0ZSAhZGVmYXVsdDtcbiRkcm9wZG93bi1ib3JkZXItY29sb3I6ICAgICAgICAgIHJnYmEoJGJsYWNrLC4xNSkgIWRlZmF1bHQ7XG4kZHJvcGRvd24tYm9yZGVyLXdpZHRoOiAgICAgICAgICAkYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuJGRyb3Bkb3duLWRpdmlkZXItYmc6ICAgICAgICAgICAgJGdyYXktbGlnaHRlciAhZGVmYXVsdDtcbiRkcm9wZG93bi1ib3gtc2hhZG93OiAgICAgICAgICAgIDAgLjVyZW0gMXJlbSByZ2JhKCRibGFjaywuMTc1KSAhZGVmYXVsdDtcblxuJGRyb3Bkb3duLWxpbmstY29sb3I6ICAgICAgICAgICAgJGdyYXktZGFyayAhZGVmYXVsdDtcbiRkcm9wZG93bi1saW5rLWhvdmVyLWNvbG9yOiAgICAgIGRhcmtlbigkZ3JheS1kYXJrLCA1JSkgIWRlZmF1bHQ7XG4kZHJvcGRvd24tbGluay1ob3Zlci1iZzogICAgICAgICAkZ3JheS1saWdodGVzdCAhZGVmYXVsdDtcblxuJGRyb3Bkb3duLWxpbmstYWN0aXZlLWNvbG9yOiAgICAgJGNvbXBvbmVudC1hY3RpdmUtY29sb3IgIWRlZmF1bHQ7XG4kZHJvcGRvd24tbGluay1hY3RpdmUtYmc6ICAgICAgICAkY29tcG9uZW50LWFjdGl2ZS1iZyAhZGVmYXVsdDtcblxuJGRyb3Bkb3duLWxpbmstZGlzYWJsZWQtY29sb3I6ICAgJGdyYXktbGlnaHQgIWRlZmF1bHQ7XG5cbiRkcm9wZG93bi1pdGVtLXBhZGRpbmcteDogICAgICAgIDEuNXJlbSAhZGVmYXVsdDtcblxuJGRyb3Bkb3duLWhlYWRlci1jb2xvcjogICAgICAgICAgJGdyYXktbGlnaHQgIWRlZmF1bHQ7XG5cblxuLy8gWi1pbmRleCBtYXN0ZXIgbGlzdFxuLy9cbi8vIFdhcm5pbmc6IEF2b2lkIGN1c3RvbWl6aW5nIHRoZXNlIHZhbHVlcy4gVGhleSdyZSB1c2VkIGZvciBhIGJpcmQncyBleWUgdmlld1xuLy8gb2YgY29tcG9uZW50cyBkZXBlbmRlbnQgb24gdGhlIHotYXhpcyBhbmQgYXJlIGRlc2lnbmVkIHRvIGFsbCB3b3JrIHRvZ2V0aGVyLlxuXG4kemluZGV4LWRyb3Bkb3duLWJhY2tkcm9wOiAgOTkwICFkZWZhdWx0O1xuJHppbmRleC1uYXZiYXI6ICAgICAgICAgICAgIDEwMDAgIWRlZmF1bHQ7XG4kemluZGV4LWRyb3Bkb3duOiAgICAgICAgICAgMTAwMCAhZGVmYXVsdDtcbiR6aW5kZXgtZml4ZWQ6ICAgICAgICAgICAgICAxMDMwICFkZWZhdWx0O1xuJHppbmRleC1zdGlja3k6ICAgICAgICAgICAgIDEwMzAgIWRlZmF1bHQ7XG4kemluZGV4LW1vZGFsLWJhY2tkcm9wOiAgICAgMTA0MCAhZGVmYXVsdDtcbiR6aW5kZXgtbW9kYWw6ICAgICAgICAgICAgICAxMDUwICFkZWZhdWx0O1xuJHppbmRleC1wb3BvdmVyOiAgICAgICAgICAgIDEwNjAgIWRlZmF1bHQ7XG4kemluZGV4LXRvb2x0aXA6ICAgICAgICAgICAgMTA3MCAhZGVmYXVsdDtcblxuXG4vLyBOYXZiYXJcblxuJG5hdmJhci1ib3JkZXItcmFkaXVzOiAgICAgICAgICAgICAgJGJvcmRlci1yYWRpdXMgIWRlZmF1bHQ7XG4kbmF2YmFyLXBhZGRpbmcteDogICAgICAgICAgICAgICAgICAkc3BhY2VyICFkZWZhdWx0O1xuJG5hdmJhci1wYWRkaW5nLXk6ICAgICAgICAgICAgICAgICAgKCRzcGFjZXIgLyAyKSAhZGVmYXVsdDtcblxuJG5hdmJhci1icmFuZC1wYWRkaW5nLXk6ICAgICAgICAgICAgLjI1cmVtICFkZWZhdWx0O1xuXG4kbmF2YmFyLXRvZ2dsZXItcGFkZGluZy14OiAgICAgICAgICAgLjc1cmVtICFkZWZhdWx0O1xuJG5hdmJhci10b2dnbGVyLXBhZGRpbmcteTogICAgICAgICAgIC4yNXJlbSAhZGVmYXVsdDtcbiRuYXZiYXItdG9nZ2xlci1mb250LXNpemU6ICAgICAgICAgICAkZm9udC1zaXplLWxnICFkZWZhdWx0O1xuJG5hdmJhci10b2dnbGVyLWJvcmRlci1yYWRpdXM6ICAgICAgICRidG4tYm9yZGVyLXJhZGl1cyAhZGVmYXVsdDtcblxuJG5hdmJhci1pbnZlcnNlLWNvbG9yOiAgICAgICAgICAgICAgICAgcmdiYSgkd2hpdGUsLjUpICFkZWZhdWx0O1xuJG5hdmJhci1pbnZlcnNlLWhvdmVyLWNvbG9yOiAgICAgICAgICAgcmdiYSgkd2hpdGUsLjc1KSAhZGVmYXVsdDtcbiRuYXZiYXItaW52ZXJzZS1hY3RpdmUtY29sb3I6ICAgICAgICAgIHJnYmEoJHdoaXRlLDEpICFkZWZhdWx0O1xuJG5hdmJhci1pbnZlcnNlLWRpc2FibGVkLWNvbG9yOiAgICAgICAgcmdiYSgkd2hpdGUsLjI1KSAhZGVmYXVsdDtcbiRuYXZiYXItaW52ZXJzZS10b2dnbGVyLWJnOiBzdHItcmVwbGFjZSh1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWw7Y2hhcnNldD11dGY4LCUzQ3N2ZyB2aWV3Qm94PScwIDAgMzIgMzInIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyclM0UlM0NwYXRoIHN0cm9rZT0nI3skbmF2YmFyLWludmVyc2UtY29sb3J9JyBzdHJva2Utd2lkdGg9JzInIHN0cm9rZS1saW5lY2FwPSdyb3VuZCcgc3Ryb2tlLW1pdGVybGltaXQ9JzEwJyBkPSdNNCA4aDI0TTQgMTZoMjRNNCAyNGgyNCcvJTNFJTNDL3N2ZyUzRVwiKSwgXCIjXCIsIFwiJTIzXCIpICFkZWZhdWx0O1xuJG5hdmJhci1pbnZlcnNlLXRvZ2dsZXItYm9yZGVyOiAgICAgICAgcmdiYSgkd2hpdGUsLjEpICFkZWZhdWx0O1xuXG4kbmF2YmFyLWxpZ2h0LWNvbG9yOiAgICAgICAgICAgICAgICByZ2JhKCRibGFjaywuNSkgIWRlZmF1bHQ7XG4kbmF2YmFyLWxpZ2h0LWhvdmVyLWNvbG9yOiAgICAgICAgICByZ2JhKCRibGFjaywuNykgIWRlZmF1bHQ7XG4kbmF2YmFyLWxpZ2h0LWFjdGl2ZS1jb2xvcjogICAgICAgICByZ2JhKCRibGFjaywuOSkgIWRlZmF1bHQ7XG4kbmF2YmFyLWxpZ2h0LWRpc2FibGVkLWNvbG9yOiAgICAgICByZ2JhKCRibGFjaywuMykgIWRlZmF1bHQ7XG4kbmF2YmFyLWxpZ2h0LXRvZ2dsZXItYmc6IHN0ci1yZXBsYWNlKHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbDtjaGFyc2V0PXV0ZjgsJTNDc3ZnIHZpZXdCb3g9JzAgMCAzMiAzMicgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyUzRSUzQ3BhdGggc3Ryb2tlPScjeyRuYXZiYXItbGlnaHQtY29sb3J9JyBzdHJva2Utd2lkdGg9JzInIHN0cm9rZS1saW5lY2FwPSdyb3VuZCcgc3Ryb2tlLW1pdGVybGltaXQ9JzEwJyBkPSdNNCA4aDI0TTQgMTZoMjRNNCAyNGgyNCcvJTNFJTNDL3N2ZyUzRVwiKSwgXCIjXCIsIFwiJTIzXCIpICFkZWZhdWx0O1xuJG5hdmJhci1saWdodC10b2dnbGVyLWJvcmRlcjogICAgICAgcmdiYSgkYmxhY2ssLjEpICFkZWZhdWx0O1xuXG4vLyBOYXZzXG5cbiRuYXYtaXRlbS1tYXJnaW46ICAgICAgICAgICAgICAgLjJyZW0gIWRlZmF1bHQ7XG4kbmF2LWl0ZW0taW5saW5lLXNwYWNlcjogICAgICAgIDFyZW0gIWRlZmF1bHQ7XG4kbmF2LWxpbmstcGFkZGluZzogICAgICAgICAgICAgIC41ZW0gMWVtICFkZWZhdWx0O1xuJG5hdi1saW5rLWhvdmVyLWJnOiAgICAgICAgICAgICAkZ3JheS1saWdodGVyICFkZWZhdWx0O1xuJG5hdi1kaXNhYmxlZC1saW5rLWNvbG9yOiAgICAgICAkZ3JheS1saWdodCAhZGVmYXVsdDtcblxuJG5hdi10YWJzLWJvcmRlci1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgICNkZGQgIWRlZmF1bHQ7XG4kbmF2LXRhYnMtYm9yZGVyLXdpZHRoOiAgICAgICAgICAgICAgICAgICAgICAgJGJvcmRlci13aWR0aCAhZGVmYXVsdDtcbiRuYXYtdGFicy1ib3JkZXItcmFkaXVzOiAgICAgICAgICAgICAgICAgICAgICAkYm9yZGVyLXJhZGl1cyAhZGVmYXVsdDtcbiRuYXYtdGFicy1saW5rLWhvdmVyLWJvcmRlci1jb2xvcjogICAgICAgICAgICAkZ3JheS1saWdodGVyICFkZWZhdWx0O1xuJG5hdi10YWJzLWFjdGl2ZS1saW5rLWhvdmVyLWNvbG9yOiAgICAgICAgICAgICRncmF5ICFkZWZhdWx0O1xuJG5hdi10YWJzLWFjdGl2ZS1saW5rLWhvdmVyLWJnOiAgICAgICAgICAgICAgICRib2R5LWJnICFkZWZhdWx0O1xuJG5hdi10YWJzLWFjdGl2ZS1saW5rLWhvdmVyLWJvcmRlci1jb2xvcjogICAgICNkZGQgIWRlZmF1bHQ7XG4kbmF2LXRhYnMtanVzdGlmaWVkLWxpbmstYm9yZGVyLWNvbG9yOiAgICAgICAgI2RkZCAhZGVmYXVsdDtcbiRuYXYtdGFicy1qdXN0aWZpZWQtYWN0aXZlLWxpbmstYm9yZGVyLWNvbG9yOiAkYm9keS1iZyAhZGVmYXVsdDtcblxuJG5hdi1waWxscy1ib3JkZXItcmFkaXVzOiAgICAgJGJvcmRlci1yYWRpdXMgIWRlZmF1bHQ7XG4kbmF2LXBpbGxzLWFjdGl2ZS1saW5rLWNvbG9yOiAkY29tcG9uZW50LWFjdGl2ZS1jb2xvciAhZGVmYXVsdDtcbiRuYXYtcGlsbHMtYWN0aXZlLWxpbmstYmc6ICAgICRjb21wb25lbnQtYWN0aXZlLWJnICFkZWZhdWx0O1xuXG5cbi8vIFBhZ2luYXRpb25cblxuJHBhZ2luYXRpb24tcGFkZGluZy14OiAgICAgICAgICAgICAgICAuNzVyZW0gIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1wYWRkaW5nLXk6ICAgICAgICAgICAgICAgIC41cmVtICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tcGFkZGluZy14LXNtOiAgICAgICAgICAgICAuNXJlbSAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLXBhZGRpbmcteS1zbTogICAgICAgICAgICAgLjI1cmVtICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tcGFkZGluZy14LWxnOiAgICAgICAgICAgICAxLjVyZW0gIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1wYWRkaW5nLXktbGc6ICAgICAgICAgICAgIC43NXJlbSAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLWxpbmUtaGVpZ2h0OiAgICAgICAgICAgICAgMS4yNSAhZGVmYXVsdDtcblxuJHBhZ2luYXRpb24tY29sb3I6ICAgICAgICAgICAgICAgICAgICAgJGxpbmstY29sb3IgIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1iZzogICAgICAgICAgICAgICAgICAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1ib3JkZXItd2lkdGg6ICAgICAgICAgICAgICAkYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tYm9yZGVyLWNvbG9yOiAgICAgICAgICAgICAgI2RkZCAhZGVmYXVsdDtcblxuJHBhZ2luYXRpb24taG92ZXItY29sb3I6ICAgICAgICAgICAgICAgJGxpbmstaG92ZXItY29sb3IgIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1ob3Zlci1iZzogICAgICAgICAgICAgICAgICAkZ3JheS1saWdodGVyICFkZWZhdWx0O1xuJHBhZ2luYXRpb24taG92ZXItYm9yZGVyOiAgICAgICAgICAgICAgI2RkZCAhZGVmYXVsdDtcblxuJHBhZ2luYXRpb24tYWN0aXZlLWNvbG9yOiAgICAgICAgICAgICAgJHdoaXRlICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tYWN0aXZlLWJnOiAgICAgICAgICAgICAgICAgJGJyYW5kLXByaW1hcnkgIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1hY3RpdmUtYm9yZGVyOiAgICAgICAgICAgICAkYnJhbmQtcHJpbWFyeSAhZGVmYXVsdDtcblxuJHBhZ2luYXRpb24tZGlzYWJsZWQtY29sb3I6ICAgICAgICAgICAgJGdyYXktbGlnaHQgIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1kaXNhYmxlZC1iZzogICAgICAgICAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1kaXNhYmxlZC1ib3JkZXI6ICAgICAgICAgICAjZGRkICFkZWZhdWx0O1xuXG5cbi8vIEp1bWJvdHJvblxuXG4kanVtYm90cm9uLXBhZGRpbmc6ICAgICAgICAgICAgICAycmVtICFkZWZhdWx0O1xuJGp1bWJvdHJvbi1iZzogICAgICAgICAgICAgICAgICAgJGdyYXktbGlnaHRlciAhZGVmYXVsdDtcblxuXG4vLyBGb3JtIHN0YXRlcyBhbmQgYWxlcnRzXG4vL1xuLy8gRGVmaW5lIGNvbG9ycyBmb3IgZm9ybSBmZWVkYmFjayBzdGF0ZXMgYW5kLCBieSBkZWZhdWx0LCBhbGVydHMuXG5cbiRzdGF0ZS1zdWNjZXNzLXRleHQ6ICAgICAgICAgICAgICMzYzc2M2QgIWRlZmF1bHQ7XG4kc3RhdGUtc3VjY2Vzcy1iZzogICAgICAgICAgICAgICAjZGZmMGQ4ICFkZWZhdWx0O1xuJHN0YXRlLXN1Y2Nlc3MtYm9yZGVyOiAgICAgICAgICAgZGFya2VuKCRzdGF0ZS1zdWNjZXNzLWJnLCA1JSkgIWRlZmF1bHQ7XG5cbiRzdGF0ZS1pbmZvLXRleHQ6ICAgICAgICAgICAgICAgICMzMTcwOGYgIWRlZmF1bHQ7XG4kc3RhdGUtaW5mby1iZzogICAgICAgICAgICAgICAgICAjZDllZGY3ICFkZWZhdWx0O1xuJHN0YXRlLWluZm8tYm9yZGVyOiAgICAgICAgICAgICAgZGFya2VuKCRzdGF0ZS1pbmZvLWJnLCA3JSkgIWRlZmF1bHQ7XG5cbiRzdGF0ZS13YXJuaW5nLXRleHQ6ICAgICAgICAgICAgICM4YTZkM2IgIWRlZmF1bHQ7XG4kc3RhdGUtd2FybmluZy1iZzogICAgICAgICAgICAgICAjZmNmOGUzICFkZWZhdWx0O1xuJG1hcmstYmc6ICAgICAgICAgICAgICAgICAgICAgICAgJHN0YXRlLXdhcm5pbmctYmcgIWRlZmF1bHQ7XG4kc3RhdGUtd2FybmluZy1ib3JkZXI6ICAgICAgICAgICBkYXJrZW4oJHN0YXRlLXdhcm5pbmctYmcsIDUlKSAhZGVmYXVsdDtcblxuJHN0YXRlLWRhbmdlci10ZXh0OiAgICAgICAgICAgICAgI2E5NDQ0MiAhZGVmYXVsdDtcbiRzdGF0ZS1kYW5nZXItYmc6ICAgICAgICAgICAgICAgICNmMmRlZGUgIWRlZmF1bHQ7XG4kc3RhdGUtZGFuZ2VyLWJvcmRlcjogICAgICAgICAgICBkYXJrZW4oJHN0YXRlLWRhbmdlci1iZywgNSUpICFkZWZhdWx0O1xuXG5cbi8vIENhcmRzXG5cbiRjYXJkLXNwYWNlci14OiAgICAgICAgICAgIDEuMjVyZW0gIWRlZmF1bHQ7XG4kY2FyZC1zcGFjZXIteTogICAgICAgICAgICAuNzVyZW0gIWRlZmF1bHQ7XG4kY2FyZC1ib3JkZXItd2lkdGg6ICAgICAgICAxcHggIWRlZmF1bHQ7XG4kY2FyZC1ib3JkZXItcmFkaXVzOiAgICAgICAkYm9yZGVyLXJhZGl1cyAhZGVmYXVsdDtcbiRjYXJkLWJvcmRlci1jb2xvcjogICAgICAgIHJnYmEoJGJsYWNrLC4xMjUpICFkZWZhdWx0O1xuJGNhcmQtYm9yZGVyLXJhZGl1cy1pbm5lcjogY2FsYygjeyRjYXJkLWJvcmRlci1yYWRpdXN9IC0gI3skY2FyZC1ib3JkZXItd2lkdGh9KSAhZGVmYXVsdDtcbiRjYXJkLWNhcC1iZzogICAgICAgICAgICAgICRncmF5LWxpZ2h0ZXN0ICFkZWZhdWx0O1xuJGNhcmQtYmc6ICAgICAgICAgICAgICAgICAgJHdoaXRlICFkZWZhdWx0O1xuXG4kY2FyZC1saW5rLWhvdmVyLWNvbG9yOiAgICAkd2hpdGUgIWRlZmF1bHQ7XG5cbiRjYXJkLWltZy1vdmVybGF5LXBhZGRpbmc6IDEuMjVyZW0gIWRlZmF1bHQ7XG5cbiRjYXJkLWRlY2stbWFyZ2luOiAgICAgICAgICAoJGdyaWQtZ3V0dGVyLXdpZHRoLWJhc2UgLyAyKSAhZGVmYXVsdDtcblxuJGNhcmQtY29sdW1ucy1jb3VudDogICAgICAgIDMgIWRlZmF1bHQ7XG4kY2FyZC1jb2x1bW5zLWdhcDogICAgICAgICAgMS4yNXJlbSAhZGVmYXVsdDtcbiRjYXJkLWNvbHVtbnMtbWFyZ2luOiAgICAgICAkY2FyZC1zcGFjZXIteSAhZGVmYXVsdDtcblxuXG4vLyBUb29sdGlwc1xuXG4kdG9vbHRpcC1tYXgtd2lkdGg6ICAgICAgICAgICAyMDBweCAhZGVmYXVsdDtcbiR0b29sdGlwLWNvbG9yOiAgICAgICAgICAgICAgICR3aGl0ZSAhZGVmYXVsdDtcbiR0b29sdGlwLWJnOiAgICAgICAgICAgICAgICAgICRibGFjayAhZGVmYXVsdDtcbiR0b29sdGlwLW9wYWNpdHk6ICAgICAgICAgICAgIC45ICFkZWZhdWx0O1xuJHRvb2x0aXAtcGFkZGluZy15OiAgICAgICAgICAgM3B4ICFkZWZhdWx0O1xuJHRvb2x0aXAtcGFkZGluZy14OiAgICAgICAgICAgOHB4ICFkZWZhdWx0O1xuJHRvb2x0aXAtbWFyZ2luOiAgICAgICAgICAgICAgM3B4ICFkZWZhdWx0O1xuXG4kdG9vbHRpcC1hcnJvdy13aWR0aDogICAgICAgICA1cHggIWRlZmF1bHQ7XG4kdG9vbHRpcC1hcnJvdy1jb2xvcjogICAgICAgICAkdG9vbHRpcC1iZyAhZGVmYXVsdDtcblxuXG4vLyBQb3BvdmVyc1xuXG4kcG9wb3Zlci1pbm5lci1wYWRkaW5nOiAgICAgICAgICAgICAgIDFweCAhZGVmYXVsdDtcbiRwb3BvdmVyLWJnOiAgICAgICAgICAgICAgICAgICAgICAgICAgJHdoaXRlICFkZWZhdWx0O1xuJHBvcG92ZXItbWF4LXdpZHRoOiAgICAgICAgICAgICAgICAgICAyNzZweCAhZGVmYXVsdDtcbiRwb3BvdmVyLWJvcmRlci13aWR0aDogICAgICAgICAgICAgICAgJGJvcmRlci13aWR0aCAhZGVmYXVsdDtcbiRwb3BvdmVyLWJvcmRlci1jb2xvcjogICAgICAgICAgICAgICAgcmdiYSgkYmxhY2ssLjIpICFkZWZhdWx0O1xuJHBvcG92ZXItYm94LXNoYWRvdzogICAgICAgICAgICAgICAgICAwIDVweCAxMHB4IHJnYmEoJGJsYWNrLC4yKSAhZGVmYXVsdDtcblxuJHBvcG92ZXItdGl0bGUtYmc6ICAgICAgICAgICAgICAgICAgICBkYXJrZW4oJHBvcG92ZXItYmcsIDMlKSAhZGVmYXVsdDtcbiRwb3BvdmVyLXRpdGxlLXBhZGRpbmcteDogICAgICAgICAgICAgMTRweCAhZGVmYXVsdDtcbiRwb3BvdmVyLXRpdGxlLXBhZGRpbmcteTogICAgICAgICAgICAgOHB4ICFkZWZhdWx0O1xuXG4kcG9wb3Zlci1jb250ZW50LXBhZGRpbmcteDogICAgICAgICAgIDE0cHggIWRlZmF1bHQ7XG4kcG9wb3Zlci1jb250ZW50LXBhZGRpbmcteTogICAgICAgICAgIDlweCAhZGVmYXVsdDtcblxuJHBvcG92ZXItYXJyb3ctd2lkdGg6ICAgICAgICAgICAgICAgICAxMHB4ICFkZWZhdWx0O1xuJHBvcG92ZXItYXJyb3ctY29sb3I6ICAgICAgICAgICAgICAgICAkcG9wb3Zlci1iZyAhZGVmYXVsdDtcblxuJHBvcG92ZXItYXJyb3ctb3V0ZXItd2lkdGg6ICAgICAgICAgICAoJHBvcG92ZXItYXJyb3ctd2lkdGggKyAxcHgpICFkZWZhdWx0O1xuJHBvcG92ZXItYXJyb3ctb3V0ZXItY29sb3I6ICAgICAgICAgICBmYWRlLWluKCRwb3BvdmVyLWJvcmRlci1jb2xvciwgLjA1KSAhZGVmYXVsdDtcblxuXG4vLyBCYWRnZXNcblxuJGJhZGdlLWRlZmF1bHQtYmc6ICAgICAgICAgICAgJGdyYXktbGlnaHQgIWRlZmF1bHQ7XG4kYmFkZ2UtcHJpbWFyeS1iZzogICAgICAgICAgICAkYnJhbmQtcHJpbWFyeSAhZGVmYXVsdDtcbiRiYWRnZS1zdWNjZXNzLWJnOiAgICAgICAgICAgICRicmFuZC1zdWNjZXNzICFkZWZhdWx0O1xuJGJhZGdlLWluZm8tYmc6ICAgICAgICAgICAgICAgJGJyYW5kLWluZm8gIWRlZmF1bHQ7XG4kYmFkZ2Utd2FybmluZy1iZzogICAgICAgICAgICAkYnJhbmQtd2FybmluZyAhZGVmYXVsdDtcbiRiYWRnZS1kYW5nZXItYmc6ICAgICAgICAgICAgICRicmFuZC1kYW5nZXIgIWRlZmF1bHQ7XG5cbiRiYWRnZS1jb2xvcjogICAgICAgICAgICAgICAgICR3aGl0ZSAhZGVmYXVsdDtcbiRiYWRnZS1saW5rLWhvdmVyLWNvbG9yOiAgICAgICR3aGl0ZSAhZGVmYXVsdDtcbiRiYWRnZS1mb250LXNpemU6ICAgICAgICAgICAgIDc1JSAhZGVmYXVsdDtcbiRiYWRnZS1mb250LXdlaWdodDogICAgICAgICAgICRmb250LXdlaWdodC1ib2xkICFkZWZhdWx0O1xuJGJhZGdlLXBhZGRpbmcteDogICAgICAgICAgICAgLjRlbSAhZGVmYXVsdDtcbiRiYWRnZS1wYWRkaW5nLXk6ICAgICAgICAgICAgIC4yNWVtICFkZWZhdWx0O1xuXG4kYmFkZ2UtcGlsbC1wYWRkaW5nLXg6ICAgICAgICAuNmVtICFkZWZhdWx0O1xuLy8gVXNlIGEgaGlnaGVyIHRoYW4gbm9ybWFsIHZhbHVlIHRvIGVuc3VyZSBjb21wbGV0ZWx5IHJvdW5kZWQgZWRnZXMgd2hlblxuLy8gY3VzdG9taXppbmcgcGFkZGluZyBvciBmb250LXNpemUgb24gbGFiZWxzLlxuJGJhZGdlLXBpbGwtYm9yZGVyLXJhZGl1czogICAgMTByZW0gIWRlZmF1bHQ7XG5cblxuLy8gTW9kYWxzXG5cbi8vIFBhZGRpbmcgYXBwbGllZCB0byB0aGUgbW9kYWwgYm9keVxuJG1vZGFsLWlubmVyLXBhZGRpbmc6ICAgICAgICAgMTVweCAhZGVmYXVsdDtcblxuJG1vZGFsLWRpYWxvZy1tYXJnaW46ICAgICAgICAgMTBweCAhZGVmYXVsdDtcbiRtb2RhbC1kaWFsb2ctc20tdXAtbWFyZ2luLXk6IDMwcHggIWRlZmF1bHQ7XG5cbiRtb2RhbC10aXRsZS1saW5lLWhlaWdodDogICAgICRsaW5lLWhlaWdodC1iYXNlICFkZWZhdWx0O1xuXG4kbW9kYWwtY29udGVudC1iZzogICAgICAgICAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XG4kbW9kYWwtY29udGVudC1ib3JkZXItY29sb3I6ICAgICByZ2JhKCRibGFjaywuMikgIWRlZmF1bHQ7XG4kbW9kYWwtY29udGVudC1ib3JkZXItd2lkdGg6ICAgICAkYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuJG1vZGFsLWNvbnRlbnQteHMtYm94LXNoYWRvdzogICAgMCAzcHggOXB4IHJnYmEoJGJsYWNrLC41KSAhZGVmYXVsdDtcbiRtb2RhbC1jb250ZW50LXNtLXVwLWJveC1zaGFkb3c6IDAgNXB4IDE1cHggcmdiYSgkYmxhY2ssLjUpICFkZWZhdWx0O1xuXG4kbW9kYWwtYmFja2Ryb3AtYmc6ICAgICAgICAgICAkYmxhY2sgIWRlZmF1bHQ7XG4kbW9kYWwtYmFja2Ryb3Atb3BhY2l0eTogICAgICAuNSAhZGVmYXVsdDtcbiRtb2RhbC1oZWFkZXItYm9yZGVyLWNvbG9yOiAgICRncmF5LWxpZ2h0ZXIgIWRlZmF1bHQ7XG4kbW9kYWwtZm9vdGVyLWJvcmRlci1jb2xvcjogICAkbW9kYWwtaGVhZGVyLWJvcmRlci1jb2xvciAhZGVmYXVsdDtcbiRtb2RhbC1oZWFkZXItYm9yZGVyLXdpZHRoOiAgICRtb2RhbC1jb250ZW50LWJvcmRlci13aWR0aCAhZGVmYXVsdDtcbiRtb2RhbC1mb290ZXItYm9yZGVyLXdpZHRoOiAgICRtb2RhbC1oZWFkZXItYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuJG1vZGFsLWhlYWRlci1wYWRkaW5nOiAgICAgICAgMTVweCAhZGVmYXVsdDtcblxuJG1vZGFsLWxnOiAgICAgICAgICAgICAgICAgICAgODAwcHggIWRlZmF1bHQ7XG4kbW9kYWwtbWQ6ICAgICAgICAgICAgICAgICAgICA1MDBweCAhZGVmYXVsdDtcbiRtb2RhbC1zbTogICAgICAgICAgICAgICAgICAgIDMwMHB4ICFkZWZhdWx0O1xuXG4kbW9kYWwtdHJhbnNpdGlvbjogICAgICAgICAgICB0cmFuc2Zvcm0gLjNzIGVhc2Utb3V0ICFkZWZhdWx0O1xuXG5cbi8vIEFsZXJ0c1xuLy9cbi8vIERlZmluZSBhbGVydCBjb2xvcnMsIGJvcmRlciByYWRpdXMsIGFuZCBwYWRkaW5nLlxuXG4kYWxlcnQtcGFkZGluZy14OiAgICAgICAgICAgICAxLjI1cmVtICFkZWZhdWx0O1xuJGFsZXJ0LXBhZGRpbmcteTogICAgICAgICAgICAgLjc1cmVtICFkZWZhdWx0O1xuJGFsZXJ0LW1hcmdpbi1ib3R0b206ICAgICAgICAgJHNwYWNlci15ICFkZWZhdWx0O1xuJGFsZXJ0LWJvcmRlci1yYWRpdXM6ICAgICAgICAgJGJvcmRlci1yYWRpdXMgIWRlZmF1bHQ7XG4kYWxlcnQtbGluay1mb250LXdlaWdodDogICAgICAkZm9udC13ZWlnaHQtYm9sZCAhZGVmYXVsdDtcbiRhbGVydC1ib3JkZXItd2lkdGg6ICAgICAgICAgICRib3JkZXItd2lkdGggIWRlZmF1bHQ7XG5cbiRhbGVydC1zdWNjZXNzLWJnOiAgICAgICAgICAgICRzdGF0ZS1zdWNjZXNzLWJnICFkZWZhdWx0O1xuJGFsZXJ0LXN1Y2Nlc3MtdGV4dDogICAgICAgICAgJHN0YXRlLXN1Y2Nlc3MtdGV4dCAhZGVmYXVsdDtcbiRhbGVydC1zdWNjZXNzLWJvcmRlcjogICAgICAgICRzdGF0ZS1zdWNjZXNzLWJvcmRlciAhZGVmYXVsdDtcblxuJGFsZXJ0LWluZm8tYmc6ICAgICAgICAgICAgICAgJHN0YXRlLWluZm8tYmcgIWRlZmF1bHQ7XG4kYWxlcnQtaW5mby10ZXh0OiAgICAgICAgICAgICAkc3RhdGUtaW5mby10ZXh0ICFkZWZhdWx0O1xuJGFsZXJ0LWluZm8tYm9yZGVyOiAgICAgICAgICAgJHN0YXRlLWluZm8tYm9yZGVyICFkZWZhdWx0O1xuXG4kYWxlcnQtd2FybmluZy1iZzogICAgICAgICAgICAkc3RhdGUtd2FybmluZy1iZyAhZGVmYXVsdDtcbiRhbGVydC13YXJuaW5nLXRleHQ6ICAgICAgICAgICRzdGF0ZS13YXJuaW5nLXRleHQgIWRlZmF1bHQ7XG4kYWxlcnQtd2FybmluZy1ib3JkZXI6ICAgICAgICAkc3RhdGUtd2FybmluZy1ib3JkZXIgIWRlZmF1bHQ7XG5cbiRhbGVydC1kYW5nZXItYmc6ICAgICAgICAgICAgICRzdGF0ZS1kYW5nZXItYmcgIWRlZmF1bHQ7XG4kYWxlcnQtZGFuZ2VyLXRleHQ6ICAgICAgICAgICAkc3RhdGUtZGFuZ2VyLXRleHQgIWRlZmF1bHQ7XG4kYWxlcnQtZGFuZ2VyLWJvcmRlcjogICAgICAgICAkc3RhdGUtZGFuZ2VyLWJvcmRlciAhZGVmYXVsdDtcblxuXG4vLyBQcm9ncmVzcyBiYXJzXG5cbiRwcm9ncmVzcy1oZWlnaHQ6ICAgICAgICAgICAgICAgMXJlbSAhZGVmYXVsdDtcbiRwcm9ncmVzcy1mb250LXNpemU6ICAgICAgICAgICAgLjc1cmVtICFkZWZhdWx0O1xuJHByb2dyZXNzLWJnOiAgICAgICAgICAgICAgICAgICAkZ3JheS1saWdodGVyICFkZWZhdWx0O1xuJHByb2dyZXNzLWJvcmRlci1yYWRpdXM6ICAgICAgICAkYm9yZGVyLXJhZGl1cyAhZGVmYXVsdDtcbiRwcm9ncmVzcy1ib3gtc2hhZG93OiAgICAgICAgICAgaW5zZXQgMCAuMXJlbSAuMXJlbSByZ2JhKCRibGFjaywuMSkgIWRlZmF1bHQ7XG4kcHJvZ3Jlc3MtYmFyLWNvbG9yOiAgICAgICAgICAgICR3aGl0ZSAhZGVmYXVsdDtcbiRwcm9ncmVzcy1iYXItYmc6ICAgICAgICAgICAgICAgJGJyYW5kLXByaW1hcnkgIWRlZmF1bHQ7XG4kcHJvZ3Jlc3MtYmFyLWFuaW1hdGlvbi10aW1pbmc6IDFzIGxpbmVhciBpbmZpbml0ZSAhZGVmYXVsdDtcblxuLy8gTGlzdCBncm91cFxuXG4kbGlzdC1ncm91cC1jb2xvcjogICAgICAgICAgICAgICAkYm9keS1jb2xvciAhZGVmYXVsdDtcbiRsaXN0LWdyb3VwLWJnOiAgICAgICAgICAgICAgICAgICR3aGl0ZSAhZGVmYXVsdDtcbiRsaXN0LWdyb3VwLWJvcmRlci1jb2xvcjogICAgICAgIHJnYmEoJGJsYWNrLC4xMjUpICFkZWZhdWx0O1xuJGxpc3QtZ3JvdXAtYm9yZGVyLXdpZHRoOiAgICAgICAgJGJvcmRlci13aWR0aCAhZGVmYXVsdDtcbiRsaXN0LWdyb3VwLWJvcmRlci1yYWRpdXM6ICAgICAgICRib3JkZXItcmFkaXVzICFkZWZhdWx0O1xuXG4kbGlzdC1ncm91cC1pdGVtLXBhZGRpbmcteDogICAgICAxLjI1cmVtICFkZWZhdWx0O1xuJGxpc3QtZ3JvdXAtaXRlbS1wYWRkaW5nLXk6ICAgICAgLjc1cmVtICFkZWZhdWx0O1xuXG4kbGlzdC1ncm91cC1ob3Zlci1iZzogICAgICAgICAgICAkZ3JheS1saWdodGVzdCAhZGVmYXVsdDtcbiRsaXN0LWdyb3VwLWFjdGl2ZS1jb2xvcjogICAgICAgICRjb21wb25lbnQtYWN0aXZlLWNvbG9yICFkZWZhdWx0O1xuJGxpc3QtZ3JvdXAtYWN0aXZlLWJnOiAgICAgICAgICAgJGNvbXBvbmVudC1hY3RpdmUtYmcgIWRlZmF1bHQ7XG4kbGlzdC1ncm91cC1hY3RpdmUtYm9yZGVyOiAgICAgICAkbGlzdC1ncm91cC1hY3RpdmUtYmcgIWRlZmF1bHQ7XG4kbGlzdC1ncm91cC1hY3RpdmUtdGV4dC1jb2xvcjogICBsaWdodGVuKCRsaXN0LWdyb3VwLWFjdGl2ZS1iZywgNTAlKSAhZGVmYXVsdDtcblxuJGxpc3QtZ3JvdXAtZGlzYWJsZWQtY29sb3I6ICAgICAgJGdyYXktbGlnaHQgIWRlZmF1bHQ7XG4kbGlzdC1ncm91cC1kaXNhYmxlZC1iZzogICAgICAgICAkbGlzdC1ncm91cC1iZyAhZGVmYXVsdDtcbiRsaXN0LWdyb3VwLWRpc2FibGVkLXRleHQtY29sb3I6ICRsaXN0LWdyb3VwLWRpc2FibGVkLWNvbG9yICFkZWZhdWx0O1xuXG4kbGlzdC1ncm91cC1saW5rLWNvbG9yOiAgICAgICAgICAkZ3JheSAhZGVmYXVsdDtcbiRsaXN0LWdyb3VwLWxpbmstaGVhZGluZy1jb2xvcjogICRncmF5LWRhcmsgIWRlZmF1bHQ7XG4kbGlzdC1ncm91cC1saW5rLWhvdmVyLWNvbG9yOiAgICAkbGlzdC1ncm91cC1saW5rLWNvbG9yICFkZWZhdWx0O1xuXG4kbGlzdC1ncm91cC1saW5rLWFjdGl2ZS1jb2xvcjogICAkbGlzdC1ncm91cC1jb2xvciAhZGVmYXVsdDtcbiRsaXN0LWdyb3VwLWxpbmstYWN0aXZlLWJnOiAgICAgICRncmF5LWxpZ2h0ZXIgIWRlZmF1bHQ7XG5cblxuLy8gSW1hZ2UgdGh1bWJuYWlsc1xuXG4kdGh1bWJuYWlsLXBhZGRpbmc6ICAgICAgICAgICAuMjVyZW0gIWRlZmF1bHQ7XG4kdGh1bWJuYWlsLWJnOiAgICAgICAgICAgICAgICAkYm9keS1iZyAhZGVmYXVsdDtcbiR0aHVtYm5haWwtYm9yZGVyLXdpZHRoOiAgICAgICRib3JkZXItd2lkdGggIWRlZmF1bHQ7XG4kdGh1bWJuYWlsLWJvcmRlci1jb2xvcjogICAgICAjZGRkICFkZWZhdWx0O1xuJHRodW1ibmFpbC1ib3JkZXItcmFkaXVzOiAgICAgJGJvcmRlci1yYWRpdXMgIWRlZmF1bHQ7XG4kdGh1bWJuYWlsLWJveC1zaGFkb3c6ICAgICAgICAwIDFweCAycHggcmdiYSgkYmxhY2ssLjA3NSkgIWRlZmF1bHQ7XG4kdGh1bWJuYWlsLXRyYW5zaXRpb246ICAgICAgICBhbGwgLjJzIGVhc2UtaW4tb3V0ICFkZWZhdWx0O1xuXG5cbi8vIEZpZ3VyZXNcblxuJGZpZ3VyZS1jYXB0aW9uLWZvbnQtc2l6ZTogOTAlICFkZWZhdWx0O1xuJGZpZ3VyZS1jYXB0aW9uLWNvbG9yOiAgICAgJGdyYXktbGlnaHQgIWRlZmF1bHQ7XG5cblxuLy8gQnJlYWRjcnVtYnNcblxuJGJyZWFkY3J1bWItcGFkZGluZy15OiAgICAgICAgICAuNzVyZW0gIWRlZmF1bHQ7XG4kYnJlYWRjcnVtYi1wYWRkaW5nLXg6ICAgICAgICAgIDFyZW0gIWRlZmF1bHQ7XG4kYnJlYWRjcnVtYi1pdGVtLXBhZGRpbmc6ICAgICAgIC41cmVtICFkZWZhdWx0O1xuXG4kYnJlYWRjcnVtYi1iZzogICAgICAgICAgICAgICAgICRncmF5LWxpZ2h0ZXIgIWRlZmF1bHQ7XG4kYnJlYWRjcnVtYi1kaXZpZGVyLWNvbG9yOiAgICAgICRncmF5LWxpZ2h0ICFkZWZhdWx0O1xuJGJyZWFkY3J1bWItYWN0aXZlLWNvbG9yOiAgICAgICAkZ3JheS1saWdodCAhZGVmYXVsdDtcbiRicmVhZGNydW1iLWRpdmlkZXI6ICAgICAgICAgICAgXCIvXCIgIWRlZmF1bHQ7XG5cblxuLy8gQ2Fyb3VzZWxcblxuJGNhcm91c2VsLWNvbnRyb2wtY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICR3aGl0ZSAhZGVmYXVsdDtcbiRjYXJvdXNlbC1jb250cm9sLXdpZHRoOiAgICAgICAgICAgICAgICAgICAgICAxNSUgIWRlZmF1bHQ7XG4kY2Fyb3VzZWwtY29udHJvbC1vcGFjaXR5OiAgICAgICAgICAgICAgICAgICAgLjUgIWRlZmF1bHQ7XG5cbiRjYXJvdXNlbC1pbmRpY2F0b3Itd2lkdGg6ICAgICAgICAgICAgICAgICAgICAzMHB4ICFkZWZhdWx0O1xuJGNhcm91c2VsLWluZGljYXRvci1oZWlnaHQ6ICAgICAgICAgICAgICAgICAgIDNweCAhZGVmYXVsdDtcbiRjYXJvdXNlbC1pbmRpY2F0b3Itc3BhY2VyOiAgICAgICAgICAgICAgICAgICAzcHggIWRlZmF1bHQ7XG4kY2Fyb3VzZWwtaW5kaWNhdG9yLWFjdGl2ZS1iZzogICAgICAgICAgICAgICAgJHdoaXRlICFkZWZhdWx0O1xuXG4kY2Fyb3VzZWwtY2FwdGlvbi13aWR0aDogICAgICAgICAgICAgICAgICAgICAgNzAlICFkZWZhdWx0O1xuJGNhcm91c2VsLWNhcHRpb24tY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICR3aGl0ZSAhZGVmYXVsdDtcblxuJGNhcm91c2VsLWNvbnRyb2wtaWNvbi13aWR0aDogICAgICAgICAgICAgICAgIDIwcHggIWRlZmF1bHQ7XG5cbiRjYXJvdXNlbC1jb250cm9sLXByZXYtaWNvbi1iZzogc3RyLXJlcGxhY2UodXJsKFwiZGF0YTppbWFnZS9zdmcreG1sO2NoYXJzZXQ9dXRmOCwlM0NzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyBmaWxsPScjeyRjYXJvdXNlbC1jb250cm9sLWNvbG9yfScgdmlld0JveD0nMCAwIDggOCclM0UlM0NwYXRoIGQ9J000IDBsLTQgNCA0IDQgMS41LTEuNS0yLjUtMi41IDIuNS0yLjUtMS41LTEuNXonLyUzRSUzQy9zdmclM0VcIiksIFwiI1wiLCBcIiUyM1wiKSAhZGVmYXVsdDtcbiRjYXJvdXNlbC1jb250cm9sLW5leHQtaWNvbi1iZzogc3RyLXJlcGxhY2UodXJsKFwiZGF0YTppbWFnZS9zdmcreG1sO2NoYXJzZXQ9dXRmOCwlM0NzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyBmaWxsPScjeyRjYXJvdXNlbC1jb250cm9sLWNvbG9yfScgdmlld0JveD0nMCAwIDggOCclM0UlM0NwYXRoIGQ9J00xLjUgMGwtMS41IDEuNSAyLjUgMi41LTIuNSAyLjUgMS41IDEuNSA0LTQtNC00eicvJTNFJTNDL3N2ZyUzRVwiKSwgXCIjXCIsIFwiJTIzXCIpICFkZWZhdWx0O1xuXG4kY2Fyb3VzZWwtdHJhbnNpdGlvbjogICAgICAgICAgIHRyYW5zZm9ybSAuNnMgZWFzZS1pbi1vdXQgIWRlZmF1bHQ7XG5cblxuLy8gQ2xvc2VcblxuJGNsb3NlLWZvbnQtc2l6ZTogICAgICAgICAgICAgJGZvbnQtc2l6ZS1iYXNlICogMS41ICFkZWZhdWx0O1xuJGNsb3NlLWZvbnQtd2VpZ2h0OiAgICAgICAgICAgJGZvbnQtd2VpZ2h0LWJvbGQgIWRlZmF1bHQ7XG4kY2xvc2UtY29sb3I6ICAgICAgICAgICAgICAgICAkYmxhY2sgIWRlZmF1bHQ7XG4kY2xvc2UtdGV4dC1zaGFkb3c6ICAgICAgICAgICAwIDFweCAwICR3aGl0ZSAhZGVmYXVsdDtcblxuXG4vLyBDb2RlXG5cbiRjb2RlLWZvbnQtc2l6ZTogICAgICAgICAgICAgIDkwJSAhZGVmYXVsdDtcbiRjb2RlLXBhZGRpbmcteDogICAgICAgICAgICAgIC40cmVtICFkZWZhdWx0O1xuJGNvZGUtcGFkZGluZy15OiAgICAgICAgICAgICAgLjJyZW0gIWRlZmF1bHQ7XG4kY29kZS1jb2xvcjogICAgICAgICAgICAgICAgICAjYmQ0MTQ3ICFkZWZhdWx0O1xuJGNvZGUtYmc6ICAgICAgICAgICAgICAgICAgICAgJGdyYXktbGlnaHRlc3QgIWRlZmF1bHQ7XG5cbiRrYmQtY29sb3I6ICAgICAgICAgICAgICAgICAgICR3aGl0ZSAhZGVmYXVsdDtcbiRrYmQtYmc6ICAgICAgICAgICAgICAgICAgICAgICRncmF5LWRhcmsgIWRlZmF1bHQ7XG5cbiRwcmUtYmc6ICAgICAgICAgICAgICAgICAgICAgICRncmF5LWxpZ2h0ZXN0ICFkZWZhdWx0O1xuJHByZS1jb2xvcjogICAgICAgICAgICAgICAgICAgJGdyYXktZGFyayAhZGVmYXVsdDtcbiRwcmUtYm9yZGVyLWNvbG9yOiAgICAgICAgICAgICNjY2MgIWRlZmF1bHQ7XG4kcHJlLXNjcm9sbGFibGUtbWF4LWhlaWdodDogICAzNDBweCAhZGVmYXVsdDtcbiIsIi8vIFRvZ2dsZXNcbi8vXG4vLyBVc2VkIGluIGNvbmp1bmN0aW9uIHdpdGggZ2xvYmFsIHZhcmlhYmxlcyB0byBlbmFibGUgY2VydGFpbiB0aGVtZSBmZWF0dXJlcy5cblxuQG1peGluIGJveC1zaGFkb3coJHNoYWRvdy4uLikge1xuICBAaWYgJGVuYWJsZS1zaGFkb3dzIHtcbiAgICBib3gtc2hhZG93OiAkc2hhZG93O1xuICB9XG59XG5cbkBtaXhpbiB0cmFuc2l0aW9uKCR0cmFuc2l0aW9uLi4uKSB7XG4gIEBpZiAkZW5hYmxlLXRyYW5zaXRpb25zIHtcbiAgICBAaWYgbGVuZ3RoKCR0cmFuc2l0aW9uKSA9PSAwIHtcbiAgICAgIHRyYW5zaXRpb246ICR0cmFuc2l0aW9uLWJhc2U7XG4gICAgfSBAZWxzZSB7XG4gICAgICB0cmFuc2l0aW9uOiAkdHJhbnNpdGlvbjtcbiAgICB9XG4gIH1cbn1cblxuLy8gVXRpbGl0aWVzXG5AaW1wb3J0IFwibWl4aW5zL2JyZWFrcG9pbnRzXCI7XG5AaW1wb3J0IFwibWl4aW5zL2hvdmVyXCI7XG5AaW1wb3J0IFwibWl4aW5zL2ltYWdlXCI7XG5AaW1wb3J0IFwibWl4aW5zL2JhZGdlXCI7XG5AaW1wb3J0IFwibWl4aW5zL3Jlc2l6ZVwiO1xuQGltcG9ydCBcIm1peGlucy9zY3JlZW4tcmVhZGVyXCI7XG5AaW1wb3J0IFwibWl4aW5zL3NpemVcIjtcbkBpbXBvcnQgXCJtaXhpbnMvcmVzZXQtdGV4dFwiO1xuQGltcG9ydCBcIm1peGlucy90ZXh0LWVtcGhhc2lzXCI7XG5AaW1wb3J0IFwibWl4aW5zL3RleHQtaGlkZVwiO1xuQGltcG9ydCBcIm1peGlucy90ZXh0LXRydW5jYXRlXCI7XG5AaW1wb3J0IFwibWl4aW5zL3RyYW5zZm9ybXNcIjtcbkBpbXBvcnQgXCJtaXhpbnMvdmlzaWJpbGl0eVwiO1xuXG4vLyAvLyBDb21wb25lbnRzXG5AaW1wb3J0IFwibWl4aW5zL2FsZXJ0XCI7XG5AaW1wb3J0IFwibWl4aW5zL2J1dHRvbnNcIjtcbkBpbXBvcnQgXCJtaXhpbnMvY2FyZHNcIjtcbkBpbXBvcnQgXCJtaXhpbnMvcGFnaW5hdGlvblwiO1xuQGltcG9ydCBcIm1peGlucy9saXN0c1wiO1xuQGltcG9ydCBcIm1peGlucy9saXN0LWdyb3VwXCI7XG5AaW1wb3J0IFwibWl4aW5zL25hdi1kaXZpZGVyXCI7XG5AaW1wb3J0IFwibWl4aW5zL2Zvcm1zXCI7XG5AaW1wb3J0IFwibWl4aW5zL3RhYmxlLXJvd1wiO1xuXG4vLyAvLyBTa2luc1xuQGltcG9ydCBcIm1peGlucy9iYWNrZ3JvdW5kLXZhcmlhbnRcIjtcbkBpbXBvcnQgXCJtaXhpbnMvYm9yZGVyLXJhZGl1c1wiO1xuQGltcG9ydCBcIm1peGlucy9ncmFkaWVudHNcIjtcblxuLy8gLy8gTGF5b3V0XG5AaW1wb3J0IFwibWl4aW5zL2NsZWFyZml4XCI7XG4vLyBAaW1wb3J0IFwibWl4aW5zL25hdmJhci1hbGlnblwiO1xuQGltcG9ydCBcIm1peGlucy9ncmlkLWZyYW1ld29ya1wiO1xuQGltcG9ydCBcIm1peGlucy9ncmlkXCI7XG5AaW1wb3J0IFwibWl4aW5zL2Zsb2F0XCI7XG4iLCIvLyBCcmVha3BvaW50IHZpZXdwb3J0IHNpemVzIGFuZCBtZWRpYSBxdWVyaWVzLlxuLy9cbi8vIEJyZWFrcG9pbnRzIGFyZSBkZWZpbmVkIGFzIGEgbWFwIG9mIChuYW1lOiBtaW5pbXVtIHdpZHRoKSwgb3JkZXIgZnJvbSBzbWFsbCB0byBsYXJnZTpcbi8vXG4vLyAgICAoeHM6IDAsIHNtOiA1NzZweCwgbWQ6IDc2OHB4KVxuLy9cbi8vIFRoZSBtYXAgZGVmaW5lZCBpbiB0aGUgYCRncmlkLWJyZWFrcG9pbnRzYCBnbG9iYWwgdmFyaWFibGUgaXMgdXNlZCBhcyB0aGUgYCRicmVha3BvaW50c2AgYXJndW1lbnQgYnkgZGVmYXVsdC5cblxuLy8gTmFtZSBvZiB0aGUgbmV4dCBicmVha3BvaW50LCBvciBudWxsIGZvciB0aGUgbGFzdCBicmVha3BvaW50LlxuLy9cbi8vICAgID4+IGJyZWFrcG9pbnQtbmV4dChzbSlcbi8vICAgIG1kXG4vLyAgICA+PiBicmVha3BvaW50LW5leHQoc20sICh4czogMCwgc206IDU3NnB4LCBtZDogNzY4cHgpKVxuLy8gICAgbWRcbi8vICAgID4+IGJyZWFrcG9pbnQtbmV4dChzbSwgJGJyZWFrcG9pbnQtbmFtZXM6ICh4cyBzbSBtZCkpXG4vLyAgICBtZFxuQGZ1bmN0aW9uIGJyZWFrcG9pbnQtbmV4dCgkbmFtZSwgJGJyZWFrcG9pbnRzOiAkZ3JpZC1icmVha3BvaW50cywgJGJyZWFrcG9pbnQtbmFtZXM6IG1hcC1rZXlzKCRicmVha3BvaW50cykpIHtcbiAgJG46IGluZGV4KCRicmVha3BvaW50LW5hbWVzLCAkbmFtZSk7XG4gIEByZXR1cm4gaWYoJG4gPCBsZW5ndGgoJGJyZWFrcG9pbnQtbmFtZXMpLCBudGgoJGJyZWFrcG9pbnQtbmFtZXMsICRuICsgMSksIG51bGwpO1xufVxuXG4vLyBNaW5pbXVtIGJyZWFrcG9pbnQgd2lkdGguIE51bGwgZm9yIHRoZSBzbWFsbGVzdCAoZmlyc3QpIGJyZWFrcG9pbnQuXG4vL1xuLy8gICAgPj4gYnJlYWtwb2ludC1taW4oc20sICh4czogMCwgc206IDU3NnB4LCBtZDogNzY4cHgpKVxuLy8gICAgNTc2cHhcbkBmdW5jdGlvbiBicmVha3BvaW50LW1pbigkbmFtZSwgJGJyZWFrcG9pbnRzOiAkZ3JpZC1icmVha3BvaW50cykge1xuICAkbWluOiBtYXAtZ2V0KCRicmVha3BvaW50cywgJG5hbWUpO1xuICBAcmV0dXJuIGlmKCRtaW4gIT0gMCwgJG1pbiwgbnVsbCk7XG59XG5cbi8vIE1heGltdW0gYnJlYWtwb2ludCB3aWR0aC4gTnVsbCBmb3IgdGhlIGxhcmdlc3QgKGxhc3QpIGJyZWFrcG9pbnQuXG4vLyBUaGUgbWF4aW11bSB2YWx1ZSBpcyBjYWxjdWxhdGVkIGFzIHRoZSBtaW5pbXVtIG9mIHRoZSBuZXh0IG9uZSBsZXNzIDAuMS5cbi8vXG4vLyAgICA+PiBicmVha3BvaW50LW1heChzbSwgKHhzOiAwLCBzbTogNTc2cHgsIG1kOiA3NjhweCkpXG4vLyAgICA3NjdweFxuQGZ1bmN0aW9uIGJyZWFrcG9pbnQtbWF4KCRuYW1lLCAkYnJlYWtwb2ludHM6ICRncmlkLWJyZWFrcG9pbnRzKSB7XG4gICRuZXh0OiBicmVha3BvaW50LW5leHQoJG5hbWUsICRicmVha3BvaW50cyk7XG4gIEByZXR1cm4gaWYoJG5leHQsIGJyZWFrcG9pbnQtbWluKCRuZXh0LCAkYnJlYWtwb2ludHMpIC0gMXB4LCBudWxsKTtcbn1cblxuLy8gUmV0dXJucyBhIGJsYW5rIHN0cmluZyBpZiBzbWFsbGVzdCBicmVha3BvaW50LCBvdGhlcndpc2UgcmV0dXJucyB0aGUgbmFtZSB3aXRoIGEgZGFzaCBpbmZyb250LlxuLy8gVXNlZnVsIGZvciBtYWtpbmcgcmVzcG9uc2l2ZSB1dGlsaXRpZXMuXG4vL1xuLy8gICAgPj4gYnJlYWtwb2ludC1pbmZpeCh4cywgKHhzOiAwLCBzbTogNTc2cHgsIG1kOiA3NjhweCkpXG4vLyAgICBcIlwiICAoUmV0dXJucyBhIGJsYW5rIHN0cmluZylcbi8vICAgID4+IGJyZWFrcG9pbnQtaW5maXgoc20sICh4czogMCwgc206IDU3NnB4LCBtZDogNzY4cHgpKVxuLy8gICAgXCItc21cIlxuQGZ1bmN0aW9uIGJyZWFrcG9pbnQtaW5maXgoJG5hbWUsICRicmVha3BvaW50czogJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgQHJldHVybiBpZihicmVha3BvaW50LW1pbigkbmFtZSwgJGJyZWFrcG9pbnRzKSA9PSBudWxsLCBcIlwiLCBcIi0jeyRuYW1lfVwiKTtcbn1cblxuLy8gTWVkaWEgb2YgYXQgbGVhc3QgdGhlIG1pbmltdW0gYnJlYWtwb2ludCB3aWR0aC4gTm8gcXVlcnkgZm9yIHRoZSBzbWFsbGVzdCBicmVha3BvaW50LlxuLy8gTWFrZXMgdGhlIEBjb250ZW50IGFwcGx5IHRvIHRoZSBnaXZlbiBicmVha3BvaW50IGFuZCB3aWRlci5cbkBtaXhpbiBtZWRpYS1icmVha3BvaW50LXVwKCRuYW1lLCAkYnJlYWtwb2ludHM6ICRncmlkLWJyZWFrcG9pbnRzKSB7XG4gICRtaW46IGJyZWFrcG9pbnQtbWluKCRuYW1lLCAkYnJlYWtwb2ludHMpO1xuICBAaWYgJG1pbiB7XG4gICAgQG1lZGlhIChtaW4td2lkdGg6ICRtaW4pIHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfSBAZWxzZSB7XG4gICAgQGNvbnRlbnQ7XG4gIH1cbn1cblxuLy8gTWVkaWEgb2YgYXQgbW9zdCB0aGUgbWF4aW11bSBicmVha3BvaW50IHdpZHRoLiBObyBxdWVyeSBmb3IgdGhlIGxhcmdlc3QgYnJlYWtwb2ludC5cbi8vIE1ha2VzIHRoZSBAY29udGVudCBhcHBseSB0byB0aGUgZ2l2ZW4gYnJlYWtwb2ludCBhbmQgbmFycm93ZXIuXG5AbWl4aW4gbWVkaWEtYnJlYWtwb2ludC1kb3duKCRuYW1lLCAkYnJlYWtwb2ludHM6ICRncmlkLWJyZWFrcG9pbnRzKSB7XG4gICRtYXg6IGJyZWFrcG9pbnQtbWF4KCRuYW1lLCAkYnJlYWtwb2ludHMpO1xuICBAaWYgJG1heCB7XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6ICRtYXgpIHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfSBAZWxzZSB7XG4gICAgQGNvbnRlbnQ7XG4gIH1cbn1cblxuLy8gTWVkaWEgdGhhdCBzcGFucyBtdWx0aXBsZSBicmVha3BvaW50IHdpZHRocy5cbi8vIE1ha2VzIHRoZSBAY29udGVudCBhcHBseSBiZXR3ZWVuIHRoZSBtaW4gYW5kIG1heCBicmVha3BvaW50c1xuQG1peGluIG1lZGlhLWJyZWFrcG9pbnQtYmV0d2VlbigkbG93ZXIsICR1cHBlciwgJGJyZWFrcG9pbnRzOiAkZ3JpZC1icmVha3BvaW50cykge1xuICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKCRsb3dlciwgJGJyZWFrcG9pbnRzKSB7XG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKCR1cHBlciwgJGJyZWFrcG9pbnRzKSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH1cbn1cblxuLy8gTWVkaWEgYmV0d2VlbiB0aGUgYnJlYWtwb2ludCdzIG1pbmltdW0gYW5kIG1heGltdW0gd2lkdGhzLlxuLy8gTm8gbWluaW11bSBmb3IgdGhlIHNtYWxsZXN0IGJyZWFrcG9pbnQsIGFuZCBubyBtYXhpbXVtIGZvciB0aGUgbGFyZ2VzdCBvbmUuXG4vLyBNYWtlcyB0aGUgQGNvbnRlbnQgYXBwbHkgb25seSB0byB0aGUgZ2l2ZW4gYnJlYWtwb2ludCwgbm90IHZpZXdwb3J0cyBhbnkgd2lkZXIgb3IgbmFycm93ZXIuXG5AbWl4aW4gbWVkaWEtYnJlYWtwb2ludC1vbmx5KCRuYW1lLCAkYnJlYWtwb2ludHM6ICRncmlkLWJyZWFrcG9pbnRzKSB7XG4gIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtYmV0d2VlbigkbmFtZSwgJG5hbWUsICRicmVha3BvaW50cykge1xuICAgIEBjb250ZW50O1xuICB9XG59XG4iLCJAbWl4aW4gaG92ZXIge1xuICAvLyBUT0RPOiByZS1lbmFibGUgYWxvbmcgd2l0aCBtcTQtaG92ZXItc2hpbVxuLy8gIEBpZiAkZW5hYmxlLWhvdmVyLW1lZGlhLXF1ZXJ5IHtcbi8vICAgIC8vIFNlZSBNZWRpYSBRdWVyaWVzIExldmVsIDQ6IGh0dHBzOi8vZHJhZnRzLmNzc3dnLm9yZy9tZWRpYXF1ZXJpZXMvI2hvdmVyXG4vLyAgICAvLyBDdXJyZW50bHkgc2hpbW1lZCBieSBodHRwczovL2dpdGh1Yi5jb20vdHdicy9tcTQtaG92ZXItc2hpbVxuLy8gICAgQG1lZGlhIChob3ZlcjogaG92ZXIpIHtcbi8vICAgICAgJjpob3ZlciB7IEBjb250ZW50IH1cbi8vICAgIH1cbi8vICB9XG4vLyAgQGVsc2Uge1xuICAgICY6aG92ZXIgeyBAY29udGVudCB9XG4vLyAgfVxufVxuXG5AbWl4aW4gaG92ZXItZm9jdXMge1xuICBAaWYgJGVuYWJsZS1ob3Zlci1tZWRpYS1xdWVyeSB7XG4gICAgJjpmb2N1cyB7IEBjb250ZW50IH1cbiAgICBAaW5jbHVkZSBob3ZlciB7IEBjb250ZW50IH1cbiAgfVxuICBAZWxzZSB7XG4gICAgJjpmb2N1cyxcbiAgICAmOmhvdmVyIHtcbiAgICAgIEBjb250ZW50XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBwbGFpbi1ob3Zlci1mb2N1cyB7XG4gIEBpZiAkZW5hYmxlLWhvdmVyLW1lZGlhLXF1ZXJ5IHtcbiAgICAmLFxuICAgICY6Zm9jdXMge1xuICAgICAgQGNvbnRlbnRcbiAgICB9XG4gICAgQGluY2x1ZGUgaG92ZXIgeyBAY29udGVudCB9XG4gIH1cbiAgQGVsc2Uge1xuICAgICYsXG4gICAgJjpmb2N1cyxcbiAgICAmOmhvdmVyIHtcbiAgICAgIEBjb250ZW50XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBob3Zlci1mb2N1cy1hY3RpdmUge1xuICBAaWYgJGVuYWJsZS1ob3Zlci1tZWRpYS1xdWVyeSB7XG4gICAgJjpmb2N1cyxcbiAgICAmOmFjdGl2ZSB7XG4gICAgICBAY29udGVudFxuICAgIH1cbiAgICBAaW5jbHVkZSBob3ZlciB7IEBjb250ZW50IH1cbiAgfVxuICBAZWxzZSB7XG4gICAgJjpmb2N1cyxcbiAgICAmOmFjdGl2ZSxcbiAgICAmOmhvdmVyIHtcbiAgICAgIEBjb250ZW50XG4gICAgfVxuICB9XG59XG4iLCIvLyBJbWFnZSBNaXhpbnNcbi8vIC0gUmVzcG9uc2l2ZSBpbWFnZVxuLy8gLSBSZXRpbmEgaW1hZ2VcblxuXG4vLyBSZXNwb25zaXZlIGltYWdlXG4vL1xuLy8gS2VlcCBpbWFnZXMgZnJvbSBzY2FsaW5nIGJleW9uZCB0aGUgd2lkdGggb2YgdGhlaXIgcGFyZW50cy5cblxuQG1peGluIGltZy1mbHVpZCB7XG4gIC8vIFBhcnQgMTogU2V0IGEgbWF4aW11bSByZWxhdGl2ZSB0byB0aGUgcGFyZW50XG4gIG1heC13aWR0aDogMTAwJTtcbiAgLy8gUGFydCAyOiBPdmVycmlkZSB0aGUgaGVpZ2h0IHRvIGF1dG8sIG90aGVyd2lzZSBpbWFnZXMgd2lsbCBiZSBzdHJldGNoZWRcbiAgLy8gd2hlbiBzZXR0aW5nIGEgd2lkdGggYW5kIGhlaWdodCBhdHRyaWJ1dGUgb24gdGhlIGltZyBlbGVtZW50LlxuICBoZWlnaHQ6IGF1dG87XG59XG5cblxuLy8gUmV0aW5hIGltYWdlXG4vL1xuLy8gU2hvcnQgcmV0aW5hIG1peGluIGZvciBzZXR0aW5nIGJhY2tncm91bmQtaW1hZ2UgYW5kIC1zaXplLlxuXG5AbWl4aW4gaW1nLXJldGluYSgkZmlsZS0xeCwgJGZpbGUtMngsICR3aWR0aC0xeCwgJGhlaWdodC0xeCkge1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJGZpbGUtMXgpO1xuXG4gIC8vIEF1dG9wcmVmaXhlciB0YWtlcyBjYXJlIG9mIGFkZGluZyAtd2Via2l0LW1pbi1kZXZpY2UtcGl4ZWwtcmF0aW8gYW5kIC1vLW1pbi1kZXZpY2UtcGl4ZWwtcmF0aW8sXG4gIC8vIGJ1dCBkb2Vzbid0IGNvbnZlcnQgZHBweD0+ZHBpLlxuICAvLyBUaGVyZSdzIG5vIHN1Y2ggdGhpbmcgYXMgdW5wcmVmaXhlZCBtaW4tZGV2aWNlLXBpeGVsLXJhdGlvIHNpbmNlIGl0J3Mgbm9uc3RhbmRhcmQuXG4gIC8vIENvbXBhdGliaWxpdHkgaW5mbzogaHR0cDovL2Nhbml1c2UuY29tLyNmZWF0PWNzcy1tZWRpYS1yZXNvbHV0aW9uXG4gIEBtZWRpYVxuICBvbmx5IHNjcmVlbiBhbmQgKG1pbi1yZXNvbHV0aW9uOiAxOTJkcGkpLCAvLyBJRTktMTEgZG9uJ3Qgc3VwcG9ydCBkcHB4XG4gIG9ubHkgc2NyZWVuIGFuZCAobWluLXJlc29sdXRpb246IDJkcHB4KSB7IC8vIFN0YW5kYXJkaXplZFxuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgkZmlsZS0yeCk7XG4gICAgYmFja2dyb3VuZC1zaXplOiAkd2lkdGgtMXggJGhlaWdodC0xeDtcbiAgfVxufVxuIiwiLy8gQmFkZ2VzXG5cbkBtaXhpbiBiYWRnZS12YXJpYW50KCRjb2xvcikge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3I7XG5cbiAgJltocmVmXSB7XG4gICAgQGluY2x1ZGUgaG92ZXItZm9jdXMge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogZGFya2VuKCRjb2xvciwgMTAlKTtcbiAgICB9XG4gIH1cbn1cbiIsIi8vIFJlc2l6ZSBhbnl0aGluZ1xuXG5AbWl4aW4gcmVzaXphYmxlKCRkaXJlY3Rpb24pIHtcbiAgcmVzaXplOiAkZGlyZWN0aW9uOyAvLyBPcHRpb25zOiBob3Jpem9udGFsLCB2ZXJ0aWNhbCwgYm90aFxuICBvdmVyZmxvdzogYXV0bzsgLy8gUGVyIENTUzMgVUksIGByZXNpemVgIG9ubHkgYXBwbGllcyB3aGVuIGBvdmVyZmxvd2AgaXNuJ3QgYHZpc2libGVgXG59XG4iLCIvLyBPbmx5IGRpc3BsYXkgY29udGVudCB0byBzY3JlZW4gcmVhZGVyc1xuLy9cbi8vIFNlZTogaHR0cDovL2ExMXlwcm9qZWN0LmNvbS9wb3N0cy9ob3ctdG8taGlkZS1jb250ZW50XG5cbkBtaXhpbiBzci1vbmx5IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB3aWR0aDogMXB4O1xuICBoZWlnaHQ6IDFweDtcbiAgcGFkZGluZzogMDtcbiAgbWFyZ2luOiAtMXB4O1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBjbGlwOiByZWN0KDAsMCwwLDApO1xuICBib3JkZXI6IDA7XG59XG5cbi8vIFVzZSBpbiBjb25qdW5jdGlvbiB3aXRoIC5zci1vbmx5IHRvIG9ubHkgZGlzcGxheSBjb250ZW50IHdoZW4gaXQncyBmb2N1c2VkLlxuLy9cbi8vIFVzZWZ1bCBmb3IgXCJTa2lwIHRvIG1haW4gY29udGVudFwiIGxpbmtzOyBzZWUgaHR0cHM6Ly93d3cudzMub3JnL1RSLzIwMTMvTk9URS1XQ0FHMjAtVEVDSFMtMjAxMzA5MDUvRzFcbi8vXG4vLyBDcmVkaXQ6IEhUTUw1IEJvaWxlcnBsYXRlXG5cbkBtaXhpbiBzci1vbmx5LWZvY3VzYWJsZSB7XG4gICY6YWN0aXZlLFxuICAmOmZvY3VzIHtcbiAgICBwb3NpdGlvbjogc3RhdGljO1xuICAgIHdpZHRoOiBhdXRvO1xuICAgIGhlaWdodDogYXV0bztcbiAgICBtYXJnaW46IDA7XG4gICAgb3ZlcmZsb3c6IHZpc2libGU7XG4gICAgY2xpcDogYXV0bztcbiAgfVxufVxuIiwiLy8gU2l6aW5nIHNob3J0Y3V0c1xuXG5AbWl4aW4gc2l6ZSgkd2lkdGgsICRoZWlnaHQ6ICR3aWR0aCkge1xuICB3aWR0aDogJHdpZHRoO1xuICBoZWlnaHQ6ICRoZWlnaHQ7XG59XG4iLCJAbWl4aW4gcmVzZXQtdGV4dCB7XG4gIGZvbnQtZmFtaWx5OiAkZm9udC1mYW1pbHktYmFzZTtcbiAgLy8gV2UgZGVsaWJlcmF0ZWx5IGRvIE5PVCByZXNldCBmb250LXNpemUgb3Igd29yZC13cmFwLlxuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtbm9ybWFsO1xuICBsZXR0ZXItc3BhY2luZzogbm9ybWFsO1xuICBsaW5lLWJyZWFrOiBhdXRvO1xuICBsaW5lLWhlaWdodDogJGxpbmUtaGVpZ2h0LWJhc2U7XG4gIHRleHQtYWxpZ246IGxlZnQ7IC8vIEZhbGxiYWNrIGZvciB3aGVyZSBgc3RhcnRgIGlzIG5vdCBzdXBwb3J0ZWRcbiAgdGV4dC1hbGlnbjogc3RhcnQ7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgdGV4dC1zaGFkb3c6IG5vbmU7XG4gIHRleHQtdHJhbnNmb3JtOiBub25lO1xuICB3aGl0ZS1zcGFjZTogbm9ybWFsO1xuICB3b3JkLWJyZWFrOiBub3JtYWw7XG4gIHdvcmQtc3BhY2luZzogbm9ybWFsO1xufVxuIiwiLy8gVHlwb2dyYXBoeVxuXG5AbWl4aW4gdGV4dC1lbXBoYXNpcy12YXJpYW50KCRwYXJlbnQsICRjb2xvcikge1xuICAjeyRwYXJlbnR9IHtcbiAgICBjb2xvcjogJGNvbG9yICFpbXBvcnRhbnQ7XG4gIH1cbiAgYSN7JHBhcmVudH0ge1xuICAgIEBpbmNsdWRlIGhvdmVyLWZvY3VzIHtcbiAgICAgIGNvbG9yOiBkYXJrZW4oJGNvbG9yLCAxMCUpICFpbXBvcnRhbnQ7XG4gICAgfVxuICB9XG59XG4iLCIvLyBDU1MgaW1hZ2UgcmVwbGFjZW1lbnRcbkBtaXhpbiB0ZXh0LWhpZGUoKSB7XG4gIGZvbnQ6IDAvMCBhO1xuICBjb2xvcjogdHJhbnNwYXJlbnQ7XG4gIHRleHQtc2hhZG93OiBub25lO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgYm9yZGVyOiAwO1xufVxuIiwiLy8gVGV4dCB0cnVuY2F0ZVxuLy8gUmVxdWlyZXMgaW5saW5lLWJsb2NrIG9yIGJsb2NrIGZvciBwcm9wZXIgc3R5bGluZ1xuXG5AbWl4aW4gdGV4dC10cnVuY2F0ZSgpIHtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG59IiwiLy8gQXBwbGllcyB0aGUgZ2l2ZW4gc3R5bGVzIG9ubHkgd2hlbiB0aGUgYnJvd3NlciBzdXBwb3J0IENTUzMgM0QgdHJhbnNmb3Jtcy5cbkBtaXhpbiBpZi1zdXBwb3J0cy0zZC10cmFuc2Zvcm1zKCkge1xuICBAbWVkaWEgKC13ZWJraXQtdHJhbnNmb3JtLTNkKSB7XG4gICAgLy8gT2xkIFNhZmFyaSwgT2xkIEFuZHJvaWRcbiAgICAvLyBodHRwOi8vY2FuaXVzZS5jb20vI2ZlYXQ9Y3NzLWZlYXR1cmVxdWVyaWVzXG4gICAgLy8gaHR0cHM6Ly9kZXZlbG9wZXIubW96aWxsYS5vcmcvZW4tVVMvZG9jcy9XZWIvQ1NTL0BtZWRpYS8td2Via2l0LXRyYW5zZm9ybS0zZFxuICAgIEBjb250ZW50O1xuICB9XG5cbiAgQHN1cHBvcnRzICh0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsMCwwKSkge1xuICAgIC8vIFRoZSBQcm9wZXIgV2F5OiBVc2luZyBhIENTUyBmZWF0dXJlIHF1ZXJ5XG4gICAgQGNvbnRlbnQ7XG4gIH1cbn1cbiIsIi8vIFZpc2liaWxpdHlcblxuQG1peGluIGludmlzaWJsZSB7XG4gIHZpc2liaWxpdHk6IGhpZGRlbiAhaW1wb3J0YW50O1xufVxuIiwiLy8gQWxlcnRzXG5cbkBtaXhpbiBhbGVydC12YXJpYW50KCRiYWNrZ3JvdW5kLCAkYm9yZGVyLCAkYm9keS1jb2xvcikge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmFja2dyb3VuZDtcbiAgYm9yZGVyLWNvbG9yOiAkYm9yZGVyO1xuICBjb2xvcjogJGJvZHktY29sb3I7XG5cbiAgaHIge1xuICAgIGJvcmRlci10b3AtY29sb3I6IGRhcmtlbigkYm9yZGVyLCA1JSk7XG4gIH1cbiAgLmFsZXJ0LWxpbmsge1xuICAgIGNvbG9yOiBkYXJrZW4oJGJvZHktY29sb3IsIDEwJSk7XG4gIH1cbn1cbiIsIi8vIEJ1dHRvbiB2YXJpYW50c1xuLy9cbi8vIEVhc2lseSBwdW1wIG91dCBkZWZhdWx0IHN0eWxlcywgYXMgd2VsbCBhcyA6aG92ZXIsIDpmb2N1cywgOmFjdGl2ZSxcbi8vIGFuZCBkaXNhYmxlZCBvcHRpb25zIGZvciBhbGwgYnV0dG9uc1xuXG5AbWl4aW4gYnV0dG9uLXZhcmlhbnQoJGNvbG9yLCAkYmFja2dyb3VuZCwgJGJvcmRlcikge1xuICAkYWN0aXZlLWJhY2tncm91bmQ6IGRhcmtlbigkYmFja2dyb3VuZCwgMTAlKTtcbiAgJGFjdGl2ZS1ib3JkZXI6IGRhcmtlbigkYm9yZGVyLCAxMiUpO1xuXG4gIGNvbG9yOiAkY29sb3I7XG4gIGJhY2tncm91bmQtY29sb3I6ICRiYWNrZ3JvdW5kO1xuICBib3JkZXItY29sb3I6ICRib3JkZXI7XG4gIEBpbmNsdWRlIGJveC1zaGFkb3coJGJ0bi1ib3gtc2hhZG93KTtcblxuICAvLyBIb3ZlciBhbmQgZm9jdXMgc3R5bGVzIGFyZSBzaGFyZWRcbiAgQGluY2x1ZGUgaG92ZXIge1xuICAgIGNvbG9yOiAkY29sb3I7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGFjdGl2ZS1iYWNrZ3JvdW5kO1xuICAgIGJvcmRlci1jb2xvcjogJGFjdGl2ZS1ib3JkZXI7XG4gIH1cbiAgJjpmb2N1cyxcbiAgJi5mb2N1cyB7XG4gICAgLy8gQXZvaWQgdXNpbmcgbWl4aW4gc28gd2UgY2FuIHBhc3MgY3VzdG9tIGZvY3VzIHNoYWRvdyBwcm9wZXJseVxuICAgIEBpZiAkZW5hYmxlLXNoYWRvd3Mge1xuICAgICAgYm94LXNoYWRvdzogJGJ0bi1ib3gtc2hhZG93LCAwIDAgMCAycHggcmdiYSgkYm9yZGVyLCAuNSk7XG4gICAgfSBAZWxzZSB7XG4gICAgICBib3gtc2hhZG93OiAwIDAgMCAycHggcmdiYSgkYm9yZGVyLCAuNSk7XG4gICAgfVxuICB9XG5cbiAgLy8gRGlzYWJsZWQgY29tZXMgZmlyc3Qgc28gYWN0aXZlIGNhbiBwcm9wZXJseSByZXN0eWxlXG4gICYuZGlzYWJsZWQsXG4gICY6ZGlzYWJsZWQge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRiYWNrZ3JvdW5kO1xuICAgIGJvcmRlci1jb2xvcjogJGJvcmRlcjtcbiAgfVxuXG4gICY6YWN0aXZlLFxuICAmLmFjdGl2ZSxcbiAgLnNob3cgPiAmLmRyb3Bkb3duLXRvZ2dsZSB7XG4gICAgY29sb3I6ICRjb2xvcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYWN0aXZlLWJhY2tncm91bmQ7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogbm9uZTsgLy8gUmVtb3ZlIHRoZSBncmFkaWVudCBmb3IgdGhlIHByZXNzZWQvYWN0aXZlIHN0YXRlXG4gICAgYm9yZGVyLWNvbG9yOiAkYWN0aXZlLWJvcmRlcjtcbiAgICBAaW5jbHVkZSBib3gtc2hhZG93KCRidG4tYWN0aXZlLWJveC1zaGFkb3cpO1xuICB9XG59XG5cbkBtaXhpbiBidXR0b24tb3V0bGluZS12YXJpYW50KCRjb2xvciwgJGNvbG9yLWhvdmVyOiAjZmZmKSB7XG4gIGNvbG9yOiAkY29sb3I7XG4gIGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICBib3JkZXItY29sb3I6ICRjb2xvcjtcblxuICBAaW5jbHVkZSBob3ZlciB7XG4gICAgY29sb3I6ICRjb2xvci1ob3ZlcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3I7XG4gICAgYm9yZGVyLWNvbG9yOiAkY29sb3I7XG4gIH1cblxuICAmOmZvY3VzLFxuICAmLmZvY3VzIHtcbiAgICBib3gtc2hhZG93OiAwIDAgMCAycHggcmdiYSgkY29sb3IsIC41KTtcbiAgfVxuXG4gICYuZGlzYWJsZWQsXG4gICY6ZGlzYWJsZWQge1xuICAgIGNvbG9yOiAkY29sb3I7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIH1cblxuICAmOmFjdGl2ZSxcbiAgJi5hY3RpdmUsXG4gIC5zaG93ID4gJi5kcm9wZG93bi10b2dnbGUge1xuICAgIGNvbG9yOiAkY29sb3ItaG92ZXI7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yO1xuICAgIGJvcmRlci1jb2xvcjogJGNvbG9yO1xuICB9XG59XG5cbi8vIEJ1dHRvbiBzaXplc1xuQG1peGluIGJ1dHRvbi1zaXplKCRwYWRkaW5nLXksICRwYWRkaW5nLXgsICRmb250LXNpemUsICRib3JkZXItcmFkaXVzKSB7XG4gIHBhZGRpbmc6ICRwYWRkaW5nLXkgJHBhZGRpbmcteDtcbiAgZm9udC1zaXplOiAkZm9udC1zaXplO1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRib3JkZXItcmFkaXVzKTtcbn1cbiIsIi8vIENhcmQgdmFyaWFudHNcblxuQG1peGluIGNhcmQtdmFyaWFudCgkYmFja2dyb3VuZCwgJGJvcmRlcikge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmFja2dyb3VuZDtcbiAgYm9yZGVyLWNvbG9yOiAkYm9yZGVyO1xuXG4gIC5jYXJkLWhlYWRlcixcbiAgLmNhcmQtZm9vdGVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgfVxufVxuXG5AbWl4aW4gY2FyZC1vdXRsaW5lLXZhcmlhbnQoJGNvbG9yKSB7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICBib3JkZXItY29sb3I6ICRjb2xvcjtcbn1cblxuLy9cbi8vIEludmVyc2UgdGV4dCB3aXRoaW4gYSBjYXJkIGZvciB1c2Ugd2l0aCBkYXJrIGJhY2tncm91bmRzXG4vL1xuXG5AbWl4aW4gY2FyZC1pbnZlcnNlIHtcbiAgY29sb3I6IHJnYmEoMjU1LDI1NSwyNTUsLjY1KTtcblxuICAuY2FyZC1oZWFkZXIsXG4gIC5jYXJkLWZvb3RlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgYm9yZGVyLWNvbG9yOiByZ2JhKDI1NSwyNTUsMjU1LC4yKTtcbiAgfVxuICAuY2FyZC1oZWFkZXIsXG4gIC5jYXJkLWZvb3RlcixcbiAgLmNhcmQtdGl0bGUsXG4gIC5jYXJkLWJsb2NrcXVvdGUge1xuICAgIGNvbG9yOiAjZmZmO1xuICB9XG4gIC5jYXJkLWxpbmssXG4gIC5jYXJkLXRleHQsXG4gIC5jYXJkLXN1YnRpdGxlLFxuICAuY2FyZC1ibG9ja3F1b3RlIC5ibG9ja3F1b3RlLWZvb3RlciB7XG4gICAgY29sb3I6IHJnYmEoMjU1LDI1NSwyNTUsLjY1KTtcbiAgfVxuICAuY2FyZC1saW5rIHtcbiAgICBAaW5jbHVkZSBob3Zlci1mb2N1cyB7XG4gICAgICBjb2xvcjogJGNhcmQtbGluay1ob3Zlci1jb2xvcjtcbiAgICB9XG4gIH1cbn1cbiIsIi8vIFBhZ2luYXRpb25cblxuQG1peGluIHBhZ2luYXRpb24tc2l6ZSgkcGFkZGluZy15LCAkcGFkZGluZy14LCAkZm9udC1zaXplLCAkbGluZS1oZWlnaHQsICRib3JkZXItcmFkaXVzKSB7XG4gIC5wYWdlLWxpbmsge1xuICAgIHBhZGRpbmc6ICRwYWRkaW5nLXkgJHBhZGRpbmcteDtcbiAgICBmb250LXNpemU6ICRmb250LXNpemU7XG4gIH1cblxuICAucGFnZS1pdGVtIHtcbiAgICAmOmZpcnN0LWNoaWxkIHtcbiAgICAgIC5wYWdlLWxpbmsge1xuICAgICAgICBAaW5jbHVkZSBib3JkZXItbGVmdC1yYWRpdXMoJGJvcmRlci1yYWRpdXMpO1xuICAgICAgfVxuICAgIH1cbiAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgLnBhZ2UtbGluayB7XG4gICAgICAgIEBpbmNsdWRlIGJvcmRlci1yaWdodC1yYWRpdXMoJGJvcmRlci1yYWRpdXMpO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLy8gTGlzdHNcblxuLy8gVW5zdHlsZWQga2VlcHMgbGlzdCBpdGVtcyBibG9jayBsZXZlbCwganVzdCByZW1vdmVzIGRlZmF1bHQgYnJvd3NlciBwYWRkaW5nIGFuZCBsaXN0LXN0eWxlXG5AbWl4aW4gbGlzdC11bnN0eWxlZCB7XG4gIHBhZGRpbmctbGVmdDogMDtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbn1cbiIsIi8vIExpc3QgR3JvdXBzXG5cbkBtaXhpbiBsaXN0LWdyb3VwLWl0ZW0tdmFyaWFudCgkc3RhdGUsICRiYWNrZ3JvdW5kLCAkY29sb3IpIHtcbiAgLmxpc3QtZ3JvdXAtaXRlbS0jeyRzdGF0ZX0ge1xuICAgIGNvbG9yOiAkY29sb3I7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGJhY2tncm91bmQ7XG4gIH1cblxuICBhLmxpc3QtZ3JvdXAtaXRlbS0jeyRzdGF0ZX0sXG4gIGJ1dHRvbi5saXN0LWdyb3VwLWl0ZW0tI3skc3RhdGV9IHtcbiAgICBjb2xvcjogJGNvbG9yO1xuXG4gICAgLmxpc3QtZ3JvdXAtaXRlbS1oZWFkaW5nIHtcbiAgICAgIGNvbG9yOiBpbmhlcml0O1xuICAgIH1cblxuICAgIEBpbmNsdWRlIGhvdmVyLWZvY3VzIHtcbiAgICAgIGNvbG9yOiAkY29sb3I7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBkYXJrZW4oJGJhY2tncm91bmQsIDUlKTtcbiAgICB9XG5cbiAgICAmLmFjdGl2ZSB7XG4gICAgICBjb2xvcjogI2ZmZjtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvcjtcbiAgICAgIGJvcmRlci1jb2xvcjogJGNvbG9yO1xuICAgIH1cbiAgfVxufVxuIiwiLy8gSG9yaXpvbnRhbCBkaXZpZGVyc1xuLy9cbi8vIERpdmlkZXJzIChiYXNpY2FsbHkgYW4gaHIpIHdpdGhpbiBkcm9wZG93bnMgYW5kIG5hdiBsaXN0c1xuXG5AbWl4aW4gbmF2LWRpdmlkZXIoJGNvbG9yOiAjZTVlNWU1KSB7XG4gIGhlaWdodDogMXB4O1xuICBtYXJnaW46ICgkc3BhY2VyLXkgLyAyKSAwO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3I7XG59XG4iLCIvLyBGb3JtIHZhbGlkYXRpb24gc3RhdGVzXG4vL1xuLy8gVXNlZCBpbiBfZm9ybXMuc2NzcyB0byBnZW5lcmF0ZSB0aGUgZm9ybSB2YWxpZGF0aW9uIENTUyBmb3Igd2FybmluZ3MsIGVycm9ycyxcbi8vIGFuZCBzdWNjZXNzZXMuXG5cbkBtaXhpbiBmb3JtLWNvbnRyb2wtdmFsaWRhdGlvbigkY29sb3IpIHtcbiAgLy8gQ29sb3IgdGhlIGxhYmVsIGFuZCBoZWxwIHRleHRcbiAgLmZvcm0tY29udHJvbC1mZWVkYmFjayxcbiAgLmZvcm0tY29udHJvbC1sYWJlbCxcbiAgLmNvbC1mb3JtLWxhYmVsLFxuICAuZm9ybS1jaGVjay1sYWJlbCxcbiAgLmN1c3RvbS1jb250cm9sIHtcbiAgICBjb2xvcjogJGNvbG9yO1xuICB9XG5cbiAgLy8gU2V0IHRoZSBib3JkZXIgYW5kIGJveCBzaGFkb3cgb24gc3BlY2lmaWMgaW5wdXRzIHRvIG1hdGNoXG4gIC5mb3JtLWNvbnRyb2wge1xuICAgIGJvcmRlci1jb2xvcjogJGNvbG9yO1xuXG4gICAgJjpmb2N1cyB7XG4gICAgICBAaW5jbHVkZSBib3gtc2hhZG93KCRpbnB1dC1ib3gtc2hhZG93LCAwIDAgNnB4IGxpZ2h0ZW4oJGNvbG9yLCAyMCUpKTtcbiAgICB9XG4gIH1cblxuICAvLyBTZXQgdmFsaWRhdGlvbiBzdGF0ZXMgYWxzbyBmb3IgYWRkb25zXG4gIC5pbnB1dC1ncm91cC1hZGRvbiB7XG4gICAgY29sb3I6ICRjb2xvcjtcbiAgICBib3JkZXItY29sb3I6ICRjb2xvcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiBsaWdodGVuKCRjb2xvciwgNDAlKTtcbiAgfVxufVxuXG4vLyBGb3JtIGNvbnRyb2wgZm9jdXMgc3RhdGVcbi8vXG4vLyBHZW5lcmF0ZSBhIGN1c3RvbWl6ZWQgZm9jdXMgc3RhdGUgYW5kIGZvciBhbnkgaW5wdXQgd2l0aCB0aGUgc3BlY2lmaWVkIGNvbG9yLFxuLy8gd2hpY2ggZGVmYXVsdHMgdG8gdGhlIGBAaW5wdXQtYm9yZGVyLWZvY3VzYCB2YXJpYWJsZS5cbi8vXG4vLyBXZSBoaWdobHkgZW5jb3VyYWdlIHlvdSB0byBub3QgY3VzdG9taXplIHRoZSBkZWZhdWx0IHZhbHVlLCBidXQgaW5zdGVhZCB1c2Vcbi8vIHRoaXMgdG8gdHdlYWsgY29sb3JzIG9uIGFuIGFzLW5lZWRlZCBiYXNpcy4gVGhpcyBhZXN0aGV0aWMgY2hhbmdlIGlzIGJhc2VkIG9uXG4vLyBXZWJLaXQncyBkZWZhdWx0IHN0eWxlcywgYnV0IGFwcGxpY2FibGUgdG8gYSB3aWRlciByYW5nZSBvZiBicm93c2Vycy4gSXRzXG4vLyB1c2FiaWxpdHkgYW5kIGFjY2Vzc2liaWxpdHkgc2hvdWxkIGJlIHRha2VuIGludG8gYWNjb3VudCB3aXRoIGFueSBjaGFuZ2UuXG4vL1xuLy8gRXhhbXBsZSB1c2FnZTogY2hhbmdlIHRoZSBkZWZhdWx0IGJsdWUgYm9yZGVyIGFuZCBzaGFkb3cgdG8gd2hpdGUgZm9yIGJldHRlclxuLy8gY29udHJhc3QgYWdhaW5zdCBhIGRhcmsgZ3JheSBiYWNrZ3JvdW5kLlxuQG1peGluIGZvcm0tY29udHJvbC1mb2N1cygpIHtcbiAgJjpmb2N1cyB7XG4gICAgY29sb3I6ICRpbnB1dC1jb2xvci1mb2N1cztcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkaW5wdXQtYmctZm9jdXM7XG4gICAgYm9yZGVyLWNvbG9yOiAkaW5wdXQtYm9yZGVyLWZvY3VzO1xuICAgIG91dGxpbmU6IG5vbmU7XG4gICAgQGluY2x1ZGUgYm94LXNoYWRvdygkaW5wdXQtYm94LXNoYWRvdy1mb2N1cyk7XG4gIH1cbn1cblxuLy8gRm9ybSBjb250cm9sIHNpemluZ1xuLy9cbi8vIFJlbGF0aXZlIHRleHQgc2l6ZSwgcGFkZGluZywgYW5kIGJvcmRlci1yYWRpaSBjaGFuZ2VzIGZvciBmb3JtIGNvbnRyb2xzLiBGb3Jcbi8vIGhvcml6b250YWwgc2l6aW5nLCB3cmFwIGNvbnRyb2xzIGluIHRoZSBwcmVkZWZpbmVkIGdyaWQgY2xhc3Nlcy4gYDxzZWxlY3Q+YFxuLy8gZWxlbWVudCBnZXRzIHNwZWNpYWwgbG92ZSBiZWNhdXNlIGl0J3Mgc3BlY2lhbCwgYW5kIHRoYXQncyBhIGZhY3QhXG5cbkBtaXhpbiBpbnB1dC1zaXplKCRwYXJlbnQsICRpbnB1dC1oZWlnaHQsICRwYWRkaW5nLXksICRwYWRkaW5nLXgsICRmb250LXNpemUsICRsaW5lLWhlaWdodCwgJGJvcmRlci1yYWRpdXMpIHtcbiAgI3skcGFyZW50fSB7XG4gICAgaGVpZ2h0OiAkaW5wdXQtaGVpZ2h0O1xuICAgIHBhZGRpbmc6ICRwYWRkaW5nLXkgJHBhZGRpbmcteDtcbiAgICBmb250LXNpemU6ICRmb250LXNpemU7XG4gICAgbGluZS1oZWlnaHQ6ICRsaW5lLWhlaWdodDtcbiAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRib3JkZXItcmFkaXVzKTtcbiAgfVxuXG4gIHNlbGVjdCN7JHBhcmVudH0ge1xuICAgIGhlaWdodDogJGlucHV0LWhlaWdodDtcbiAgICBsaW5lLWhlaWdodDogJGlucHV0LWhlaWdodDtcbiAgfVxuXG4gIHRleHRhcmVhI3skcGFyZW50fSxcbiAgc2VsZWN0W211bHRpcGxlXSN7JHBhcmVudH0ge1xuICAgIGhlaWdodDogYXV0bztcbiAgfVxufVxuIiwiLy8gVGFibGVzXG5cbkBtaXhpbiB0YWJsZS1yb3ctdmFyaWFudCgkc3RhdGUsICRiYWNrZ3JvdW5kKSB7XG4gIC8vIEV4YWN0IHNlbGVjdG9ycyBiZWxvdyByZXF1aXJlZCB0byBvdmVycmlkZSBgLnRhYmxlLXN0cmlwZWRgIGFuZCBwcmV2ZW50XG4gIC8vIGluaGVyaXRhbmNlIHRvIG5lc3RlZCB0YWJsZXMuXG4gIC50YWJsZS0jeyRzdGF0ZX0ge1xuICAgICYsXG4gICAgPiB0aCxcbiAgICA+IHRkIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRiYWNrZ3JvdW5kO1xuICAgIH1cbiAgfVxuXG4gIC8vIEhvdmVyIHN0YXRlcyBmb3IgYC50YWJsZS1ob3ZlcmBcbiAgLy8gTm90ZTogdGhpcyBpcyBub3QgYXZhaWxhYmxlIGZvciBjZWxscyBvciByb3dzIHdpdGhpbiBgdGhlYWRgIG9yIGB0Zm9vdGAuXG4gIC50YWJsZS1ob3ZlciB7XG4gICAgJGhvdmVyLWJhY2tncm91bmQ6IGRhcmtlbigkYmFja2dyb3VuZCwgNSUpO1xuXG4gICAgLnRhYmxlLSN7JHN0YXRlfSB7XG4gICAgICBAaW5jbHVkZSBob3ZlciB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRob3Zlci1iYWNrZ3JvdW5kO1xuXG4gICAgICAgID4gdGQsXG4gICAgICAgID4gdGgge1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRob3Zlci1iYWNrZ3JvdW5kO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIvLyBDb250ZXh0dWFsIGJhY2tncm91bmRzXG5cbkBtaXhpbiBiZy12YXJpYW50KCRwYXJlbnQsICRjb2xvcikge1xuICAjeyRwYXJlbnR9IHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3IgIWltcG9ydGFudDtcbiAgfVxuICBhI3skcGFyZW50fSB7XG4gICAgQGluY2x1ZGUgaG92ZXItZm9jdXMge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogZGFya2VuKCRjb2xvciwgMTAlKSAhaW1wb3J0YW50O1xuICAgIH1cbiAgfVxufVxuIiwiLy8gU2luZ2xlIHNpZGUgYm9yZGVyLXJhZGl1c1xuXG5AbWl4aW4gYm9yZGVyLXJhZGl1cygkcmFkaXVzOiAkYm9yZGVyLXJhZGl1cykge1xuICBAaWYgJGVuYWJsZS1yb3VuZGVkIHtcbiAgICBib3JkZXItcmFkaXVzOiAkcmFkaXVzO1xuICB9XG59XG5cbkBtaXhpbiBib3JkZXItdG9wLXJhZGl1cygkcmFkaXVzKSB7XG4gIEBpZiAkZW5hYmxlLXJvdW5kZWQge1xuICAgIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAkcmFkaXVzO1xuICAgIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6ICRyYWRpdXM7XG4gIH1cbn1cblxuQG1peGluIGJvcmRlci1yaWdodC1yYWRpdXMoJHJhZGl1cykge1xuICBAaWYgJGVuYWJsZS1yb3VuZGVkIHtcbiAgICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogJHJhZGl1cztcbiAgICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogJHJhZGl1cztcbiAgfVxufVxuXG5AbWl4aW4gYm9yZGVyLWJvdHRvbS1yYWRpdXMoJHJhZGl1cykge1xuICBAaWYgJGVuYWJsZS1yb3VuZGVkIHtcbiAgICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogJHJhZGl1cztcbiAgICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAkcmFkaXVzO1xuICB9XG59XG5cbkBtaXhpbiBib3JkZXItbGVmdC1yYWRpdXMoJHJhZGl1cykge1xuICBAaWYgJGVuYWJsZS1yb3VuZGVkIHtcbiAgICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAkcmFkaXVzO1xuICAgIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6ICRyYWRpdXM7XG4gIH1cbn1cbiIsIi8vIEdyYWRpZW50c1xuXG4vLyBIb3Jpem9udGFsIGdyYWRpZW50LCBmcm9tIGxlZnQgdG8gcmlnaHRcbi8vXG4vLyBDcmVhdGVzIHR3byBjb2xvciBzdG9wcywgc3RhcnQgYW5kIGVuZCwgYnkgc3BlY2lmeWluZyBhIGNvbG9yIGFuZCBwb3NpdGlvbiBmb3IgZWFjaCBjb2xvciBzdG9wLlxuQG1peGluIGdyYWRpZW50LXgoJHN0YXJ0LWNvbG9yOiAjNTU1LCAkZW5kLWNvbG9yOiAjMzMzLCAkc3RhcnQtcGVyY2VudDogMCUsICRlbmQtcGVyY2VudDogMTAwJSkge1xuICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQodG8gcmlnaHQsICRzdGFydC1jb2xvciAkc3RhcnQtcGVyY2VudCwgJGVuZC1jb2xvciAkZW5kLXBlcmNlbnQpO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogcmVwZWF0LXg7XG59XG5cbi8vIFZlcnRpY2FsIGdyYWRpZW50LCBmcm9tIHRvcCB0byBib3R0b21cbi8vXG4vLyBDcmVhdGVzIHR3byBjb2xvciBzdG9wcywgc3RhcnQgYW5kIGVuZCwgYnkgc3BlY2lmeWluZyBhIGNvbG9yIGFuZCBwb3NpdGlvbiBmb3IgZWFjaCBjb2xvciBzdG9wLlxuQG1peGluIGdyYWRpZW50LXkoJHN0YXJ0LWNvbG9yOiAjNTU1LCAkZW5kLWNvbG9yOiAjMzMzLCAkc3RhcnQtcGVyY2VudDogMCUsICRlbmQtcGVyY2VudDogMTAwJSkge1xuICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQodG8gYm90dG9tLCAkc3RhcnQtY29sb3IgJHN0YXJ0LXBlcmNlbnQsICRlbmQtY29sb3IgJGVuZC1wZXJjZW50KTtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IHJlcGVhdC14O1xufVxuXG5AbWl4aW4gZ3JhZGllbnQtZGlyZWN0aW9uYWwoJHN0YXJ0LWNvbG9yOiAjNTU1LCAkZW5kLWNvbG9yOiAjMzMzLCAkZGVnOiA0NWRlZykge1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogcmVwZWF0LXg7XG4gIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCgkZGVnLCAkc3RhcnQtY29sb3IsICRlbmQtY29sb3IpO1xufVxuQG1peGluIGdyYWRpZW50LXgtdGhyZWUtY29sb3JzKCRzdGFydC1jb2xvcjogIzAwYjNlZSwgJG1pZC1jb2xvcjogIzdhNDNiNiwgJGNvbG9yLXN0b3A6IDUwJSwgJGVuZC1jb2xvcjogI2MzMzI1Zikge1xuICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQodG8gcmlnaHQsICRzdGFydC1jb2xvciwgJG1pZC1jb2xvciAkY29sb3Itc3RvcCwgJGVuZC1jb2xvcik7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG59XG5AbWl4aW4gZ3JhZGllbnQteS10aHJlZS1jb2xvcnMoJHN0YXJ0LWNvbG9yOiAjMDBiM2VlLCAkbWlkLWNvbG9yOiAjN2E0M2I2LCAkY29sb3Itc3RvcDogNTAlLCAkZW5kLWNvbG9yOiAjYzMzMjVmKSB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCgkc3RhcnQtY29sb3IsICRtaWQtY29sb3IgJGNvbG9yLXN0b3AsICRlbmQtY29sb3IpO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xufVxuQG1peGluIGdyYWRpZW50LXJhZGlhbCgkaW5uZXItY29sb3I6ICM1NTUsICRvdXRlci1jb2xvcjogIzMzMykge1xuICBiYWNrZ3JvdW5kLWltYWdlOiByYWRpYWwtZ3JhZGllbnQoY2lyY2xlLCAkaW5uZXItY29sb3IsICRvdXRlci1jb2xvcik7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG59XG5AbWl4aW4gZ3JhZGllbnQtc3RyaXBlZCgkY29sb3I6IHJnYmEoMjU1LDI1NSwyNTUsLjE1KSwgJGFuZ2xlOiA0NWRlZykge1xuICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQoJGFuZ2xlLCAkY29sb3IgMjUlLCB0cmFuc3BhcmVudCAyNSUsIHRyYW5zcGFyZW50IDUwJSwgJGNvbG9yIDUwJSwgJGNvbG9yIDc1JSwgdHJhbnNwYXJlbnQgNzUlLCB0cmFuc3BhcmVudCk7XG59XG4iLCJAbWl4aW4gY2xlYXJmaXgoKSB7XG4gICY6OmFmdGVyIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIGNsZWFyOiBib3RoO1xuICB9XG59XG4iLCIvLyBGcmFtZXdvcmsgZ3JpZCBnZW5lcmF0aW9uXG4vL1xuLy8gVXNlZCBvbmx5IGJ5IEJvb3RzdHJhcCB0byBnZW5lcmF0ZSB0aGUgY29ycmVjdCBudW1iZXIgb2YgZ3JpZCBjbGFzc2VzIGdpdmVuXG4vLyBhbnkgdmFsdWUgb2YgYCRncmlkLWNvbHVtbnNgLlxuXG5AbWl4aW4gbWFrZS1ncmlkLWNvbHVtbnMoJGNvbHVtbnM6ICRncmlkLWNvbHVtbnMsICRndXR0ZXJzOiAkZ3JpZC1ndXR0ZXItd2lkdGhzLCAkYnJlYWtwb2ludHM6ICRncmlkLWJyZWFrcG9pbnRzKSB7XG4gIC8vIENvbW1vbiBwcm9wZXJ0aWVzIGZvciBhbGwgYnJlYWtwb2ludHNcbiAgJWdyaWQtY29sdW1uIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgbWluLWhlaWdodDogMXB4OyAvLyBQcmV2ZW50IGNvbHVtbnMgZnJvbSBjb2xsYXBzaW5nIHdoZW4gZW1wdHlcblxuICAgIEBpbmNsdWRlIG1ha2UtZ3V0dGVycygkZ3V0dGVycyk7XG4gIH1cblxuICBAZWFjaCAkYnJlYWtwb2ludCBpbiBtYXAta2V5cygkYnJlYWtwb2ludHMpIHtcbiAgICAkaW5maXg6IGJyZWFrcG9pbnQtaW5maXgoJGJyZWFrcG9pbnQsICRicmVha3BvaW50cyk7XG5cbiAgICAvLyBBbGxvdyBjb2x1bW5zIHRvIHN0cmV0Y2ggZnVsbCB3aWR0aCBiZWxvdyB0aGVpciBicmVha3BvaW50c1xuICAgIEBmb3IgJGkgZnJvbSAxIHRocm91Z2ggJGNvbHVtbnMge1xuICAgICAgLmNvbCN7JGluZml4fS0jeyRpfSB7XG4gICAgICAgIEBleHRlbmQgJWdyaWQtY29sdW1uO1xuICAgICAgfVxuICAgIH1cbiAgICAuY29sI3skaW5maXh9IHtcbiAgICAgIEBleHRlbmQgJWdyaWQtY29sdW1uO1xuICAgIH1cblxuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoJGJyZWFrcG9pbnQsICRicmVha3BvaW50cykge1xuICAgICAgLy8gUHJvdmlkZSBiYXNpYyBgLmNvbC17YnB9YCBjbGFzc2VzIGZvciBlcXVhbC13aWR0aCBmbGV4Ym94IGNvbHVtbnNcbiAgICAgIC5jb2wjeyRpbmZpeH0ge1xuICAgICAgICBmbGV4LWJhc2lzOiAwO1xuICAgICAgICBmbGV4LWdyb3c6IDE7XG4gICAgICAgIG1heC13aWR0aDogMTAwJTtcbiAgICAgIH1cbiAgICAgIC5jb2wjeyRpbmZpeH0tYXV0byB7XG4gICAgICAgIGZsZXg6IDAgMCBhdXRvO1xuICAgICAgICB3aWR0aDogYXV0bztcbiAgICAgIH1cblxuICAgICAgQGZvciAkaSBmcm9tIDEgdGhyb3VnaCAkY29sdW1ucyB7XG4gICAgICAgIC5jb2wjeyRpbmZpeH0tI3skaX0ge1xuICAgICAgICAgIEBpbmNsdWRlIG1ha2UtY29sKCRpLCAkY29sdW1ucyk7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgQGVhY2ggJG1vZGlmaWVyIGluIChwdWxsLCBwdXNoKSB7XG4gICAgICAgIEBmb3IgJGkgZnJvbSAwIHRocm91Z2ggJGNvbHVtbnMge1xuICAgICAgICAgIC4jeyRtb2RpZmllcn0jeyRpbmZpeH0tI3skaX0ge1xuICAgICAgICAgICAgQGluY2x1ZGUgbWFrZS1jb2wtbW9kaWZpZXIoJG1vZGlmaWVyLCAkaSwgJGNvbHVtbnMpXG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIC8vIGAkY29sdW1ucyAtIDFgIGJlY2F1c2Ugb2Zmc2V0dGluZyBieSB0aGUgd2lkdGggb2YgYW4gZW50aXJlIHJvdyBpc24ndCBwb3NzaWJsZVxuICAgICAgQGZvciAkaSBmcm9tIDAgdGhyb3VnaCAoJGNvbHVtbnMgLSAxKSB7XG4gICAgICAgIEBpZiBub3QgKCRpbmZpeCA9PSBcIlwiIGFuZCAkaSA9PSAwKSB7IC8vIEF2b2lkIGVtaXR0aW5nIHVzZWxlc3MgLm9mZnNldC14cy0wXG4gICAgICAgICAgLm9mZnNldCN7JGluZml4fS0jeyRpfSB7XG4gICAgICAgICAgICBAaW5jbHVkZSBtYWtlLWNvbC1tb2RpZmllcihvZmZzZXQsICRpLCAkY29sdW1ucylcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIi8vLyBHcmlkIHN5c3RlbVxuLy9cbi8vIEdlbmVyYXRlIHNlbWFudGljIGdyaWQgY29sdW1ucyB3aXRoIHRoZXNlIG1peGlucy5cblxuQG1peGluIG1ha2UtY29udGFpbmVyKCRndXR0ZXJzOiAkZ3JpZC1ndXR0ZXItd2lkdGhzKSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gIG1hcmdpbi1yaWdodDogYXV0bztcblxuICBAZWFjaCAkYnJlYWtwb2ludCBpbiBtYXAta2V5cygkZ3V0dGVycykge1xuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoJGJyZWFrcG9pbnQpIHtcbiAgICAgICRndXR0ZXI6IG1hcC1nZXQoJGd1dHRlcnMsICRicmVha3BvaW50KTtcbiAgICAgIHBhZGRpbmctcmlnaHQ6ICgkZ3V0dGVyIC8gMik7XG4gICAgICBwYWRkaW5nLWxlZnQ6ICAoJGd1dHRlciAvIDIpO1xuICAgIH1cbiAgfVxufVxuXG5cbi8vIEZvciBlYWNoIGJyZWFrcG9pbnQsIGRlZmluZSB0aGUgbWF4aW11bSB3aWR0aCBvZiB0aGUgY29udGFpbmVyIGluIGEgbWVkaWEgcXVlcnlcbkBtaXhpbiBtYWtlLWNvbnRhaW5lci1tYXgtd2lkdGhzKCRtYXgtd2lkdGhzOiAkY29udGFpbmVyLW1heC13aWR0aHMsICRicmVha3BvaW50czogJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgQGVhY2ggJGJyZWFrcG9pbnQsICRjb250YWluZXItbWF4LXdpZHRoIGluICRtYXgtd2lkdGhzIHtcbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKCRicmVha3BvaW50LCAkYnJlYWtwb2ludHMpIHtcbiAgICAgIHdpZHRoOiAkY29udGFpbmVyLW1heC13aWR0aDtcbiAgICAgIG1heC13aWR0aDogMTAwJTtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIG1ha2UtZ3V0dGVycygkZ3V0dGVyczogJGdyaWQtZ3V0dGVyLXdpZHRocykge1xuICBAZWFjaCAkYnJlYWtwb2ludCBpbiBtYXAta2V5cygkZ3V0dGVycykge1xuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoJGJyZWFrcG9pbnQpIHtcbiAgICAgICRndXR0ZXI6IG1hcC1nZXQoJGd1dHRlcnMsICRicmVha3BvaW50KTtcbiAgICAgIHBhZGRpbmctcmlnaHQ6ICgkZ3V0dGVyIC8gMik7XG4gICAgICBwYWRkaW5nLWxlZnQ6ICAoJGd1dHRlciAvIDIpO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gbWFrZS1yb3coJGd1dHRlcnM6ICRncmlkLWd1dHRlci13aWR0aHMpIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC13cmFwOiB3cmFwO1xuXG4gIEBlYWNoICRicmVha3BvaW50IGluIG1hcC1rZXlzKCRndXR0ZXJzKSB7XG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCgkYnJlYWtwb2ludCkge1xuICAgICAgJGd1dHRlcjogbWFwLWdldCgkZ3V0dGVycywgJGJyZWFrcG9pbnQpO1xuICAgICAgbWFyZ2luLXJpZ2h0OiAoJGd1dHRlciAvIC0yKTtcbiAgICAgIG1hcmdpbi1sZWZ0OiAgKCRndXR0ZXIgLyAtMik7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBtYWtlLWNvbC1yZWFkeSgkZ3V0dGVyczogJGdyaWQtZ3V0dGVyLXdpZHRocykge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIC8vIFByZXZlbnQgY29sdW1ucyBmcm9tIGJlY29taW5nIHRvbyBuYXJyb3cgd2hlbiBhdCBzbWFsbGVyIGdyaWQgdGllcnMgYnlcbiAgLy8gYWx3YXlzIHNldHRpbmcgYHdpZHRoOiAxMDAlO2AuIFRoaXMgd29ya3MgYmVjYXVzZSB3ZSB1c2UgYGZsZXhgIHZhbHVlc1xuICAvLyBsYXRlciBvbiB0byBvdmVycmlkZSB0aGlzIGluaXRpYWwgd2lkdGguXG4gIHdpZHRoOiAxMDAlO1xuICBtaW4taGVpZ2h0OiAxcHg7IC8vIFByZXZlbnQgY29sbGFwc2luZ1xuXG4gIEBlYWNoICRicmVha3BvaW50IGluIG1hcC1rZXlzKCRndXR0ZXJzKSB7XG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCgkYnJlYWtwb2ludCkge1xuICAgICAgJGd1dHRlcjogbWFwLWdldCgkZ3V0dGVycywgJGJyZWFrcG9pbnQpO1xuICAgICAgcGFkZGluZy1yaWdodDogKCRndXR0ZXIgLyAyKTtcbiAgICAgIHBhZGRpbmctbGVmdDogICgkZ3V0dGVyIC8gMik7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBtYWtlLWNvbCgkc2l6ZSwgJGNvbHVtbnM6ICRncmlkLWNvbHVtbnMpIHtcbiAgZmxleDogMCAwIHBlcmNlbnRhZ2UoJHNpemUgLyAkY29sdW1ucyk7XG4gIC8vIHdpZHRoOiBwZXJjZW50YWdlKCRzaXplIC8gJGNvbHVtbnMpO1xuICAvLyBBZGQgYSBgbWF4LXdpZHRoYCB0byBlbnN1cmUgY29udGVudCB3aXRoaW4gZWFjaCBjb2x1bW4gZG9lcyBub3QgYmxvdyBvdXRcbiAgLy8gdGhlIHdpZHRoIG9mIHRoZSBjb2x1bW4uIEFwcGxpZXMgdG8gSUUxMCsgYW5kIEZpcmVmb3guIENocm9tZSBhbmQgU2FmYXJpXG4gIC8vIGRvIG5vdCBhcHBlYXIgdG8gcmVxdWlyZSB0aGlzLlxuICBtYXgtd2lkdGg6IHBlcmNlbnRhZ2UoJHNpemUgLyAkY29sdW1ucyk7XG59XG5cbkBtaXhpbiBtYWtlLWNvbC1vZmZzZXQoJHNpemUsICRjb2x1bW5zOiAkZ3JpZC1jb2x1bW5zKSB7XG4gIG1hcmdpbi1sZWZ0OiBwZXJjZW50YWdlKCRzaXplIC8gJGNvbHVtbnMpO1xufVxuXG5AbWl4aW4gbWFrZS1jb2wtcHVzaCgkc2l6ZSwgJGNvbHVtbnM6ICRncmlkLWNvbHVtbnMpIHtcbiAgbGVmdDogaWYoJHNpemUgPiAwLCBwZXJjZW50YWdlKCRzaXplIC8gJGNvbHVtbnMpLCBhdXRvKTtcbn1cblxuQG1peGluIG1ha2UtY29sLXB1bGwoJHNpemUsICRjb2x1bW5zOiAkZ3JpZC1jb2x1bW5zKSB7XG4gIHJpZ2h0OiBpZigkc2l6ZSA+IDAsIHBlcmNlbnRhZ2UoJHNpemUgLyAkY29sdW1ucyksIGF1dG8pO1xufVxuXG5AbWl4aW4gbWFrZS1jb2wtbW9kaWZpZXIoJHR5cGUsICRzaXplLCAkY29sdW1ucykge1xuICAvLyBXb3JrIGFyb3VuZCB0aGUgbGFjayBvZiBkeW5hbWljIG1peGluIEBpbmNsdWRlIHN1cHBvcnQgKGh0dHBzOi8vZ2l0aHViLmNvbS9zYXNzL3Nhc3MvaXNzdWVzLzYyNilcbiAgQGlmICR0eXBlID09IHB1c2gge1xuICAgIEBpbmNsdWRlIG1ha2UtY29sLXB1c2goJHNpemUsICRjb2x1bW5zKTtcbiAgfSBAZWxzZSBpZiAkdHlwZSA9PSBwdWxsIHtcbiAgICBAaW5jbHVkZSBtYWtlLWNvbC1wdWxsKCRzaXplLCAkY29sdW1ucyk7XG4gIH0gQGVsc2UgaWYgJHR5cGUgPT0gb2Zmc2V0IHtcbiAgICBAaW5jbHVkZSBtYWtlLWNvbC1vZmZzZXQoJHNpemUsICRjb2x1bW5zKTtcbiAgfVxufVxuIiwiQG1peGluIGZsb2F0LWxlZnQge1xuICBmbG9hdDogbGVmdCAhaW1wb3J0YW50O1xufVxuQG1peGluIGZsb2F0LXJpZ2h0IHtcbiAgZmxvYXQ6IHJpZ2h0ICFpbXBvcnRhbnQ7XG59XG5AbWl4aW4gZmxvYXQtbm9uZSB7XG4gIGZsb2F0OiBub25lICFpbXBvcnRhbnQ7XG59XG4iLCIvLyBCb290c3RyYXAgb3ZlcnJpZGVzXG4vL1xuLy8gQ29weSB2YXJpYWJsZXMgZnJvbSBgX3ZhcmlhYmxlcy5zY3NzYCB0byB0aGlzIGZpbGUgdG8gb3ZlcnJpZGUgZGVmYXVsdCB2YWx1ZXNcbi8vIHdpdGhvdXQgbW9kaWZ5aW5nIHNvdXJjZSBmaWxlcy5cbiIsIi8qISBub3JtYWxpemUuY3NzIHY1LjAuMCB8IE1JVCBMaWNlbnNlIHwgZ2l0aHViLmNvbS9uZWNvbGFzL25vcm1hbGl6ZS5jc3MgKi9cblxuLy9cbi8vIDEuIENoYW5nZSB0aGUgZGVmYXVsdCBmb250IGZhbWlseSBpbiBhbGwgYnJvd3NlcnMgKG9waW5pb25hdGVkKS5cbi8vIDIuIENvcnJlY3QgdGhlIGxpbmUgaGVpZ2h0IGluIGFsbCBicm93c2Vycy5cbi8vIDMuIFByZXZlbnQgYWRqdXN0bWVudHMgb2YgZm9udCBzaXplIGFmdGVyIG9yaWVudGF0aW9uIGNoYW5nZXMgaW5cbi8vICAgIElFIG9uIFdpbmRvd3MgUGhvbmUgYW5kIGluIGlPUy5cbi8vXG5cbi8vIERvY3VtZW50XG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG5odG1sIHtcbiAgZm9udC1mYW1pbHk6IHNhbnMtc2VyaWY7IC8vIDFcbiAgbGluZS1oZWlnaHQ6IDEuMTU7IC8vIDJcbiAgLW1zLXRleHQtc2l6ZS1hZGp1c3Q6IDEwMCU7IC8vIDNcbiAgLXdlYmtpdC10ZXh0LXNpemUtYWRqdXN0OiAxMDAlOyAvLyAzXG59XG5cbi8vIFNlY3Rpb25zXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4vL1xuLy8gUmVtb3ZlIHRoZSBtYXJnaW4gaW4gYWxsIGJyb3dzZXJzIChvcGluaW9uYXRlZCkuXG4vL1xuXG5ib2R5IHtcbiAgbWFyZ2luOiAwO1xufVxuXG4vL1xuLy8gQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gSUUgOS0uXG4vL1xuXG5hcnRpY2xlLFxuYXNpZGUsXG5mb290ZXIsXG5oZWFkZXIsXG5uYXYsXG5zZWN0aW9uIHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbi8vXG4vLyBDb3JyZWN0IHRoZSBmb250IHNpemUgYW5kIG1hcmdpbiBvbiBgaDFgIGVsZW1lbnRzIHdpdGhpbiBgc2VjdGlvbmAgYW5kXG4vLyBgYXJ0aWNsZWAgY29udGV4dHMgaW4gQ2hyb21lLCBGaXJlZm94LCBhbmQgU2FmYXJpLlxuLy9cblxuaDEge1xuICBmb250LXNpemU6IDJlbTtcbiAgbWFyZ2luOiAwLjY3ZW0gMDtcbn1cblxuLy8gR3JvdXBpbmcgY29udGVudFxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuLy9cbi8vIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIElFIDktLlxuLy8gMS4gQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gSUUuXG4vL1xuXG5maWdjYXB0aW9uLFxuZmlndXJlLFxubWFpbiB7IC8vIDFcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbi8vXG4vLyBBZGQgdGhlIGNvcnJlY3QgbWFyZ2luIGluIElFIDguXG4vL1xuXG5maWd1cmUge1xuICBtYXJnaW46IDFlbSA0MHB4O1xufVxuXG4vL1xuLy8gMS4gQWRkIHRoZSBjb3JyZWN0IGJveCBzaXppbmcgaW4gRmlyZWZveC5cbi8vIDIuIFNob3cgdGhlIG92ZXJmbG93IGluIEVkZ2UgYW5kIElFLlxuLy9cblxuaHIge1xuICBib3gtc2l6aW5nOiBjb250ZW50LWJveDsgLy8gMVxuICBoZWlnaHQ6IDA7IC8vIDFcbiAgb3ZlcmZsb3c6IHZpc2libGU7IC8vIDJcbn1cblxuLy9cbi8vIDEuIENvcnJlY3QgdGhlIGluaGVyaXRhbmNlIGFuZCBzY2FsaW5nIG9mIGZvbnQgc2l6ZSBpbiBhbGwgYnJvd3NlcnMuXG4vLyAyLiBDb3JyZWN0IHRoZSBvZGQgYGVtYCBmb250IHNpemluZyBpbiBhbGwgYnJvd3NlcnMuXG4vL1xuXG5wcmUge1xuICBmb250LWZhbWlseTogbW9ub3NwYWNlLCBtb25vc3BhY2U7IC8vIDFcbiAgZm9udC1zaXplOiAxZW07IC8vIDJcbn1cblxuLy8gVGV4dC1sZXZlbCBzZW1hbnRpY3Ncbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbi8vXG4vLyAxLiBSZW1vdmUgdGhlIGdyYXkgYmFja2dyb3VuZCBvbiBhY3RpdmUgbGlua3MgaW4gSUUgMTAuXG4vLyAyLiBSZW1vdmUgZ2FwcyBpbiBsaW5rcyB1bmRlcmxpbmUgaW4gaU9TIDgrIGFuZCBTYWZhcmkgOCsuXG4vL1xuXG5hIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7IC8vIDFcbiAgLXdlYmtpdC10ZXh0LWRlY29yYXRpb24tc2tpcDogb2JqZWN0czsgLy8gMlxufVxuXG4vL1xuLy8gUmVtb3ZlIHRoZSBvdXRsaW5lIG9uIGZvY3VzZWQgbGlua3Mgd2hlbiB0aGV5IGFyZSBhbHNvIGFjdGl2ZSBvciBob3ZlcmVkXG4vLyBpbiBhbGwgYnJvd3NlcnMgKG9waW5pb25hdGVkKS5cbi8vXG5cbmE6YWN0aXZlLFxuYTpob3ZlciB7XG4gIG91dGxpbmUtd2lkdGg6IDA7XG59XG5cbi8vXG4vLyAxLiBSZW1vdmUgdGhlIGJvdHRvbSBib3JkZXIgaW4gRmlyZWZveCAzOS0uXG4vLyAyLiBBZGQgdGhlIGNvcnJlY3QgdGV4dCBkZWNvcmF0aW9uIGluIENocm9tZSwgRWRnZSwgSUUsIE9wZXJhLCBhbmQgU2FmYXJpLlxuLy9cblxuYWJiclt0aXRsZV0ge1xuICBib3JkZXItYm90dG9tOiBub25lOyAvLyAxXG4gIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lOyAvLyAyXG4gIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lIGRvdHRlZDsgLy8gMlxufVxuXG4vL1xuLy8gUHJldmVudCB0aGUgZHVwbGljYXRlIGFwcGxpY2F0aW9uIG9mIGBib2xkZXJgIGJ5IHRoZSBuZXh0IHJ1bGUgaW4gU2FmYXJpIDYuXG4vL1xuXG5iLFxuc3Ryb25nIHtcbiAgZm9udC13ZWlnaHQ6IGluaGVyaXQ7XG59XG5cbi8vXG4vLyBBZGQgdGhlIGNvcnJlY3QgZm9udCB3ZWlnaHQgaW4gQ2hyb21lLCBFZGdlLCBhbmQgU2FmYXJpLlxuLy9cblxuYixcbnN0cm9uZyB7XG4gIGZvbnQtd2VpZ2h0OiBib2xkZXI7XG59XG5cbi8vXG4vLyAxLiBDb3JyZWN0IHRoZSBpbmhlcml0YW5jZSBhbmQgc2NhbGluZyBvZiBmb250IHNpemUgaW4gYWxsIGJyb3dzZXJzLlxuLy8gMi4gQ29ycmVjdCB0aGUgb2RkIGBlbWAgZm9udCBzaXppbmcgaW4gYWxsIGJyb3dzZXJzLlxuLy9cblxuY29kZSxcbmtiZCxcbnNhbXAge1xuICBmb250LWZhbWlseTogbW9ub3NwYWNlLCBtb25vc3BhY2U7IC8vIDFcbiAgZm9udC1zaXplOiAxZW07IC8vIDJcbn1cblxuLy9cbi8vIEFkZCB0aGUgY29ycmVjdCBmb250IHN0eWxlIGluIEFuZHJvaWQgNC4zLS5cbi8vXG5cbmRmbiB7XG4gIGZvbnQtc3R5bGU6IGl0YWxpYztcbn1cblxuLy9cbi8vIEFkZCB0aGUgY29ycmVjdCBiYWNrZ3JvdW5kIGFuZCBjb2xvciBpbiBJRSA5LS5cbi8vXG5cbm1hcmsge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmYwO1xuICBjb2xvcjogIzAwMDtcbn1cblxuLy9cbi8vIEFkZCB0aGUgY29ycmVjdCBmb250IHNpemUgaW4gYWxsIGJyb3dzZXJzLlxuLy9cblxuc21hbGwge1xuICBmb250LXNpemU6IDgwJTtcbn1cblxuLy9cbi8vIFByZXZlbnQgYHN1YmAgYW5kIGBzdXBgIGVsZW1lbnRzIGZyb20gYWZmZWN0aW5nIHRoZSBsaW5lIGhlaWdodCBpblxuLy8gYWxsIGJyb3dzZXJzLlxuLy9cblxuc3ViLFxuc3VwIHtcbiAgZm9udC1zaXplOiA3NSU7XG4gIGxpbmUtaGVpZ2h0OiAwO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTtcbn1cblxuc3ViIHtcbiAgYm90dG9tOiAtMC4yNWVtO1xufVxuXG5zdXAge1xuICB0b3A6IC0wLjVlbTtcbn1cblxuLy8gRW1iZWRkZWQgY29udGVudFxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuLy9cbi8vIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIElFIDktLlxuLy9cblxuYXVkaW8sXG52aWRlbyB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbn1cblxuLy9cbi8vIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIGlPUyA0LTcuXG4vL1xuXG5hdWRpbzpub3QoW2NvbnRyb2xzXSkge1xuICBkaXNwbGF5OiBub25lO1xuICBoZWlnaHQ6IDA7XG59XG5cbi8vXG4vLyBSZW1vdmUgdGhlIGJvcmRlciBvbiBpbWFnZXMgaW5zaWRlIGxpbmtzIGluIElFIDEwLS5cbi8vXG5cbmltZyB7XG4gIGJvcmRlci1zdHlsZTogbm9uZTtcbn1cblxuLy9cbi8vIEhpZGUgdGhlIG92ZXJmbG93IGluIElFLlxuLy9cblxuc3ZnOm5vdCg6cm9vdCkge1xuICBvdmVyZmxvdzogaGlkZGVuO1xufVxuXG4vLyBGb3Jtc1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuLy9cbi8vIDEuIENoYW5nZSB0aGUgZm9udCBzdHlsZXMgaW4gYWxsIGJyb3dzZXJzIChvcGluaW9uYXRlZCkuXG4vLyAyLiBSZW1vdmUgdGhlIG1hcmdpbiBpbiBGaXJlZm94IGFuZCBTYWZhcmkuXG4vL1xuXG5idXR0b24sXG5pbnB1dCxcbm9wdGdyb3VwLFxuc2VsZWN0LFxudGV4dGFyZWEge1xuICBmb250LWZhbWlseTogc2Fucy1zZXJpZjsgLy8gMVxuICBmb250LXNpemU6IDEwMCU7IC8vIDFcbiAgbGluZS1oZWlnaHQ6IDEuMTU7IC8vIDFcbiAgbWFyZ2luOiAwOyAvLyAyXG59XG5cbi8vXG4vLyBTaG93IHRoZSBvdmVyZmxvdyBpbiBJRS5cbi8vIDEuIFNob3cgdGhlIG92ZXJmbG93IGluIEVkZ2UuXG4vL1xuXG5idXR0b24sXG5pbnB1dCB7IC8vIDFcbiAgb3ZlcmZsb3c6IHZpc2libGU7XG59XG5cbi8vXG4vLyBSZW1vdmUgdGhlIGluaGVyaXRhbmNlIG9mIHRleHQgdHJhbnNmb3JtIGluIEVkZ2UsIEZpcmVmb3gsIGFuZCBJRS5cbi8vIDEuIFJlbW92ZSB0aGUgaW5oZXJpdGFuY2Ugb2YgdGV4dCB0cmFuc2Zvcm0gaW4gRmlyZWZveC5cbi8vXG5cbmJ1dHRvbixcbnNlbGVjdCB7IC8vIDFcbiAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG59XG5cbi8vXG4vLyAxLiBQcmV2ZW50IGEgV2ViS2l0IGJ1ZyB3aGVyZSAoMikgZGVzdHJveXMgbmF0aXZlIGBhdWRpb2AgYW5kIGB2aWRlb2Bcbi8vICAgIGNvbnRyb2xzIGluIEFuZHJvaWQgNC5cbi8vIDIuIENvcnJlY3QgdGhlIGluYWJpbGl0eSB0byBzdHlsZSBjbGlja2FibGUgdHlwZXMgaW4gaU9TIGFuZCBTYWZhcmkuXG4vL1xuXG5idXR0b24sXG5odG1sIFt0eXBlPVwiYnV0dG9uXCJdLCAvLyAxXG5bdHlwZT1cInJlc2V0XCJdLFxuW3R5cGU9XCJzdWJtaXRcIl0ge1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IGJ1dHRvbjsgLy8gMlxufVxuXG4vL1xuLy8gUmVtb3ZlIHRoZSBpbm5lciBib3JkZXIgYW5kIHBhZGRpbmcgaW4gRmlyZWZveC5cbi8vXG5cbmJ1dHRvbjo6LW1vei1mb2N1cy1pbm5lcixcblt0eXBlPVwiYnV0dG9uXCJdOjotbW96LWZvY3VzLWlubmVyLFxuW3R5cGU9XCJyZXNldFwiXTo6LW1vei1mb2N1cy1pbm5lcixcblt0eXBlPVwic3VibWl0XCJdOjotbW96LWZvY3VzLWlubmVyIHtcbiAgYm9yZGVyLXN0eWxlOiBub25lO1xuICBwYWRkaW5nOiAwO1xufVxuXG4vL1xuLy8gUmVzdG9yZSB0aGUgZm9jdXMgc3R5bGVzIHVuc2V0IGJ5IHRoZSBwcmV2aW91cyBydWxlLlxuLy9cblxuYnV0dG9uOi1tb3otZm9jdXNyaW5nLFxuW3R5cGU9XCJidXR0b25cIl06LW1vei1mb2N1c3JpbmcsXG5bdHlwZT1cInJlc2V0XCJdOi1tb3otZm9jdXNyaW5nLFxuW3R5cGU9XCJzdWJtaXRcIl06LW1vei1mb2N1c3Jpbmcge1xuICBvdXRsaW5lOiAxcHggZG90dGVkIEJ1dHRvblRleHQ7XG59XG5cbi8vXG4vLyBDaGFuZ2UgdGhlIGJvcmRlciwgbWFyZ2luLCBhbmQgcGFkZGluZyBpbiBhbGwgYnJvd3NlcnMgKG9waW5pb25hdGVkKS5cbi8vXG5cbmZpZWxkc2V0IHtcbiAgYm9yZGVyOiAxcHggc29saWQgI2MwYzBjMDtcbiAgbWFyZ2luOiAwIDJweDtcbiAgcGFkZGluZzogMC4zNWVtIDAuNjI1ZW0gMC43NWVtO1xufVxuXG4vL1xuLy8gMS4gQ29ycmVjdCB0aGUgdGV4dCB3cmFwcGluZyBpbiBFZGdlIGFuZCBJRS5cbi8vIDIuIENvcnJlY3QgdGhlIGNvbG9yIGluaGVyaXRhbmNlIGZyb20gYGZpZWxkc2V0YCBlbGVtZW50cyBpbiBJRS5cbi8vIDMuIFJlbW92ZSB0aGUgcGFkZGluZyBzbyBkZXZlbG9wZXJzIGFyZSBub3QgY2F1Z2h0IG91dCB3aGVuIHRoZXkgemVybyBvdXRcbi8vICAgIGBmaWVsZHNldGAgZWxlbWVudHMgaW4gYWxsIGJyb3dzZXJzLlxuLy9cblxubGVnZW5kIHtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDsgLy8gMVxuICBjb2xvcjogaW5oZXJpdDsgLy8gMlxuICBkaXNwbGF5OiB0YWJsZTsgLy8gMVxuICBtYXgtd2lkdGg6IDEwMCU7IC8vIDFcbiAgcGFkZGluZzogMDsgLy8gM1xuICB3aGl0ZS1zcGFjZTogbm9ybWFsOyAvLyAxXG59XG5cbi8vXG4vLyAxLiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBJRSA5LS5cbi8vIDIuIEFkZCB0aGUgY29ycmVjdCB2ZXJ0aWNhbCBhbGlnbm1lbnQgaW4gQ2hyb21lLCBGaXJlZm94LCBhbmQgT3BlcmEuXG4vL1xuXG5wcm9ncmVzcyB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jazsgLy8gMVxuICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7IC8vIDJcbn1cblxuLy9cbi8vIFJlbW92ZSB0aGUgZGVmYXVsdCB2ZXJ0aWNhbCBzY3JvbGxiYXIgaW4gSUUuXG4vL1xuXG50ZXh0YXJlYSB7XG4gIG92ZXJmbG93OiBhdXRvO1xufVxuXG4vL1xuLy8gMS4gQWRkIHRoZSBjb3JyZWN0IGJveCBzaXppbmcgaW4gSUUgMTAtLlxuLy8gMi4gUmVtb3ZlIHRoZSBwYWRkaW5nIGluIElFIDEwLS5cbi8vXG5cblt0eXBlPVwiY2hlY2tib3hcIl0sXG5bdHlwZT1cInJhZGlvXCJdIHtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDsgLy8gMVxuICBwYWRkaW5nOiAwOyAvLyAyXG59XG5cbi8vXG4vLyBDb3JyZWN0IHRoZSBjdXJzb3Igc3R5bGUgb2YgaW5jcmVtZW50IGFuZCBkZWNyZW1lbnQgYnV0dG9ucyBpbiBDaHJvbWUuXG4vL1xuXG5bdHlwZT1cIm51bWJlclwiXTo6LXdlYmtpdC1pbm5lci1zcGluLWJ1dHRvbixcblt0eXBlPVwibnVtYmVyXCJdOjotd2Via2l0LW91dGVyLXNwaW4tYnV0dG9uIHtcbiAgaGVpZ2h0OiBhdXRvO1xufVxuXG4vL1xuLy8gMS4gQ29ycmVjdCB0aGUgb2RkIGFwcGVhcmFuY2UgaW4gQ2hyb21lIGFuZCBTYWZhcmkuXG4vLyAyLiBDb3JyZWN0IHRoZSBvdXRsaW5lIHN0eWxlIGluIFNhZmFyaS5cbi8vXG5cblt0eXBlPVwic2VhcmNoXCJdIHtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiB0ZXh0ZmllbGQ7IC8vIDFcbiAgb3V0bGluZS1vZmZzZXQ6IC0ycHg7IC8vIDJcbn1cblxuLy9cbi8vIFJlbW92ZSB0aGUgaW5uZXIgcGFkZGluZyBhbmQgY2FuY2VsIGJ1dHRvbnMgaW4gQ2hyb21lIGFuZCBTYWZhcmkgb24gbWFjT1MuXG4vL1xuXG5bdHlwZT1cInNlYXJjaFwiXTo6LXdlYmtpdC1zZWFyY2gtY2FuY2VsLWJ1dHRvbixcblt0eXBlPVwic2VhcmNoXCJdOjotd2Via2l0LXNlYXJjaC1kZWNvcmF0aW9uIHtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xufVxuXG4vL1xuLy8gMS4gQ29ycmVjdCB0aGUgaW5hYmlsaXR5IHRvIHN0eWxlIGNsaWNrYWJsZSB0eXBlcyBpbiBpT1MgYW5kIFNhZmFyaS5cbi8vIDIuIENoYW5nZSBmb250IHByb3BlcnRpZXMgdG8gYGluaGVyaXRgIGluIFNhZmFyaS5cbi8vXG5cbjo6LXdlYmtpdC1maWxlLXVwbG9hZC1idXR0b24ge1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IGJ1dHRvbjsgLy8gMVxuICBmb250OiBpbmhlcml0OyAvLyAyXG59XG5cbi8vIEludGVyYWN0aXZlXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4vL1xuLy8gQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gSUUgOS0uXG4vLyAxLiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBFZGdlLCBJRSwgYW5kIEZpcmVmb3guXG4vL1xuXG5kZXRhaWxzLCAvLyAxXG5tZW51IHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbi8vXG4vLyBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBhbGwgYnJvd3NlcnMuXG4vL1xuXG5zdW1tYXJ5IHtcbiAgZGlzcGxheTogbGlzdC1pdGVtO1xufVxuXG4vLyBTY3JpcHRpbmdcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbi8vXG4vLyBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBJRSA5LS5cbi8vXG5cbmNhbnZhcyB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbn1cblxuLy9cbi8vIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIElFLlxuLy9cblxudGVtcGxhdGUge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4vLyBIaWRkZW5cbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbi8vXG4vLyBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBJRSAxMC0uXG4vL1xuXG5baGlkZGVuXSB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG4iLCIvLyBzY3NzLWxpbnQ6ZGlzYWJsZSBRdWFsaWZ5aW5nRWxlbWVudFxuXG4vLyBTb3VyY2U6IGh0dHBzOi8vZ2l0aHViLmNvbS9oNWJwL2h0bWw1LWJvaWxlcnBsYXRlL2Jsb2IvbWFzdGVyL3NyYy9jc3MvbWFpbi5jc3NcblxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbi8vIFByaW50IHN0eWxlcy5cbi8vIElubGluZWQgdG8gYXZvaWQgdGhlIGFkZGl0aW9uYWwgSFRUUCByZXF1ZXN0OlxuLy8gaHR0cDovL3d3dy5waHBpZWQuY29tL2RlbGF5LWxvYWRpbmcteW91ci1wcmludC1jc3MvXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG5AaWYgJGVuYWJsZS1wcmludC1zdHlsZXMge1xuICBAbWVkaWEgcHJpbnQge1xuICAgICosXG4gICAgKjo6YmVmb3JlLFxuICAgICo6OmFmdGVyLFxuICAgIHA6OmZpcnN0LWxldHRlcixcbiAgICBkaXY6OmZpcnN0LWxldHRlcixcbiAgICBibG9ja3F1b3RlOjpmaXJzdC1sZXR0ZXIsXG4gICAgbGk6OmZpcnN0LWxldHRlcixcbiAgICBwOjpmaXJzdC1saW5lLFxuICAgIGRpdjo6Zmlyc3QtbGluZSxcbiAgICBibG9ja3F1b3RlOjpmaXJzdC1saW5lLFxuICAgIGxpOjpmaXJzdC1saW5lIHtcbiAgICAgIC8vIEJvb3RzdHJhcCBzcGVjaWZpYzsgY29tbWVudCBvdXQgYGNvbG9yYCBhbmQgYGJhY2tncm91bmRgXG4gICAgICAvL2NvbG9yOiAjMDAwICFpbXBvcnRhbnQ7IC8vIEJsYWNrIHByaW50cyBmYXN0ZXI6XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8vICAgaHR0cDovL3d3dy5zYW5iZWlqaS5jb20vYXJjaGl2ZXMvOTUzXG4gICAgICB0ZXh0LXNoYWRvdzogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgLy9iYWNrZ3JvdW5kOiB0cmFuc3BhcmVudCAhaW1wb3J0YW50O1xuICAgICAgYm94LXNoYWRvdzogbm9uZSAhaW1wb3J0YW50O1xuICAgIH1cblxuICAgIGEsXG4gICAgYTp2aXNpdGVkIHtcbiAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICAgIH1cblxuICAgIC8vIEJvb3RzdHJhcCBzcGVjaWZpYzsgY29tbWVudCB0aGUgZm9sbG93aW5nIHNlbGVjdG9yIG91dFxuICAgIC8vYVtocmVmXTo6YWZ0ZXIge1xuICAgIC8vICBjb250ZW50OiBcIiAoXCIgYXR0cihocmVmKSBcIilcIjtcbiAgICAvL31cblxuICAgIGFiYnJbdGl0bGVdOjphZnRlciB7XG4gICAgICBjb250ZW50OiBcIiAoXCIgYXR0cih0aXRsZSkgXCIpXCI7XG4gICAgfVxuXG4gICAgLy8gQm9vdHN0cmFwIHNwZWNpZmljOyBjb21tZW50IHRoZSBmb2xsb3dpbmcgc2VsZWN0b3Igb3V0XG4gICAgLy9cbiAgICAvLyBEb24ndCBzaG93IGxpbmtzIHRoYXQgYXJlIGZyYWdtZW50IGlkZW50aWZpZXJzLFxuICAgIC8vIG9yIHVzZSB0aGUgYGphdmFzY3JpcHQ6YCBwc2V1ZG8gcHJvdG9jb2xcbiAgICAvL1xuXG4gICAgLy9hW2hyZWZePVwiI1wiXTo6YWZ0ZXIsXG4gICAgLy9hW2hyZWZePVwiamF2YXNjcmlwdDpcIl06OmFmdGVyIHtcbiAgICAvLyBjb250ZW50OiBcIlwiO1xuICAgIC8vfVxuXG4gICAgcHJlIHtcbiAgICAgIHdoaXRlLXNwYWNlOiBwcmUtd3JhcCAhaW1wb3J0YW50O1xuICAgIH1cbiAgICBwcmUsXG4gICAgYmxvY2txdW90ZSB7XG4gICAgICBib3JkZXI6ICRib3JkZXItd2lkdGggc29saWQgIzk5OTsgICAvLyBCb290c3RyYXAgY3VzdG9tIGNvZGU7IHVzaW5nIGAkYm9yZGVyLXdpZHRoYCBpbnN0ZWFkIG9mIDFweFxuICAgICAgcGFnZS1icmVhay1pbnNpZGU6IGF2b2lkO1xuICAgIH1cblxuICAgIC8vXG4gICAgLy8gUHJpbnRpbmcgVGFibGVzOlxuICAgIC8vIGh0dHA6Ly9jc3MtZGlzY3Vzcy5pbmN1dGlvLmNvbS93aWtpL1ByaW50aW5nX1RhYmxlc1xuICAgIC8vXG5cbiAgICB0aGVhZCB7XG4gICAgICBkaXNwbGF5OiB0YWJsZS1oZWFkZXItZ3JvdXA7XG4gICAgfVxuXG4gICAgdHIsXG4gICAgaW1nIHtcbiAgICAgIHBhZ2UtYnJlYWstaW5zaWRlOiBhdm9pZDtcbiAgICB9XG5cbiAgICBwLFxuICAgIGgyLFxuICAgIGgzIHtcbiAgICAgIG9ycGhhbnM6IDM7XG4gICAgICB3aWRvd3M6IDM7XG4gICAgfVxuXG4gICAgaDIsXG4gICAgaDMge1xuICAgICAgcGFnZS1icmVhay1hZnRlcjogYXZvaWQ7XG4gICAgfVxuXG4gICAgLy8gQm9vdHN0cmFwIHNwZWNpZmljIGNoYW5nZXMgc3RhcnRcblxuICAgIC8vIEJvb3RzdHJhcCBjb21wb25lbnRzXG4gICAgLm5hdmJhciB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cbiAgICAuYmFkZ2Uge1xuICAgICAgYm9yZGVyOiAkYm9yZGVyLXdpZHRoIHNvbGlkICMwMDA7XG4gICAgfVxuXG4gICAgLnRhYmxlIHtcbiAgICAgIGJvcmRlci1jb2xsYXBzZTogY29sbGFwc2UgIWltcG9ydGFudDtcblxuICAgICAgdGQsXG4gICAgICB0aCB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmYgIWltcG9ydGFudDtcbiAgICAgIH1cbiAgICB9XG4gICAgLnRhYmxlLWJvcmRlcmVkIHtcbiAgICAgIHRoLFxuICAgICAgdGQge1xuICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAjZGRkICFpbXBvcnRhbnQ7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gQm9vdHN0cmFwIHNwZWNpZmljIGNoYW5nZXMgZW5kXG4gIH1cbn1cbiIsIi8vIHNjc3MtbGludDpkaXNhYmxlIFF1YWxpZnlpbmdFbGVtZW50LCBEdXBsaWNhdGVQcm9wZXJ0eVxuXG4vLyBSZWJvb3Rcbi8vXG4vLyBHbG9iYWwgcmVzZXRzIHRvIGNvbW1vbiBIVE1MIGVsZW1lbnRzIGFuZCBtb3JlIGZvciBlYXNpZXIgdXNhZ2UgYnkgQm9vdHN0cmFwLlxuLy8gQWRkcyBhZGRpdGlvbmFsIHJ1bGVzIG9uIHRvcCBvZiBOb3JtYWxpemUuY3NzLCBpbmNsdWRpbmcgc2V2ZXJhbCBvdmVycmlkZXMuXG5cblxuLy8gUmVzZXQgdGhlIGJveC1zaXppbmdcbi8vXG4vLyBDaGFuZ2UgZnJvbSBgYm94LXNpemluZzogY29udGVudC1ib3hgIHRvIGBib3JkZXItYm94YCBzbyB0aGF0IHdoZW4geW91IGFkZFxuLy8gYHBhZGRpbmdgIG9yIGBib3JkZXJgcyB0byBhbiBlbGVtZW50LCB0aGUgb3ZlcmFsbCBkZWNsYXJlZCBgd2lkdGhgIGRvZXMgbm90XG4vLyBjaGFuZ2UuIEZvciBleGFtcGxlLCBgd2lkdGg6IDEwMHB4O2Agd2lsbCBhbHdheXMgYmUgYDEwMHB4YCBkZXNwaXRlIHRoZVxuLy8gYGJvcmRlcjogMTBweCBzb2xpZCByZWQ7YCBhbmQgYHBhZGRpbmc6IDIwcHg7YC5cbi8vXG4vLyBIZWFkcyB1cCEgVGhpcyByZXNldCBtYXkgY2F1c2UgY29uZmxpY3RzIHdpdGggc29tZSB0aGlyZC1wYXJ0eSB3aWRnZXRzLiBGb3Jcbi8vIHJlY29tbWVuZGF0aW9ucyBvbiByZXNvbHZpbmcgc3VjaCBjb25mbGljdHMsIHNlZVxuLy8gaHR0cHM6Ly9nZXRib290c3RyYXAuY29tL2dldHRpbmctc3RhcnRlZC8jdGhpcmQtYm94LXNpemluZy5cbi8vXG4vLyBDcmVkaXQ6IGh0dHBzOi8vY3NzLXRyaWNrcy5jb20vaW5oZXJpdGluZy1ib3gtc2l6aW5nLXByb2JhYmx5LXNsaWdodGx5LWJldHRlci1iZXN0LXByYWN0aWNlL1xuXG5odG1sIHtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbn1cblxuKixcbio6OmJlZm9yZSxcbio6OmFmdGVyIHtcbiAgYm94LXNpemluZzogaW5oZXJpdDtcbn1cblxuXG4vLyBNYWtlIHZpZXdwb3J0IHJlc3BvbnNpdmVcbi8vXG4vLyBAdmlld3BvcnQgaXMgbmVlZGVkIGJlY2F1c2UgSUUgMTArIGRvZXNuJ3QgaG9ub3IgPG1ldGEgbmFtZT1cInZpZXdwb3J0XCI+IGluXG4vLyBzb21lIGNhc2VzLiBTZWUgaHR0cHM6Ly90aW1rYWRsZWMuY29tLzIwMTIvMTAvaWUxMC1zbmFwLW1vZGUtYW5kLXJlc3BvbnNpdmUtZGVzaWduLy5cbi8vIEV2ZW50dWFsbHkgQHZpZXdwb3J0IHdpbGwgcmVwbGFjZSA8bWV0YSBuYW1lPVwidmlld3BvcnRcIj4uXG4vL1xuLy8gSG93ZXZlciwgYGRldmljZS13aWR0aGAgaXMgYnJva2VuIG9uIElFIDEwIG9uIFdpbmRvd3MgKFBob25lKSA4LFxuLy8gKHNlZSBodHRwczovL3RpbWthZGxlYy5jb20vMjAxMy8wMS93aW5kb3dzLXBob25lLTgtYW5kLWRldmljZS13aWR0aC8gYW5kIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMTA0OTcpXG4vLyBhbmQgdGhlIGZpeCBmb3IgdGhhdCBpbnZvbHZlcyBhIHNuaXBwZXQgb2YgSmF2YVNjcmlwdCB0byBzbmlmZiB0aGUgdXNlciBhZ2VudFxuLy8gYW5kIGFwcGx5IHNvbWUgY29uZGl0aW9uYWwgQ1NTLlxuLy9cbi8vIFNlZSBodHRwczovL2dldGJvb3RzdHJhcC5jb20vZ2V0dGluZy1zdGFydGVkLyNzdXBwb3J0LWllMTAtd2lkdGggZm9yIHRoZSByZWxldmFudCBoYWNrLlxuLy9cbi8vIFdyYXAgYEB2aWV3cG9ydGAgd2l0aCBgQGF0LXJvb3RgIGZvciB3aGVuIGZvbGtzIGRvIGEgbmVzdGVkIGltcG9ydCAoZS5nLixcbi8vIGAuY2xhc3MtbmFtZSB7IEBpbXBvcnQgXCJib290c3RyYXBcIjsgfWApLlxuQGF0LXJvb3Qge1xuICBALW1zLXZpZXdwb3J0IHsgd2lkdGg6IGRldmljZS13aWR0aDsgfVxufVxuXG5cbi8vXG4vLyBSZXNldCBIVE1MLCBib2R5LCBhbmQgbW9yZVxuLy9cblxuaHRtbCB7XG4gIC8vIFdlIGFzc3VtZSBubyBpbml0aWFsIHBpeGVsIGBmb250LXNpemVgIGZvciBhY2Nlc3NpYmlsaXR5IHJlYXNvbnMuIFRoaXNcbiAgLy8gYWxsb3dzIHdlYiB2aXNpdG9ycyB0byBjdXN0b21pemUgdGhlaXIgYnJvd3NlciBkZWZhdWx0IGZvbnQtc2l6ZSwgbWFraW5nXG4gIC8vIHlvdXIgcHJvamVjdCBtb3JlIGluY2x1c2l2ZSBhbmQgYWNjZXNzaWJsZSB0byBldmVyeW9uZS5cblxuICAvLyBBcyBhIHNpZGUtZWZmZWN0IG9mIHNldHRpbmcgdGhlIEB2aWV3cG9ydCBhYm92ZSxcbiAgLy8gSUUxMSAmIEVkZ2UgbWFrZSB0aGUgc2Nyb2xsYmFyIG92ZXJsYXAgdGhlIGNvbnRlbnQgYW5kIGF1dG9tYXRpY2FsbHkgaGlkZSBpdHNlbGYgd2hlbiBub3QgaW4gdXNlLlxuICAvLyBVbmZvcnR1bmF0ZWx5LCB0aGUgYXV0by1zaG93aW5nIG9mIHRoZSBzY3JvbGxiYXIgaXMgc29tZXRpbWVzIHRvbyBzZW5zaXRpdmUsXG4gIC8vIHRodXMgbWFraW5nIGl0IGhhcmQgdG8gY2xpY2sgb24gc3R1ZmYgbmVhciB0aGUgcmlnaHQgZWRnZSBvZiB0aGUgcGFnZS5cbiAgLy8gU28gd2UgYWRkIHRoaXMgc3R5bGUgdG8gZm9yY2UgSUUxMSAmIEVkZ2UgdG8gdXNlIGEgXCJub3JtYWxcIiwgbm9uLW92ZXJsYXBwaW5nLCBub24tYXV0by1oaWRpbmcgc2Nyb2xsYmFyLlxuICAvLyBTZWUgaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2lzc3Vlcy8xODU0M1xuICAvLyBhbmQgaHR0cHM6Ly9kZXZlbG9wZXIubWljcm9zb2Z0LmNvbS9lbi11cy9taWNyb3NvZnQtZWRnZS9wbGF0Zm9ybS9pc3N1ZXMvNzE2NTM4My9cbiAgLW1zLW92ZXJmbG93LXN0eWxlOiBzY3JvbGxiYXI7XG5cbiAgLy8gQ2hhbmdlcyB0aGUgZGVmYXVsdCB0YXAgaGlnaGxpZ2h0IHRvIGJlIGNvbXBsZXRlbHkgdHJhbnNwYXJlbnQgaW4gaU9TLlxuICAtd2Via2l0LXRhcC1oaWdobGlnaHQtY29sb3I6IHJnYmEoMCwwLDAsMCk7XG59XG5cbmJvZHkge1xuICBmb250LWZhbWlseTogJGZvbnQtZmFtaWx5LWJhc2U7XG4gIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS1iYXNlO1xuICBmb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LWJhc2U7XG4gIGxpbmUtaGVpZ2h0OiAkbGluZS1oZWlnaHQtYmFzZTtcbiAgLy8gR28gZWFzeSBvbiB0aGUgZXllcyBhbmQgdXNlIHNvbWV0aGluZyBvdGhlciB0aGFuIGAjMDAwYCBmb3IgdGV4dFxuICBjb2xvcjogJGJvZHktY29sb3I7XG4gIC8vIEJ5IGRlZmF1bHQsIGA8Ym9keT5gIGhhcyBubyBgYmFja2dyb3VuZC1jb2xvcmAgc28gd2Ugc2V0IG9uZSBhcyBhIGJlc3QgcHJhY3RpY2UuXG4gIGJhY2tncm91bmQtY29sb3I6ICRib2R5LWJnO1xufVxuXG4vLyBTdXBwcmVzcyB0aGUgZm9jdXMgb3V0bGluZSBvbiBlbGVtZW50cyB0aGF0IGNhbm5vdCBiZSBhY2Nlc3NlZCB2aWEga2V5Ym9hcmQuXG4vLyBUaGlzIHByZXZlbnRzIGFuIHVud2FudGVkIGZvY3VzIG91dGxpbmUgZnJvbSBhcHBlYXJpbmcgYXJvdW5kIGVsZW1lbnRzIHRoYXRcbi8vIG1pZ2h0IHN0aWxsIHJlc3BvbmQgdG8gcG9pbnRlciBldmVudHMuXG4vL1xuLy8gQ3JlZGl0OiBodHRwczovL2dpdGh1Yi5jb20vc3VpdGNzcy9iYXNlXG5bdGFiaW5kZXg9XCItMVwiXTpmb2N1cyB7XG4gIG91dGxpbmU6IG5vbmUgIWltcG9ydGFudDtcbn1cblxuXG4vL1xuLy8gVHlwb2dyYXBoeVxuLy9cblxuLy8gUmVtb3ZlIHRvcCBtYXJnaW5zIGZyb20gaGVhZGluZ3Ncbi8vXG4vLyBCeSBkZWZhdWx0LCBgPGgxPmAtYDxoNj5gIGFsbCByZWNlaXZlIHRvcCBhbmQgYm90dG9tIG1hcmdpbnMuIFdlIG51a2UgdGhlIHRvcFxuLy8gbWFyZ2luIGZvciBlYXNpZXIgY29udHJvbCB3aXRoaW4gdHlwZSBzY2FsZXMgYXMgaXQgYXZvaWRzIG1hcmdpbiBjb2xsYXBzaW5nLlxuaDEsIGgyLCBoMywgaDQsIGg1LCBoNiB7XG4gIG1hcmdpbi10b3A6IDA7XG4gIG1hcmdpbi1ib3R0b206IC41cmVtO1xufVxuXG4vLyBSZXNldCBtYXJnaW5zIG9uIHBhcmFncmFwaHNcbi8vXG4vLyBTaW1pbGFybHksIHRoZSB0b3AgbWFyZ2luIG9uIGA8cD5gcyBnZXQgcmVzZXQuIEhvd2V2ZXIsIHdlIGFsc28gcmVzZXQgdGhlXG4vLyBib3R0b20gbWFyZ2luIHRvIHVzZSBgcmVtYCB1bml0cyBpbnN0ZWFkIG9mIGBlbWAuXG5wIHtcbiAgbWFyZ2luLXRvcDogMDtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbn1cblxuLy8gQWJicmV2aWF0aW9uc1xuYWJiclt0aXRsZV0sXG4vLyBBZGQgZGF0YS0qIGF0dHJpYnV0ZSB0byBoZWxwIG91dCBvdXIgdG9vbHRpcCBwbHVnaW4sIHBlciBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzUyNTdcbmFiYnJbZGF0YS1vcmlnaW5hbC10aXRsZV0ge1xuICBjdXJzb3I6IGhlbHA7XG59XG5cbmFkZHJlc3Mge1xuICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGxpbmUtaGVpZ2h0OiBpbmhlcml0O1xufVxuXG5vbCxcbnVsLFxuZGwge1xuICBtYXJnaW4tdG9wOiAwO1xuICBtYXJnaW4tYm90dG9tOiAxcmVtO1xufVxuXG5vbCBvbCxcbnVsIHVsLFxub2wgdWwsXG51bCBvbCB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG5cbmR0IHtcbiAgZm9udC13ZWlnaHQ6ICRkdC1mb250LXdlaWdodDtcbn1cblxuZGQge1xuICBtYXJnaW4tYm90dG9tOiAuNXJlbTtcbiAgbWFyZ2luLWxlZnQ6IDA7IC8vIFVuZG8gYnJvd3NlciBkZWZhdWx0XG59XG5cbmJsb2NrcXVvdGUge1xuICBtYXJnaW46IDAgMCAxcmVtO1xufVxuXG5cbi8vXG4vLyBMaW5rc1xuLy9cblxuYSB7XG4gIGNvbG9yOiAkbGluay1jb2xvcjtcbiAgdGV4dC1kZWNvcmF0aW9uOiAkbGluay1kZWNvcmF0aW9uO1xuXG4gIEBpbmNsdWRlIGhvdmVyLWZvY3VzIHtcbiAgICBjb2xvcjogJGxpbmstaG92ZXItY29sb3I7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiAkbGluay1ob3Zlci1kZWNvcmF0aW9uO1xuICB9XG59XG5cbi8vIEFuZCB1bmRvIHRoZXNlIHN0eWxlcyBmb3IgcGxhY2Vob2xkZXIgbGlua3MvbmFtZWQgYW5jaG9ycyAod2l0aG91dCBocmVmKVxuLy8gd2hpY2ggaGF2ZSBub3QgYmVlbiBtYWRlIGV4cGxpY2l0bHkga2V5Ym9hcmQtZm9jdXNhYmxlICh3aXRob3V0IHRhYmluZGV4KS5cbi8vIEl0IHdvdWxkIGJlIG1vcmUgc3RyYWlnaHRmb3J3YXJkIHRvIGp1c3QgdXNlIGFbaHJlZl0gaW4gcHJldmlvdXMgYmxvY2ssIGJ1dCB0aGF0XG4vLyBjYXVzZXMgc3BlY2lmaWNpdHkgaXNzdWVzIGluIG1hbnkgb3RoZXIgc3R5bGVzIHRoYXQgYXJlIHRvbyBjb21wbGV4IHRvIGZpeC5cbi8vIFNlZSBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzE5NDAyXG5cbmE6bm90KFtocmVmXSk6bm90KFt0YWJpbmRleF0pIHtcbiAgY29sb3I6IGluaGVyaXQ7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcblxuICBAaW5jbHVkZSBob3Zlci1mb2N1cyB7XG4gICAgY29sb3I6IGluaGVyaXQ7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICB9XG5cbiAgJjpmb2N1cyB7XG4gICAgb3V0bGluZTogMDtcbiAgfVxufVxuXG5cbi8vXG4vLyBDb2RlXG4vL1xuXG5wcmUge1xuICAvLyBSZW1vdmUgYnJvd3NlciBkZWZhdWx0IHRvcCBtYXJnaW5cbiAgbWFyZ2luLXRvcDogMDtcbiAgLy8gUmVzZXQgYnJvd3NlciBkZWZhdWx0IG9mIGAxZW1gIHRvIHVzZSBgcmVtYHNcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgLy8gTm9ybWFsaXplIHY0IHJlbW92ZWQgdGhpcyBwcm9wZXJ0eSwgY2F1c2luZyBgPHByZT5gIGNvbnRlbnQgdG8gYnJlYWsgb3V0IG9mIHdyYXBwaW5nIGNvZGUgc25pcHBldHNcbiAgb3ZlcmZsb3c6IGF1dG87XG59XG5cblxuLy9cbi8vIEZpZ3VyZXNcbi8vXG5cbmZpZ3VyZSB7XG4gIC8vIE5vcm1hbGl6ZSBhZGRzIGBtYXJnaW5gIHRvIGBmaWd1cmVgcyBhcyBicm93c2VycyBhcHBseSBpdCBpbmNvbnNpc3RlbnRseS5cbiAgLy8gV2UgcmVzZXQgdGhhdCB0byBjcmVhdGUgYSBiZXR0ZXIgZmxvdyBpbi1wYWdlLlxuICBtYXJnaW46IDAgMCAxcmVtO1xufVxuXG5cbi8vXG4vLyBJbWFnZXNcbi8vXG5cbmltZyB7XG4gIC8vIEJ5IGRlZmF1bHQsIGA8aW1nPmBzIGFyZSBgaW5saW5lLWJsb2NrYC4gVGhpcyBhc3N1bWVzIHRoYXQsIGFuZCB2ZXJ0aWNhbGx5XG4gIC8vIGNlbnRlcnMgdGhlbS4gVGhpcyB3b24ndCBhcHBseSBzaG91bGQgeW91IHJlc2V0IHRoZW0gdG8gYGJsb2NrYCBsZXZlbC5cbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgLy8gTm90ZTogYDxpbWc+YHMgYXJlIGRlbGliZXJhdGVseSBub3QgbWFkZSByZXNwb25zaXZlIGJ5IGRlZmF1bHQuXG4gIC8vIEZvciB0aGUgcmF0aW9uYWxlIGJlaGluZCB0aGlzLCBzZWUgdGhlIGNvbW1lbnRzIG9uIHRoZSBgLmltZy1mbHVpZGAgY2xhc3MuXG59XG5cblxuLy8gaU9TIFwiY2xpY2thYmxlIGVsZW1lbnRzXCIgZml4IGZvciByb2xlPVwiYnV0dG9uXCJcbi8vXG4vLyBGaXhlcyBcImNsaWNrYWJpbGl0eVwiIGlzc3VlIChhbmQgbW9yZSBnZW5lcmFsbHksIHRoZSBmaXJpbmcgb2YgZXZlbnRzIHN1Y2ggYXMgZm9jdXMgYXMgd2VsbClcbi8vIGZvciB0cmFkaXRpb25hbGx5IG5vbi1mb2N1c2FibGUgZWxlbWVudHMgd2l0aCByb2xlPVwiYnV0dG9uXCJcbi8vIHNlZSBodHRwczovL2RldmVsb3Blci5tb3ppbGxhLm9yZy9lbi1VUy9kb2NzL1dlYi9FdmVudHMvY2xpY2sjU2FmYXJpX01vYmlsZVxuXG5bcm9sZT1cImJ1dHRvblwiXSB7XG4gIGN1cnNvcjogcG9pbnRlcjtcbn1cblxuXG4vLyBBdm9pZCAzMDBtcyBjbGljayBkZWxheSBvbiB0b3VjaCBkZXZpY2VzIHRoYXQgc3VwcG9ydCB0aGUgYHRvdWNoLWFjdGlvbmAgQ1NTIHByb3BlcnR5LlxuLy9cbi8vIEluIHBhcnRpY3VsYXIsIHVubGlrZSBtb3N0IG90aGVyIGJyb3dzZXJzLCBJRTExK0VkZ2Ugb24gV2luZG93cyAxMCBvbiB0b3VjaCBkZXZpY2VzIGFuZCBJRSBNb2JpbGUgMTAtMTFcbi8vIERPTidUIHJlbW92ZSB0aGUgY2xpY2sgZGVsYXkgd2hlbiBgPG1ldGEgbmFtZT1cInZpZXdwb3J0XCIgY29udGVudD1cIndpZHRoPWRldmljZS13aWR0aFwiPmAgaXMgcHJlc2VudC5cbi8vIEhvd2V2ZXIsIHRoZXkgRE8gc3VwcG9ydCByZW1vdmluZyB0aGUgY2xpY2sgZGVsYXkgdmlhIGB0b3VjaC1hY3Rpb246IG1hbmlwdWxhdGlvbmAuXG4vLyBTZWU6XG4vLyAqIGh0dHBzOi8vdjQtYWxwaGEuZ2V0Ym9vdHN0cmFwLmNvbS9jb250ZW50L3JlYm9vdC8jY2xpY2stZGVsYXktb3B0aW1pemF0aW9uLWZvci10b3VjaFxuLy8gKiBodHRwOi8vY2FuaXVzZS5jb20vI2ZlYXQ9Y3NzLXRvdWNoLWFjdGlvblxuLy8gKiBodHRwczovL3BhdHJpY2tobGF1a2UuZ2l0aHViLmlvL3RvdWNoL3Rlc3RzL3Jlc3VsdHMvI3N1cHByZXNzaW5nLTMwMG1zLWRlbGF5XG5cbmEsXG5hcmVhLFxuYnV0dG9uLFxuW3JvbGU9XCJidXR0b25cIl0sXG5pbnB1dCxcbmxhYmVsLFxuc2VsZWN0LFxuc3VtbWFyeSxcbnRleHRhcmVhIHtcbiAgdG91Y2gtYWN0aW9uOiBtYW5pcHVsYXRpb247XG59XG5cblxuLy9cbi8vIFRhYmxlc1xuLy9cblxudGFibGUge1xuICAvLyBObyBsb25nZXIgcGFydCBvZiBOb3JtYWxpemUgc2luY2UgdjRcbiAgYm9yZGVyLWNvbGxhcHNlOiBjb2xsYXBzZTtcbiAgLy8gUmVzZXQgZm9yIG5lc3Rpbmcgd2l0aGluIHBhcmVudHMgd2l0aCBgYmFja2dyb3VuZC1jb2xvcmAuXG4gIGJhY2tncm91bmQtY29sb3I6ICR0YWJsZS1iZztcbn1cblxuY2FwdGlvbiB7XG4gIHBhZGRpbmctdG9wOiAkdGFibGUtY2VsbC1wYWRkaW5nO1xuICBwYWRkaW5nLWJvdHRvbTogJHRhYmxlLWNlbGwtcGFkZGluZztcbiAgY29sb3I6ICR0ZXh0LW11dGVkO1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xuICBjYXB0aW9uLXNpZGU6IGJvdHRvbTtcbn1cblxudGgge1xuICAvLyBDZW50ZXJlZCBieSBkZWZhdWx0LCBidXQgbGVmdC1hbGlnbi1lZCB0byBtYXRjaCB0aGUgYHRkYHMgYmVsb3cuXG4gIHRleHQtYWxpZ246IGxlZnQ7XG59XG5cblxuLy9cbi8vIEZvcm1zXG4vL1xuXG5sYWJlbCB7XG4gIC8vIEFsbG93IGxhYmVscyB0byB1c2UgYG1hcmdpbmAgZm9yIHNwYWNpbmcuXG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgbWFyZ2luLWJvdHRvbTogLjVyZW07XG59XG5cbi8vIFdvcmsgYXJvdW5kIGEgRmlyZWZveC9JRSBidWcgd2hlcmUgdGhlIHRyYW5zcGFyZW50IGBidXR0b25gIGJhY2tncm91bmRcbi8vIHJlc3VsdHMgaW4gYSBsb3NzIG9mIHRoZSBkZWZhdWx0IGBidXR0b25gIGZvY3VzIHN0eWxlcy5cbi8vXG4vLyBDcmVkaXQ6IGh0dHBzOi8vZ2l0aHViLmNvbS9zdWl0Y3NzL2Jhc2UvXG5idXR0b246Zm9jdXMge1xuICBvdXRsaW5lOiAxcHggZG90dGVkO1xuICBvdXRsaW5lOiA1cHggYXV0byAtd2Via2l0LWZvY3VzLXJpbmctY29sb3I7XG59XG5cbmlucHV0LFxuYnV0dG9uLFxuc2VsZWN0LFxudGV4dGFyZWEge1xuICAvLyBOb3JtYWxpemUgaW5jbHVkZXMgYGZvbnQ6IGluaGVyaXQ7YCwgc28gYGZvbnQtZmFtaWx5YC4gYGZvbnQtc2l6ZWAsIGV0YyBhcmVcbiAgLy8gcHJvcGVybHkgaW5oZXJpdGVkLiBIb3dldmVyLCBgbGluZS1oZWlnaHRgIGlzbid0IGluaGVyaXRlZCB0aGVyZS5cbiAgbGluZS1oZWlnaHQ6IGluaGVyaXQ7XG59XG5cbmlucHV0W3R5cGU9XCJyYWRpb1wiXSxcbmlucHV0W3R5cGU9XCJjaGVja2JveFwiXSB7XG4gIC8vIEFwcGx5IGEgZGlzYWJsZWQgY3Vyc29yIGZvciByYWRpb3MgYW5kIGNoZWNrYm94ZXMuXG4gIC8vXG4gIC8vIE5vdGU6IE5laXRoZXIgcmFkaW9zIG5vciBjaGVja2JveGVzIGNhbiBiZSByZWFkb25seS5cbiAgJjpkaXNhYmxlZCB7XG4gICAgY3Vyc29yOiAkY3Vyc29yLWRpc2FibGVkO1xuICB9XG59XG5cblxuaW5wdXRbdHlwZT1cImRhdGVcIl0sXG5pbnB1dFt0eXBlPVwidGltZVwiXSxcbmlucHV0W3R5cGU9XCJkYXRldGltZS1sb2NhbFwiXSxcbmlucHV0W3R5cGU9XCJtb250aFwiXSB7XG4gIC8vIFJlbW92ZSB0aGUgZGVmYXVsdCBhcHBlYXJhbmNlIG9mIHRlbXBvcmFsIGlucHV0cyB0byBhdm9pZCBhIE1vYmlsZSBTYWZhcmlcbiAgLy8gYnVnIHdoZXJlIHNldHRpbmcgYSBjdXN0b20gbGluZS1oZWlnaHQgcHJldmVudHMgdGV4dCBmcm9tIGJlaW5nIHZlcnRpY2FsbHlcbiAgLy8gY2VudGVyZWQgd2l0aGluIHRoZSBpbnB1dC5cbiAgLy8gU2VlIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xMzk4NDhcbiAgLy8gYW5kIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMTEyNjZcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBsaXN0Ym94O1xufVxuXG50ZXh0YXJlYSB7XG4gIC8vIFRleHRhcmVhcyBzaG91bGQgcmVhbGx5IG9ubHkgcmVzaXplIHZlcnRpY2FsbHkgc28gdGhleSBkb24ndCBicmVhayB0aGVpciAoaG9yaXpvbnRhbCkgY29udGFpbmVycy5cbiAgcmVzaXplOiB2ZXJ0aWNhbDtcbn1cblxuZmllbGRzZXQge1xuICAvLyBCcm93c2VycyBzZXQgYSBkZWZhdWx0IGBtaW4td2lkdGg6IG1pbi1jb250ZW50O2Agb24gZmllbGRzZXRzLFxuICAvLyB1bmxpa2UgZS5nLiBgPGRpdj5gcywgd2hpY2ggaGF2ZSBgbWluLXdpZHRoOiAwO2AgYnkgZGVmYXVsdC5cbiAgLy8gU28gd2UgcmVzZXQgdGhhdCB0byBlbnN1cmUgZmllbGRzZXRzIGJlaGF2ZSBtb3JlIGxpa2UgYSBzdGFuZGFyZCBibG9jayBlbGVtZW50LlxuICAvLyBTZWUgaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2lzc3Vlcy8xMjM1OVxuICAvLyBhbmQgaHR0cHM6Ly9odG1sLnNwZWMud2hhdHdnLm9yZy9tdWx0aXBhZ2UvI3RoZS1maWVsZHNldC1hbmQtbGVnZW5kLWVsZW1lbnRzXG4gIG1pbi13aWR0aDogMDtcbiAgLy8gUmVzZXQgdGhlIGRlZmF1bHQgb3V0bGluZSBiZWhhdmlvciBvZiBmaWVsZHNldHMgc28gdGhleSBkb24ndCBhZmZlY3QgcGFnZSBsYXlvdXQuXG4gIHBhZGRpbmc6IDA7XG4gIG1hcmdpbjogMDtcbiAgYm9yZGVyOiAwO1xufVxuXG5sZWdlbmQge1xuICAvLyBSZXNldCB0aGUgZW50aXJlIGxlZ2VuZCBlbGVtZW50IHRvIG1hdGNoIHRoZSBgZmllbGRzZXRgXG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMTAwJTtcbiAgcGFkZGluZzogMDtcbiAgbWFyZ2luLWJvdHRvbTogLjVyZW07XG4gIGZvbnQtc2l6ZTogMS41cmVtO1xuICBsaW5lLWhlaWdodDogaW5oZXJpdDtcbn1cblxuaW5wdXRbdHlwZT1cInNlYXJjaFwiXSB7XG4gIC8vIFRoaXMgb3ZlcnJpZGVzIHRoZSBleHRyYSByb3VuZGVkIGNvcm5lcnMgb24gc2VhcmNoIGlucHV0cyBpbiBpT1Mgc28gdGhhdCBvdXJcbiAgLy8gYC5mb3JtLWNvbnRyb2xgIGNsYXNzIGNhbiBwcm9wZXJseSBzdHlsZSB0aGVtLiBOb3RlIHRoYXQgdGhpcyBjYW5ub3Qgc2ltcGx5XG4gIC8vIGJlIGFkZGVkIHRvIGAuZm9ybS1jb250cm9sYCBhcyBpdCdzIG5vdCBzcGVjaWZpYyBlbm91Z2guIEZvciBkZXRhaWxzLCBzZWVcbiAgLy8gaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2lzc3Vlcy8xMTU4Ni5cbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xufVxuXG4vLyB0b2RvOiBuZWVkZWQ/XG5vdXRwdXQge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4vLyAgZm9udC1zaXplOiAkZm9udC1zaXplLWJhc2U7XG4vLyAgbGluZS1oZWlnaHQ6ICRsaW5lLWhlaWdodDtcbi8vICBjb2xvcjogJGlucHV0LWNvbG9yO1xufVxuXG4vLyBBbHdheXMgaGlkZSBhbiBlbGVtZW50IHdpdGggdGhlIGBoaWRkZW5gIEhUTUwgYXR0cmlidXRlIChmcm9tIFB1cmVDU1MpLlxuW2hpZGRlbl0ge1xuICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG59XG4iLCIvL1xuLy8gSGVhZGluZ3Ncbi8vXG5cbmgxLCBoMiwgaDMsIGg0LCBoNSwgaDYsXG4uaDEsIC5oMiwgLmgzLCAuaDQsIC5oNSwgLmg2IHtcbiAgbWFyZ2luLWJvdHRvbTogJGhlYWRpbmdzLW1hcmdpbi1ib3R0b207XG4gIGZvbnQtZmFtaWx5OiAkaGVhZGluZ3MtZm9udC1mYW1pbHk7XG4gIGZvbnQtd2VpZ2h0OiAkaGVhZGluZ3MtZm9udC13ZWlnaHQ7XG4gIGxpbmUtaGVpZ2h0OiAkaGVhZGluZ3MtbGluZS1oZWlnaHQ7XG4gIGNvbG9yOiAkaGVhZGluZ3MtY29sb3I7XG59XG5cbmgxLCAuaDEgeyBmb250LXNpemU6ICRmb250LXNpemUtaDE7IH1cbmgyLCAuaDIgeyBmb250LXNpemU6ICRmb250LXNpemUtaDI7IH1cbmgzLCAuaDMgeyBmb250LXNpemU6ICRmb250LXNpemUtaDM7IH1cbmg0LCAuaDQgeyBmb250LXNpemU6ICRmb250LXNpemUtaDQ7IH1cbmg1LCAuaDUgeyBmb250LXNpemU6ICRmb250LXNpemUtaDU7IH1cbmg2LCAuaDYgeyBmb250LXNpemU6ICRmb250LXNpemUtaDY7IH1cblxuLmxlYWQge1xuICBmb250LXNpemU6ICRsZWFkLWZvbnQtc2l6ZTtcbiAgZm9udC13ZWlnaHQ6ICRsZWFkLWZvbnQtd2VpZ2h0O1xufVxuXG4vLyBUeXBlIGRpc3BsYXkgY2xhc3Nlc1xuLmRpc3BsYXktMSB7XG4gIGZvbnQtc2l6ZTogJGRpc3BsYXkxLXNpemU7XG4gIGZvbnQtd2VpZ2h0OiAkZGlzcGxheTEtd2VpZ2h0O1xuICBsaW5lLWhlaWdodDogJGRpc3BsYXktbGluZS1oZWlnaHQ7XG59XG4uZGlzcGxheS0yIHtcbiAgZm9udC1zaXplOiAkZGlzcGxheTItc2l6ZTtcbiAgZm9udC13ZWlnaHQ6ICRkaXNwbGF5Mi13ZWlnaHQ7XG4gIGxpbmUtaGVpZ2h0OiAkZGlzcGxheS1saW5lLWhlaWdodDtcbn1cbi5kaXNwbGF5LTMge1xuICBmb250LXNpemU6ICRkaXNwbGF5My1zaXplO1xuICBmb250LXdlaWdodDogJGRpc3BsYXkzLXdlaWdodDtcbiAgbGluZS1oZWlnaHQ6ICRkaXNwbGF5LWxpbmUtaGVpZ2h0O1xufVxuLmRpc3BsYXktNCB7XG4gIGZvbnQtc2l6ZTogJGRpc3BsYXk0LXNpemU7XG4gIGZvbnQtd2VpZ2h0OiAkZGlzcGxheTQtd2VpZ2h0O1xuICBsaW5lLWhlaWdodDogJGRpc3BsYXktbGluZS1oZWlnaHQ7XG59XG5cblxuLy9cbi8vIEhvcml6b250YWwgcnVsZXNcbi8vXG5cbmhyIHtcbiAgbWFyZ2luLXRvcDogJHNwYWNlci15O1xuICBtYXJnaW4tYm90dG9tOiAkc3BhY2VyLXk7XG4gIGJvcmRlcjogMDtcbiAgYm9yZGVyLXRvcDogJGhyLWJvcmRlci13aWR0aCBzb2xpZCAkaHItYm9yZGVyLWNvbG9yO1xufVxuXG5cbi8vXG4vLyBFbXBoYXNpc1xuLy9cblxuc21hbGwsXG4uc21hbGwge1xuICBmb250LXNpemU6ICRzbWFsbC1mb250LXNpemU7XG4gIGZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtbm9ybWFsO1xufVxuXG5tYXJrLFxuLm1hcmsge1xuICBwYWRkaW5nOiAkbWFyay1wYWRkaW5nO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkbWFyay1iZztcbn1cblxuXG4vL1xuLy8gTGlzdHNcbi8vXG5cbi5saXN0LXVuc3R5bGVkIHtcbiAgQGluY2x1ZGUgbGlzdC11bnN0eWxlZDtcbn1cblxuLy8gSW5saW5lIHR1cm5zIGxpc3QgaXRlbXMgaW50byBpbmxpbmUtYmxvY2tcbi5saXN0LWlubGluZSB7XG4gIEBpbmNsdWRlIGxpc3QtdW5zdHlsZWQ7XG59XG4ubGlzdC1pbmxpbmUtaXRlbSB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcblxuICAmOm5vdCg6bGFzdC1jaGlsZCkge1xuICAgIG1hcmdpbi1yaWdodDogJGxpc3QtaW5saW5lLXBhZGRpbmc7XG4gIH1cbn1cblxuXG4vL1xuLy8gTWlzY1xuLy9cblxuLy8gQnVpbGRzIG9uIGBhYmJyYFxuLmluaXRpYWxpc20ge1xuICBmb250LXNpemU6IDkwJTtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbn1cblxuLy8gQmxvY2txdW90ZXNcbi5ibG9ja3F1b3RlIHtcbiAgcGFkZGluZzogKCRzcGFjZXIgLyAyKSAkc3BhY2VyO1xuICBtYXJnaW4tYm90dG9tOiAkc3BhY2VyO1xuICBmb250LXNpemU6ICRibG9ja3F1b3RlLWZvbnQtc2l6ZTtcbiAgYm9yZGVyLWxlZnQ6ICRibG9ja3F1b3RlLWJvcmRlci13aWR0aCBzb2xpZCAkYmxvY2txdW90ZS1ib3JkZXItY29sb3I7XG59XG5cbi5ibG9ja3F1b3RlLWZvb3RlciB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBmb250LXNpemU6IDgwJTsgLy8gYmFjayB0byBkZWZhdWx0IGZvbnQtc2l6ZVxuICBjb2xvcjogJGJsb2NrcXVvdGUtc21hbGwtY29sb3I7XG5cbiAgJjo6YmVmb3JlIHtcbiAgICBjb250ZW50OiBcIlxcMjAxNCBcXDAwQTBcIjsgLy8gZW0gZGFzaCwgbmJzcFxuICB9XG59XG5cbi8vIE9wcG9zaXRlIGFsaWdubWVudCBvZiBibG9ja3F1b3RlXG4uYmxvY2txdW90ZS1yZXZlcnNlIHtcbiAgcGFkZGluZy1yaWdodDogJHNwYWNlcjtcbiAgcGFkZGluZy1sZWZ0OiAwO1xuICB0ZXh0LWFsaWduOiByaWdodDtcbiAgYm9yZGVyLXJpZ2h0OiAkYmxvY2txdW90ZS1ib3JkZXItd2lkdGggc29saWQgJGJsb2NrcXVvdGUtYm9yZGVyLWNvbG9yO1xuICBib3JkZXItbGVmdDogMDtcbn1cblxuLmJsb2NrcXVvdGUtcmV2ZXJzZSAuYmxvY2txdW90ZS1mb290ZXIge1xuICAmOjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gIH1cbiAgJjo6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6IFwiXFwwMEEwIFxcMjAxNFwiOyAvLyBuYnNwLCBlbSBkYXNoXG4gIH1cbn1cbiIsIi8vIFJlc3BvbnNpdmUgaW1hZ2VzIChlbnN1cmUgaW1hZ2VzIGRvbid0IHNjYWxlIGJleW9uZCB0aGVpciBwYXJlbnRzKVxuLy9cbi8vIFRoaXMgaXMgcHVycG9zZWZ1bGx5IG9wdC1pbiB2aWEgYW4gZXhwbGljaXQgY2xhc3MgcmF0aGVyIHRoYW4gYmVpbmcgdGhlIGRlZmF1bHQgZm9yIGFsbCBgPGltZz5gcy5cbi8vIFdlIHByZXZpb3VzbHkgdHJpZWQgdGhlIFwiaW1hZ2VzIGFyZSByZXNwb25zaXZlIGJ5IGRlZmF1bHRcIiBhcHByb2FjaCBpbiBCb290c3RyYXAgdjIsXG4vLyBhbmQgYWJhbmRvbmVkIGl0IGluIEJvb3RzdHJhcCB2MyBiZWNhdXNlIGl0IGJyZWFrcyBsb3RzIG9mIHRoaXJkLXBhcnR5IHdpZGdldHMgKGluY2x1ZGluZyBHb29nbGUgTWFwcylcbi8vIHdoaWNoIHdlcmVuJ3QgZXhwZWN0aW5nIHRoZSBpbWFnZXMgd2l0aGluIHRoZW1zZWx2ZXMgdG8gYmUgaW52b2x1bnRhcmlseSByZXNpemVkLlxuLy8gU2VlIGFsc28gaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2lzc3Vlcy8xODE3OFxuLmltZy1mbHVpZCB7XG4gIEBpbmNsdWRlIGltZy1mbHVpZDtcbn1cblxuXG4vLyBJbWFnZSB0aHVtYm5haWxzXG4uaW1nLXRodW1ibmFpbCB7XG4gIHBhZGRpbmc6ICR0aHVtYm5haWwtcGFkZGluZztcbiAgYmFja2dyb3VuZC1jb2xvcjogJHRodW1ibmFpbC1iZztcbiAgYm9yZGVyOiAkdGh1bWJuYWlsLWJvcmRlci13aWR0aCBzb2xpZCAkdGh1bWJuYWlsLWJvcmRlci1jb2xvcjtcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkdGh1bWJuYWlsLWJvcmRlci1yYWRpdXMpO1xuICBAaW5jbHVkZSB0cmFuc2l0aW9uKCR0aHVtYm5haWwtdHJhbnNpdGlvbik7XG4gIEBpbmNsdWRlIGJveC1zaGFkb3coJHRodW1ibmFpbC1ib3gtc2hhZG93KTtcblxuICAvLyBLZWVwIHRoZW0gYXQgbW9zdCAxMDAlIHdpZGVcbiAgQGluY2x1ZGUgaW1nLWZsdWlkO1xufVxuXG4vL1xuLy8gRmlndXJlc1xuLy9cblxuLmZpZ3VyZSB7XG4gIC8vIEVuc3VyZXMgdGhlIGNhcHRpb24ncyB0ZXh0IGFsaWducyB3aXRoIHRoZSBpbWFnZS5cbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xufVxuXG4uZmlndXJlLWltZyB7XG4gIG1hcmdpbi1ib3R0b206ICgkc3BhY2VyLXkgLyAyKTtcbiAgbGluZS1oZWlnaHQ6IDE7XG59XG5cbi5maWd1cmUtY2FwdGlvbiB7XG4gIGZvbnQtc2l6ZTogJGZpZ3VyZS1jYXB0aW9uLWZvbnQtc2l6ZTtcbiAgY29sb3I6ICRmaWd1cmUtY2FwdGlvbi1jb2xvcjtcbn1cbiIsIi8vIElubGluZSBhbmQgYmxvY2sgY29kZSBzdHlsZXNcbmNvZGUsXG5rYmQsXG5wcmUsXG5zYW1wIHtcbiAgZm9udC1mYW1pbHk6ICRmb250LWZhbWlseS1tb25vc3BhY2U7XG59XG5cbi8vIElubGluZSBjb2RlXG5jb2RlIHtcbiAgcGFkZGluZzogJGNvZGUtcGFkZGluZy15ICRjb2RlLXBhZGRpbmcteDtcbiAgZm9udC1zaXplOiAkY29kZS1mb250LXNpemU7XG4gIGNvbG9yOiAkY29kZS1jb2xvcjtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGNvZGUtYmc7XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGJvcmRlci1yYWRpdXMpO1xuXG4gIC8vIFN0cmVhbWxpbmUgdGhlIHN0eWxlIHdoZW4gaW5zaWRlIGFuY2hvcnMgdG8gYXZvaWQgYnJva2VuIHVuZGVybGluZSBhbmQgbW9yZVxuICBhID4gJiB7XG4gICAgcGFkZGluZzogMDtcbiAgICBjb2xvcjogaW5oZXJpdDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiBpbmhlcml0O1xuICB9XG59XG5cbi8vIFVzZXIgaW5wdXQgdHlwaWNhbGx5IGVudGVyZWQgdmlhIGtleWJvYXJkXG5rYmQge1xuICBwYWRkaW5nOiAkY29kZS1wYWRkaW5nLXkgJGNvZGUtcGFkZGluZy14O1xuICBmb250LXNpemU6ICRjb2RlLWZvbnQtc2l6ZTtcbiAgY29sb3I6ICRrYmQtY29sb3I7XG4gIGJhY2tncm91bmQtY29sb3I6ICRrYmQtYmc7XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGJvcmRlci1yYWRpdXMtc20pO1xuICBAaW5jbHVkZSBib3gtc2hhZG93KCRrYmQtYm94LXNoYWRvdyk7XG5cbiAga2JkIHtcbiAgICBwYWRkaW5nOiAwO1xuICAgIGZvbnQtc2l6ZTogMTAwJTtcbiAgICBmb250LXdlaWdodDogJG5lc3RlZC1rYmQtZm9udC13ZWlnaHQ7XG4gICAgQGluY2x1ZGUgYm94LXNoYWRvdyhub25lKTtcbiAgfVxufVxuXG4vLyBCbG9ja3Mgb2YgY29kZVxucHJlIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbi10b3A6IDA7XG4gIG1hcmdpbi1ib3R0b206IDFyZW07XG4gIGZvbnQtc2l6ZTogJGNvZGUtZm9udC1zaXplO1xuICBjb2xvcjogJHByZS1jb2xvcjtcblxuICAvLyBBY2NvdW50IGZvciBzb21lIGNvZGUgb3V0cHV0cyB0aGF0IHBsYWNlIGNvZGUgdGFncyBpbiBwcmUgdGFnc1xuICBjb2RlIHtcbiAgICBwYWRkaW5nOiAwO1xuICAgIGZvbnQtc2l6ZTogaW5oZXJpdDtcbiAgICBjb2xvcjogaW5oZXJpdDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICBib3JkZXItcmFkaXVzOiAwO1xuICB9XG59XG5cbi8vIEVuYWJsZSBzY3JvbGxhYmxlIGJsb2NrcyBvZiBjb2RlXG4ucHJlLXNjcm9sbGFibGUge1xuICBtYXgtaGVpZ2h0OiAkcHJlLXNjcm9sbGFibGUtbWF4LWhlaWdodDtcbiAgb3ZlcmZsb3cteTogc2Nyb2xsO1xufVxuIiwiLy8gQ29udGFpbmVyIHdpZHRoc1xuLy9cbi8vIFNldCB0aGUgY29udGFpbmVyIHdpZHRoLCBhbmQgb3ZlcnJpZGUgaXQgZm9yIGZpeGVkIG5hdmJhcnMgaW4gbWVkaWEgcXVlcmllcy5cblxuQGlmICRlbmFibGUtZ3JpZC1jbGFzc2VzIHtcbiAgLmNvbnRhaW5lciB7XG4gICAgQGluY2x1ZGUgbWFrZS1jb250YWluZXIoKTtcbiAgICBAaW5jbHVkZSBtYWtlLWNvbnRhaW5lci1tYXgtd2lkdGhzKCk7XG4gIH1cbn1cblxuLy8gRmx1aWQgY29udGFpbmVyXG4vL1xuLy8gVXRpbGl6ZXMgdGhlIG1peGluIG1lYW50IGZvciBmaXhlZCB3aWR0aCBjb250YWluZXJzLCBidXQgd2l0aG91dCBhbnkgZGVmaW5lZFxuLy8gd2lkdGggZm9yIGZsdWlkLCBmdWxsIHdpZHRoIGxheW91dHMuXG5cbkBpZiAkZW5hYmxlLWdyaWQtY2xhc3NlcyB7XG4gIC5jb250YWluZXItZmx1aWQge1xuICAgIEBpbmNsdWRlIG1ha2UtY29udGFpbmVyKCk7XG4gIH1cbn1cblxuLy8gUm93XG4vL1xuLy8gUm93cyBjb250YWluIGFuZCBjbGVhciB0aGUgZmxvYXRzIG9mIHlvdXIgY29sdW1ucy5cblxuQGlmICRlbmFibGUtZ3JpZC1jbGFzc2VzIHtcbiAgLnJvdyB7XG4gICAgQGluY2x1ZGUgbWFrZS1yb3coKTtcbiAgfVxuXG4gIC8vIFJlbW92ZSB0aGUgbmVnYXRpdmUgbWFyZ2luIGZyb20gZGVmYXVsdCAucm93LCB0aGVuIHRoZSBob3Jpem9udGFsIHBhZGRpbmdcbiAgLy8gZnJvbSBhbGwgaW1tZWRpYXRlIGNoaWxkcmVuIGNvbHVtbnMgKHRvIHByZXZlbnQgcnVuYXdheSBzdHlsZSBpbmhlcml0YW5jZSkuXG4gIC5uby1ndXR0ZXJzIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgbWFyZ2luLWxlZnQ6IDA7XG5cbiAgICA+IC5jb2wsXG4gICAgPiBbY2xhc3MqPVwiY29sLVwiXSB7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgIH1cbiAgfVxufVxuXG4vLyBDb2x1bW5zXG4vL1xuLy8gQ29tbW9uIHN0eWxlcyBmb3Igc21hbGwgYW5kIGxhcmdlIGdyaWQgY29sdW1uc1xuXG5AaWYgJGVuYWJsZS1ncmlkLWNsYXNzZXMge1xuICBAaW5jbHVkZSBtYWtlLWdyaWQtY29sdW1ucygpO1xufVxuIiwiLy9cbi8vIEJhc2ljIEJvb3RzdHJhcCB0YWJsZVxuLy9cblxuLnRhYmxlIHtcbiAgd2lkdGg6IDEwMCU7XG4gIG1heC13aWR0aDogMTAwJTtcbiAgbWFyZ2luLWJvdHRvbTogJHNwYWNlcjtcblxuICB0aCxcbiAgdGQge1xuICAgIHBhZGRpbmc6ICR0YWJsZS1jZWxsLXBhZGRpbmc7XG4gICAgdmVydGljYWwtYWxpZ246IHRvcDtcbiAgICBib3JkZXItdG9wOiAkdGFibGUtYm9yZGVyLXdpZHRoIHNvbGlkICR0YWJsZS1ib3JkZXItY29sb3I7XG4gIH1cblxuICB0aGVhZCB0aCB7XG4gICAgdmVydGljYWwtYWxpZ246IGJvdHRvbTtcbiAgICBib3JkZXItYm90dG9tOiAoMiAqICR0YWJsZS1ib3JkZXItd2lkdGgpIHNvbGlkICR0YWJsZS1ib3JkZXItY29sb3I7XG4gIH1cblxuICB0Ym9keSArIHRib2R5IHtcbiAgICBib3JkZXItdG9wOiAoMiAqICR0YWJsZS1ib3JkZXItd2lkdGgpIHNvbGlkICR0YWJsZS1ib3JkZXItY29sb3I7XG4gIH1cblxuICAudGFibGUge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRib2R5LWJnO1xuICB9XG59XG5cblxuLy9cbi8vIENvbmRlbnNlZCB0YWJsZSB3LyBoYWxmIHBhZGRpbmdcbi8vXG5cbi50YWJsZS1zbSB7XG4gIHRoLFxuICB0ZCB7XG4gICAgcGFkZGluZzogJHRhYmxlLXNtLWNlbGwtcGFkZGluZztcbiAgfVxufVxuXG5cbi8vIEJvcmRlcmVkIHZlcnNpb25cbi8vXG4vLyBBZGQgYm9yZGVycyBhbGwgYXJvdW5kIHRoZSB0YWJsZSBhbmQgYmV0d2VlbiBhbGwgdGhlIGNvbHVtbnMuXG5cbi50YWJsZS1ib3JkZXJlZCB7XG4gIGJvcmRlcjogJHRhYmxlLWJvcmRlci13aWR0aCBzb2xpZCAkdGFibGUtYm9yZGVyLWNvbG9yO1xuXG4gIHRoLFxuICB0ZCB7XG4gICAgYm9yZGVyOiAkdGFibGUtYm9yZGVyLXdpZHRoIHNvbGlkICR0YWJsZS1ib3JkZXItY29sb3I7XG4gIH1cblxuICB0aGVhZCB7XG4gICAgdGgsXG4gICAgdGQge1xuICAgICAgYm9yZGVyLWJvdHRvbS13aWR0aDogKDIgKiAkdGFibGUtYm9yZGVyLXdpZHRoKTtcbiAgICB9XG4gIH1cbn1cblxuXG4vLyBaZWJyYS1zdHJpcGluZ1xuLy9cbi8vIERlZmF1bHQgemVicmEtc3RyaXBlIHN0eWxlcyAoYWx0ZXJuYXRpbmcgZ3JheSBhbmQgdHJhbnNwYXJlbnQgYmFja2dyb3VuZHMpXG5cbi50YWJsZS1zdHJpcGVkIHtcbiAgdGJvZHkgdHI6bnRoLW9mLXR5cGUob2RkKSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHRhYmxlLWJnLWFjY2VudDtcbiAgfVxufVxuXG5cbi8vIEhvdmVyIGVmZmVjdFxuLy9cbi8vIFBsYWNlZCBoZXJlIHNpbmNlIGl0IGhhcyB0byBjb21lIGFmdGVyIHRoZSBwb3RlbnRpYWwgemVicmEgc3RyaXBpbmdcblxuLnRhYmxlLWhvdmVyIHtcbiAgdGJvZHkgdHIge1xuICAgIEBpbmNsdWRlIGhvdmVyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICR0YWJsZS1iZy1ob3ZlcjtcbiAgICB9XG4gIH1cbn1cblxuXG4vLyBUYWJsZSBiYWNrZ3JvdW5kc1xuLy9cbi8vIEV4YWN0IHNlbGVjdG9ycyBiZWxvdyByZXF1aXJlZCB0byBvdmVycmlkZSBgLnRhYmxlLXN0cmlwZWRgIGFuZCBwcmV2ZW50XG4vLyBpbmhlcml0YW5jZSB0byBuZXN0ZWQgdGFibGVzLlxuXG4vLyBHZW5lcmF0ZSB0aGUgY29udGV4dHVhbCB2YXJpYW50c1xuQGluY2x1ZGUgdGFibGUtcm93LXZhcmlhbnQoYWN0aXZlLCAkdGFibGUtYmctYWN0aXZlKTtcbkBpbmNsdWRlIHRhYmxlLXJvdy12YXJpYW50KHN1Y2Nlc3MsICRzdGF0ZS1zdWNjZXNzLWJnKTtcbkBpbmNsdWRlIHRhYmxlLXJvdy12YXJpYW50KGluZm8sICRzdGF0ZS1pbmZvLWJnKTtcbkBpbmNsdWRlIHRhYmxlLXJvdy12YXJpYW50KHdhcm5pbmcsICRzdGF0ZS13YXJuaW5nLWJnKTtcbkBpbmNsdWRlIHRhYmxlLXJvdy12YXJpYW50KGRhbmdlciwgJHN0YXRlLWRhbmdlci1iZyk7XG5cblxuLy8gSW52ZXJzZSBzdHlsZXNcbi8vXG4vLyBTYW1lIHRhYmxlIG1hcmt1cCwgYnV0IGludmVydGVkIGNvbG9yIHNjaGVtZTogZGFyayBiYWNrZ3JvdW5kIGFuZCBsaWdodCB0ZXh0LlxuXG4udGhlYWQtaW52ZXJzZSB7XG4gIHRoIHtcbiAgICBjb2xvcjogJHRhYmxlLWludmVyc2UtY29sb3I7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHRhYmxlLWludmVyc2UtYmc7XG4gIH1cbn1cblxuLnRoZWFkLWRlZmF1bHQge1xuICB0aCB7XG4gICAgY29sb3I6ICR0YWJsZS1oZWFkLWNvbG9yO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICR0YWJsZS1oZWFkLWJnO1xuICB9XG59XG5cbi50YWJsZS1pbnZlcnNlIHtcbiAgY29sb3I6ICR0YWJsZS1pbnZlcnNlLWNvbG9yO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGFibGUtaW52ZXJzZS1iZztcblxuICB0aCxcbiAgdGQsXG4gIHRoZWFkIHRoIHtcbiAgICBib3JkZXItY29sb3I6ICRib2R5LWJnO1xuICB9XG5cbiAgJi50YWJsZS1ib3JkZXJlZCB7XG4gICAgYm9yZGVyOiAwO1xuICB9XG59XG5cblxuXG4vLyBSZXNwb25zaXZlIHRhYmxlc1xuLy9cbi8vIEFkZCBgLnRhYmxlLXJlc3BvbnNpdmVgIHRvIGAudGFibGVgcyBhbmQgd2UnbGwgbWFrZSB0aGVtIG1vYmlsZSBmcmllbmRseSBieVxuLy8gZW5hYmxpbmcgaG9yaXpvbnRhbCBzY3JvbGxpbmcuIE9ubHkgYXBwbGllcyA8NzY4cHguIEV2ZXJ5dGhpbmcgYWJvdmUgdGhhdFxuLy8gd2lsbCBkaXNwbGF5IG5vcm1hbGx5LlxuXG4udGFibGUtcmVzcG9uc2l2ZSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMTAwJTtcbiAgb3ZlcmZsb3cteDogYXV0bztcbiAgLW1zLW92ZXJmbG93LXN0eWxlOiAtbXMtYXV0b2hpZGluZy1zY3JvbGxiYXI7IC8vIFNlZSBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvcHVsbC8xMDA1N1xuXG4gIC8vIFByZXZlbnQgZG91YmxlIGJvcmRlciBvbiBob3Jpem9udGFsIHNjcm9sbCBkdWUgdG8gdXNlIG9mIGBkaXNwbGF5OiBibG9jaztgXG4gICYudGFibGUtYm9yZGVyZWQge1xuICAgIGJvcmRlcjogMDtcbiAgfVxufVxuIiwiLy8gc2Nzcy1saW50OmRpc2FibGUgUXVhbGlmeWluZ0VsZW1lbnRcblxuLy9cbi8vIFRleHR1YWwgZm9ybSBjb250cm9sc1xuLy9cblxuLmZvcm0tY29udHJvbCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMTAwJTtcbiAgLy8gLy8gTWFrZSBpbnB1dHMgYXQgbGVhc3QgdGhlIGhlaWdodCBvZiB0aGVpciBidXR0b24gY291bnRlcnBhcnQgKGJhc2UgbGluZS1oZWlnaHQgKyBwYWRkaW5nICsgYm9yZGVyKVxuICAvLyBoZWlnaHQ6ICRpbnB1dC1oZWlnaHQ7XG4gIHBhZGRpbmc6ICRpbnB1dC1wYWRkaW5nLXkgJGlucHV0LXBhZGRpbmcteDtcbiAgZm9udC1zaXplOiAkZm9udC1zaXplLWJhc2U7XG4gIGxpbmUtaGVpZ2h0OiAkaW5wdXQtbGluZS1oZWlnaHQ7XG4gIGNvbG9yOiAkaW5wdXQtY29sb3I7XG4gIGJhY2tncm91bmQtY29sb3I6ICRpbnB1dC1iZztcbiAgLy8gUmVzZXQgdW51c3VhbCBGaXJlZm94LW9uLUFuZHJvaWQgZGVmYXVsdCBzdHlsZTsgc2VlIGh0dHBzOi8vZ2l0aHViLmNvbS9uZWNvbGFzL25vcm1hbGl6ZS5jc3MvaXNzdWVzLzIxNC5cbiAgYmFja2dyb3VuZC1pbWFnZTogbm9uZTtcbiAgYmFja2dyb3VuZC1jbGlwOiBwYWRkaW5nLWJveDtcbiAgYm9yZGVyOiAkaW5wdXQtYnRuLWJvcmRlci13aWR0aCBzb2xpZCAkaW5wdXQtYm9yZGVyLWNvbG9yO1xuXG4gIC8vIE5vdGU6IFRoaXMgaGFzIG5vIGVmZmVjdCBvbiA8c2VsZWN0PnMgaW4gc29tZSBicm93c2VycywgZHVlIHRvIHRoZSBsaW1pdGVkIHN0eWxhYmlsaXR5IG9mIGA8c2VsZWN0PmBzIGluIENTUy5cbiAgQGlmICRlbmFibGUtcm91bmRlZCB7XG4gICAgLy8gTWFudWFsbHkgdXNlIHRoZSBpZi9lbHNlIGluc3RlYWQgb2YgdGhlIG1peGluIHRvIGFjY291bnQgZm9yIGlPUyBvdmVycmlkZVxuICAgIGJvcmRlci1yYWRpdXM6ICRpbnB1dC1ib3JkZXItcmFkaXVzO1xuICB9IEBlbHNlIHtcbiAgICAvLyBPdGhlcndpc2UgdW5kbyB0aGUgaU9TIGRlZmF1bHRcbiAgICBib3JkZXItcmFkaXVzOiAwO1xuICB9XG5cbiAgQGluY2x1ZGUgYm94LXNoYWRvdygkaW5wdXQtYm94LXNoYWRvdyk7XG4gIEBpbmNsdWRlIHRyYW5zaXRpb24oJGlucHV0LXRyYW5zaXRpb24pO1xuXG4gIC8vIFVuc3R5bGUgdGhlIGNhcmV0IG9uIGA8c2VsZWN0PmBzIGluIElFMTArLlxuICAmOjotbXMtZXhwYW5kIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICBib3JkZXI6IDA7XG4gIH1cblxuICAvLyBDdXN0b21pemUgdGhlIGA6Zm9jdXNgIHN0YXRlIHRvIGltaXRhdGUgbmF0aXZlIFdlYktpdCBzdHlsZXMuXG4gIEBpbmNsdWRlIGZvcm0tY29udHJvbC1mb2N1cygpO1xuXG4gIC8vIFBsYWNlaG9sZGVyXG4gICY6OnBsYWNlaG9sZGVyIHtcbiAgICBjb2xvcjogJGlucHV0LWNvbG9yLXBsYWNlaG9sZGVyO1xuICAgIC8vIE92ZXJyaWRlIEZpcmVmb3gncyB1bnVzdWFsIGRlZmF1bHQgb3BhY2l0eTsgc2VlIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9wdWxsLzExNTI2LlxuICAgIG9wYWNpdHk6IDE7XG4gIH1cblxuICAvLyBEaXNhYmxlZCBhbmQgcmVhZC1vbmx5IGlucHV0c1xuICAvL1xuICAvLyBIVE1MNSBzYXlzIHRoYXQgY29udHJvbHMgdW5kZXIgYSBmaWVsZHNldCA+IGxlZ2VuZDpmaXJzdC1jaGlsZCB3b24ndCBiZVxuICAvLyBkaXNhYmxlZCBpZiB0aGUgZmllbGRzZXQgaXMgZGlzYWJsZWQuIER1ZSB0byBpbXBsZW1lbnRhdGlvbiBkaWZmaWN1bHR5LCB3ZVxuICAvLyBkb24ndCBob25vciB0aGF0IGVkZ2UgY2FzZTsgd2Ugc3R5bGUgdGhlbSBhcyBkaXNhYmxlZCBhbnl3YXkuXG4gICY6ZGlzYWJsZWQsXG4gICZbcmVhZG9ubHldIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkaW5wdXQtYmctZGlzYWJsZWQ7XG4gICAgLy8gaU9TIGZpeCBmb3IgdW5yZWFkYWJsZSBkaXNhYmxlZCBjb250ZW50OyBzZWUgaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2lzc3Vlcy8xMTY1NS5cbiAgICBvcGFjaXR5OiAxO1xuICB9XG5cbiAgJjpkaXNhYmxlZCB7XG4gICAgY3Vyc29yOiAkY3Vyc29yLWRpc2FibGVkO1xuICB9XG59XG5cbnNlbGVjdC5mb3JtLWNvbnRyb2wge1xuICAmOm5vdChbc2l6ZV0pOm5vdChbbXVsdGlwbGVdKSB7XG4gICAgJHNlbGVjdC1ib3JkZXItd2lkdGg6ICgkYm9yZGVyLXdpZHRoICogMik7XG4gICAgaGVpZ2h0OiBjYWxjKCN7JGlucHV0LWhlaWdodH0gKyAjeyRzZWxlY3QtYm9yZGVyLXdpZHRofSk7XG4gIH1cblxuICAmOmZvY3VzOjotbXMtdmFsdWUge1xuICAgIC8vIFN1cHByZXNzIHRoZSBuZXN0ZWQgZGVmYXVsdCB3aGl0ZSB0ZXh0IG9uIGJsdWUgYmFja2dyb3VuZCBoaWdobGlnaHQgZ2l2ZW4gdG9cbiAgICAvLyB0aGUgc2VsZWN0ZWQgb3B0aW9uIHRleHQgd2hlbiB0aGUgKHN0aWxsIGNsb3NlZCkgPHNlbGVjdD4gcmVjZWl2ZXMgZm9jdXNcbiAgICAvLyBpbiBJRSBhbmQgKHVuZGVyIGNlcnRhaW4gY29uZGl0aW9ucykgRWRnZSwgYXMgaXQgbG9va3MgYmFkIGFuZCBjYW5ub3QgYmUgbWFkZSB0b1xuICAgIC8vIG1hdGNoIHRoZSBhcHBlYXJhbmNlIG9mIHRoZSBuYXRpdmUgd2lkZ2V0LlxuICAgIC8vIFNlZSBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzE5Mzk4LlxuICAgIGNvbG9yOiAkaW5wdXQtY29sb3I7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGlucHV0LWJnO1xuICB9XG59XG5cbi8vIE1ha2UgZmlsZSBpbnB1dHMgYmV0dGVyIG1hdGNoIHRleHQgaW5wdXRzIGJ5IGZvcmNpbmcgdGhlbSB0byBuZXcgbGluZXMuXG4uZm9ybS1jb250cm9sLWZpbGUsXG4uZm9ybS1jb250cm9sLXJhbmdlIHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cblxuLy9cbi8vIExhYmVsc1xuLy9cblxuLy8gRm9yIHVzZSB3aXRoIGhvcml6b250YWwgYW5kIGlubGluZSBmb3Jtcywgd2hlbiB5b3UgbmVlZCB0aGUgbGFiZWwgdGV4dCB0b1xuLy8gYWxpZ24gd2l0aCB0aGUgZm9ybSBjb250cm9scy5cbi5jb2wtZm9ybS1sYWJlbCB7XG4gIHBhZGRpbmctdG9wOiBjYWxjKCN7JGlucHV0LXBhZGRpbmcteX0gLSAjeyRpbnB1dC1idG4tYm9yZGVyLXdpZHRofSAqIDIpO1xuICBwYWRkaW5nLWJvdHRvbTogY2FsYygjeyRpbnB1dC1wYWRkaW5nLXl9IC0gI3skaW5wdXQtYnRuLWJvcmRlci13aWR0aH0gKiAyKTtcbiAgbWFyZ2luLWJvdHRvbTogMDsgLy8gT3ZlcnJpZGUgdGhlIGA8bGFiZWw+YCBkZWZhdWx0XG59XG5cbi5jb2wtZm9ybS1sYWJlbC1sZyB7XG4gIHBhZGRpbmctdG9wOiBjYWxjKCN7JGlucHV0LXBhZGRpbmcteS1sZ30gLSAjeyRpbnB1dC1idG4tYm9yZGVyLXdpZHRofSAqIDIpO1xuICBwYWRkaW5nLWJvdHRvbTogY2FsYygjeyRpbnB1dC1wYWRkaW5nLXktbGd9IC0gI3skaW5wdXQtYnRuLWJvcmRlci13aWR0aH0gKiAyKTtcbiAgZm9udC1zaXplOiAkZm9udC1zaXplLWxnO1xufVxuXG4uY29sLWZvcm0tbGFiZWwtc20ge1xuICBwYWRkaW5nLXRvcDogY2FsYygjeyRpbnB1dC1wYWRkaW5nLXktc219IC0gI3skaW5wdXQtYnRuLWJvcmRlci13aWR0aH0gKiAyKTtcbiAgcGFkZGluZy1ib3R0b206IGNhbGMoI3skaW5wdXQtcGFkZGluZy15LXNtfSAtICN7JGlucHV0LWJ0bi1ib3JkZXItd2lkdGh9ICogMik7XG4gIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS1zbTtcbn1cblxuXG4vL1xuLy8gTGVnZW5kc1xuLy9cblxuLy8gRm9yIHVzZSB3aXRoIGhvcml6b250YWwgYW5kIGlubGluZSBmb3Jtcywgd2hlbiB5b3UgbmVlZCB0aGUgbGVnZW5kIHRleHQgdG9cbi8vIGJlIHRoZSBzYW1lIHNpemUgYXMgcmVndWxhciBsYWJlbHMsIGFuZCB0byBhbGlnbiB3aXRoIHRoZSBmb3JtIGNvbnRyb2xzLlxuLmNvbC1mb3JtLWxlZ2VuZCB7XG4gIHBhZGRpbmctdG9wOiAkaW5wdXQtcGFkZGluZy15O1xuICBwYWRkaW5nLWJvdHRvbTogJGlucHV0LXBhZGRpbmcteTtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbiAgZm9udC1zaXplOiAkZm9udC1zaXplLWJhc2U7XG59XG5cblxuLy8gU3RhdGljIGZvcm0gY29udHJvbCB0ZXh0XG4vL1xuLy8gQXBwbHkgY2xhc3MgdG8gYW4gZWxlbWVudCB0byBtYWtlIGFueSBzdHJpbmcgb2YgdGV4dCBhbGlnbiB3aXRoIGxhYmVscyBpbiBhXG4vLyBob3Jpem9udGFsIGZvcm0gbGF5b3V0LlxuXG4uZm9ybS1jb250cm9sLXN0YXRpYyB7XG4gIHBhZGRpbmctdG9wOiAkaW5wdXQtcGFkZGluZy15O1xuICBwYWRkaW5nLWJvdHRvbTogJGlucHV0LXBhZGRpbmcteTtcbiAgbWFyZ2luLWJvdHRvbTogMDsgLy8gbWF0Y2ggaW5wdXRzIGlmIHRoaXMgY2xhc3MgY29tZXMgb24gaW5wdXRzIHdpdGggZGVmYXVsdCBtYXJnaW5zXG4gIGxpbmUtaGVpZ2h0OiAkaW5wdXQtbGluZS1oZWlnaHQ7XG4gIGJvcmRlcjogc29saWQgdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci13aWR0aDogJGlucHV0LWJ0bi1ib3JkZXItd2lkdGggMDtcblxuICAmLmZvcm0tY29udHJvbC1zbSxcbiAgJi5mb3JtLWNvbnRyb2wtbGcge1xuICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gICAgcGFkZGluZy1sZWZ0OiAwO1xuICB9XG59XG5cblxuLy8gRm9ybSBjb250cm9sIHNpemluZ1xuLy9cbi8vIEJ1aWxkIG9uIGAuZm9ybS1jb250cm9sYCB3aXRoIG1vZGlmaWVyIGNsYXNzZXMgdG8gZGVjcmVhc2Ugb3IgaW5jcmVhc2UgdGhlXG4vLyBoZWlnaHQgYW5kIGZvbnQtc2l6ZSBvZiBmb3JtIGNvbnRyb2xzLlxuLy9cbi8vIFRoZSBgLmZvcm0tZ3JvdXAtKiBmb3JtLWNvbnRyb2xgIHZhcmlhdGlvbnMgYXJlIHNhZGx5IGR1cGxpY2F0ZWQgdG8gYXZvaWQgdGhlXG4vLyBpc3N1ZSBkb2N1bWVudGVkIGluIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMTUwNzQuXG5cbi5mb3JtLWNvbnRyb2wtc20ge1xuICBwYWRkaW5nOiAkaW5wdXQtcGFkZGluZy15LXNtICRpbnB1dC1wYWRkaW5nLXgtc207XG4gIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS1zbTtcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkaW5wdXQtYm9yZGVyLXJhZGl1cy1zbSk7XG59XG5cbnNlbGVjdC5mb3JtLWNvbnRyb2wtc20ge1xuICAmOm5vdChbc2l6ZV0pOm5vdChbbXVsdGlwbGVdKSB7XG4gICAgaGVpZ2h0OiAkaW5wdXQtaGVpZ2h0LXNtO1xuICB9XG59XG5cbi5mb3JtLWNvbnRyb2wtbGcge1xuICBwYWRkaW5nOiAkaW5wdXQtcGFkZGluZy15LWxnICRpbnB1dC1wYWRkaW5nLXgtbGc7XG4gIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS1sZztcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkaW5wdXQtYm9yZGVyLXJhZGl1cy1sZyk7XG59XG5cbnNlbGVjdC5mb3JtLWNvbnRyb2wtbGcge1xuICAmOm5vdChbc2l6ZV0pOm5vdChbbXVsdGlwbGVdKSB7XG4gICAgaGVpZ2h0OiAkaW5wdXQtaGVpZ2h0LWxnO1xuICB9XG59XG5cblxuLy8gRm9ybSBncm91cHNcbi8vXG4vLyBEZXNpZ25lZCB0byBoZWxwIHdpdGggdGhlIG9yZ2FuaXphdGlvbiBhbmQgc3BhY2luZyBvZiB2ZXJ0aWNhbCBmb3Jtcy4gRm9yXG4vLyBob3Jpem9udGFsIGZvcm1zLCB1c2UgdGhlIHByZWRlZmluZWQgZ3JpZCBjbGFzc2VzLlxuXG4uZm9ybS1ncm91cCB7XG4gIG1hcmdpbi1ib3R0b206ICRmb3JtLWdyb3VwLW1hcmdpbi1ib3R0b207XG59XG5cbi5mb3JtLXRleHQge1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luLXRvcDogJGZvcm0tdGV4dC1tYXJnaW4tdG9wO1xufVxuXG5cbi8vIENoZWNrYm94ZXMgYW5kIHJhZGlvc1xuLy9cbi8vIEluZGVudCB0aGUgbGFiZWxzIHRvIHBvc2l0aW9uIHJhZGlvcy9jaGVja2JveGVzIGFzIGhhbmdpbmcgY29udHJvbHMuXG5cbi5mb3JtLWNoZWNrIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luLWJvdHRvbTogJGZvcm0tY2hlY2stbWFyZ2luLWJvdHRvbTtcblxuICAmLmRpc2FibGVkIHtcbiAgICAuZm9ybS1jaGVjay1sYWJlbCB7XG4gICAgICBjb2xvcjogJHRleHQtbXV0ZWQ7XG4gICAgICBjdXJzb3I6ICRjdXJzb3ItZGlzYWJsZWQ7XG4gICAgfVxuICB9XG59XG5cbi5mb3JtLWNoZWNrLWxhYmVsIHtcbiAgcGFkZGluZy1sZWZ0OiAkZm9ybS1jaGVjay1pbnB1dC1ndXR0ZXI7XG4gIG1hcmdpbi1ib3R0b206IDA7IC8vIE92ZXJyaWRlIGRlZmF1bHQgYDxsYWJlbD5gIGJvdHRvbSBtYXJnaW5cbiAgY3Vyc29yOiBwb2ludGVyO1xufVxuXG4uZm9ybS1jaGVjay1pbnB1dCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbWFyZ2luLXRvcDogJGZvcm0tY2hlY2staW5wdXQtbWFyZ2luLXk7XG4gIG1hcmdpbi1sZWZ0OiAtJGZvcm0tY2hlY2staW5wdXQtZ3V0dGVyO1xuXG4gICY6b25seS1jaGlsZCB7XG4gICAgcG9zaXRpb246IHN0YXRpYztcbiAgfVxufVxuXG4vLyBSYWRpb3MgYW5kIGNoZWNrYm94ZXMgb24gc2FtZSBsaW5lXG4uZm9ybS1jaGVjay1pbmxpbmUge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cbiAgLmZvcm0tY2hlY2stbGFiZWwge1xuICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIH1cblxuICArIC5mb3JtLWNoZWNrLWlubGluZSB7XG4gICAgbWFyZ2luLWxlZnQ6ICRmb3JtLWNoZWNrLWlubGluZS1tYXJnaW4teDtcbiAgfVxufVxuXG5cbi8vIEZvcm0gY29udHJvbCBmZWVkYmFjayBzdGF0ZXNcbi8vXG4vLyBBcHBseSBjb250ZXh0dWFsIGFuZCBzZW1hbnRpYyBzdGF0ZXMgdG8gaW5kaXZpZHVhbCBmb3JtIGNvbnRyb2xzLlxuXG4uZm9ybS1jb250cm9sLWZlZWRiYWNrIHtcbiAgbWFyZ2luLXRvcDogJGZvcm0tZmVlZGJhY2stbWFyZ2luLXRvcDtcbn1cblxuLmZvcm0tY29udHJvbC1zdWNjZXNzLFxuLmZvcm0tY29udHJvbC13YXJuaW5nLFxuLmZvcm0tY29udHJvbC1kYW5nZXIge1xuICBwYWRkaW5nLXJpZ2h0OiAoJGlucHV0LXBhZGRpbmcteCAqIDMpO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXIgcmlnaHQgKCRpbnB1dC1oZWlnaHQgLyA0KTtcbiAgYmFja2dyb3VuZC1zaXplOiAoJGlucHV0LWhlaWdodCAvIDIpICgkaW5wdXQtaGVpZ2h0IC8gMik7XG59XG5cbi8vIEZvcm0gdmFsaWRhdGlvbiBzdGF0ZXNcbi5oYXMtc3VjY2VzcyB7XG4gIEBpbmNsdWRlIGZvcm0tY29udHJvbC12YWxpZGF0aW9uKCRicmFuZC1zdWNjZXNzKTtcblxuICAuZm9ybS1jb250cm9sLXN1Y2Nlc3Mge1xuICAgIGJhY2tncm91bmQtaW1hZ2U6ICRmb3JtLWljb24tc3VjY2VzcztcbiAgfVxufVxuXG4uaGFzLXdhcm5pbmcge1xuICBAaW5jbHVkZSBmb3JtLWNvbnRyb2wtdmFsaWRhdGlvbigkYnJhbmQtd2FybmluZyk7XG5cbiAgLmZvcm0tY29udHJvbC13YXJuaW5nIHtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiAkZm9ybS1pY29uLXdhcm5pbmc7XG4gIH1cbn1cblxuLmhhcy1kYW5nZXIge1xuICBAaW5jbHVkZSBmb3JtLWNvbnRyb2wtdmFsaWRhdGlvbigkYnJhbmQtZGFuZ2VyKTtcblxuICAuZm9ybS1jb250cm9sLWRhbmdlciB7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogJGZvcm0taWNvbi1kYW5nZXI7XG4gIH1cbn1cblxuXG4vLyBJbmxpbmUgZm9ybXNcbi8vXG4vLyBNYWtlIGZvcm1zIGFwcGVhciBpbmxpbmUoLWJsb2NrKSBieSBhZGRpbmcgdGhlIGAuZm9ybS1pbmxpbmVgIGNsYXNzLiBJbmxpbmVcbi8vIGZvcm1zIGJlZ2luIHN0YWNrZWQgb24gZXh0cmEgc21hbGwgKG1vYmlsZSkgZGV2aWNlcyBhbmQgdGhlbiBnbyBpbmxpbmUgd2hlblxuLy8gdmlld3BvcnRzIHJlYWNoIDw3NjhweC5cbi8vXG4vLyBSZXF1aXJlcyB3cmFwcGluZyBpbnB1dHMgYW5kIGxhYmVscyB3aXRoIGAuZm9ybS1ncm91cGAgZm9yIHByb3BlciBkaXNwbGF5IG9mXG4vLyBkZWZhdWx0IEhUTUwgZm9ybSBjb250cm9scyBhbmQgb3VyIGN1c3RvbSBmb3JtIGNvbnRyb2xzIChlLmcuLCBpbnB1dCBncm91cHMpLlxuXG4uZm9ybS1pbmxpbmUge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWZsb3c6IHJvdyB3cmFwO1xuICBhbGlnbi1pdGVtczogY2VudGVyOyAvLyBQcmV2ZW50IHNob3J0ZXIgZWxlbWVudHMgZnJvbSBncm93aW5nIHRvIHNhbWUgaGVpZ2h0IGFzIG90aGVycyAoZS5nLiwgc21hbGwgYnV0dG9ucyBncm93aW5nIHRvIG5vcm1hbCBzaXplZCBidXR0b24gaGVpZ2h0KVxuXG4gIC8vIEJlY2F1c2Ugd2UgdXNlIGZsZXgsIHRoZSBpbml0aWFsIHNpemluZyBvZiBjaGVja2JveGVzIGlzIGNvbGxhcHNlZCBhbmRcbiAgLy8gZG9lc24ndCBvY2N1cHkgdGhlIGZ1bGwtd2lkdGggKHdoaWNoIGlzIHdoYXQgd2Ugd2FudCBmb3IgeHMgZ3JpZCB0aWVyKSxcbiAgLy8gc28gd2UgZm9yY2UgdGhhdCBoZXJlLlxuICAuZm9ybS1jaGVjayB7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cblxuICAvLyBLaWNrIGluIHRoZSBpbmxpbmVcbiAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChzbSkge1xuICAgIGxhYmVsIHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIH1cblxuICAgIC8vIElubGluZS1ibG9jayBhbGwgdGhlIHRoaW5ncyBmb3IgXCJpbmxpbmVcIlxuICAgIC5mb3JtLWdyb3VwIHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBmbGV4OiAwIDAgYXV0bztcbiAgICAgIGZsZXgtZmxvdzogcm93IHdyYXA7XG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICB9XG5cbiAgICAvLyBBbGxvdyBmb2xrcyB0byAqbm90KiB1c2UgYC5mb3JtLWdyb3VwYFxuICAgIC5mb3JtLWNvbnRyb2wge1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgd2lkdGg6IGF1dG87IC8vIFByZXZlbnQgbGFiZWxzIGZyb20gc3RhY2tpbmcgYWJvdmUgaW5wdXRzIGluIGAuZm9ybS1ncm91cGBcbiAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgfVxuXG4gICAgLy8gTWFrZSBzdGF0aWMgY29udHJvbHMgYmVoYXZlIGxpa2UgcmVndWxhciBvbmVzXG4gICAgLmZvcm0tY29udHJvbC1zdGF0aWMge1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIH1cblxuICAgIC5pbnB1dC1ncm91cCB7XG4gICAgICB3aWR0aDogYXV0bztcbiAgICB9XG5cbiAgICAuZm9ybS1jb250cm9sLWxhYmVsIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgIH1cblxuICAgIC8vIFJlbW92ZSBkZWZhdWx0IG1hcmdpbiBvbiByYWRpb3MvY2hlY2tib3hlcyB0aGF0IHdlcmUgdXNlZCBmb3Igc3RhY2tpbmcsIGFuZFxuICAgIC8vIHRoZW4gdW5kbyB0aGUgZmxvYXRpbmcgb2YgcmFkaW9zIGFuZCBjaGVja2JveGVzIHRvIG1hdGNoLlxuICAgIC5mb3JtLWNoZWNrIHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICB3aWR0aDogYXV0bztcbiAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIH1cbiAgICAuZm9ybS1jaGVjay1sYWJlbCB7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgfVxuICAgIC5mb3JtLWNoZWNrLWlucHV0IHtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgICBtYXJnaW4tcmlnaHQ6ICRmb3JtLWNoZWNrLWlucHV0LW1hcmdpbi14O1xuICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgfVxuXG4gICAgLy8gQ3VzdG9tIGZvcm0gY29udHJvbHNcbiAgICAuY3VzdG9tLWNvbnRyb2wge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICB9XG4gICAgLmN1c3RvbS1jb250cm9sLWluZGljYXRvciB7XG4gICAgICBwb3NpdGlvbjogc3RhdGljO1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgbWFyZ2luLXJpZ2h0OiAkZm9ybS1jaGVjay1pbnB1dC1tYXJnaW4teDsgLy8gRmxleGJveCBhbGlnbm1lbnQgbWVhbnMgd2UgbG9zZSBvdXIgSFRNTCBzcGFjZSBoZXJlLCBzbyB3ZSBjb21wZW5zYXRlLlxuICAgICAgdmVydGljYWwtYWxpZ246IHRleHQtYm90dG9tO1xuICAgIH1cblxuICAgIC8vIFJlLW92ZXJyaWRlIHRoZSBmZWVkYmFjayBpY29uLlxuICAgIC5oYXMtZmVlZGJhY2sgLmZvcm0tY29udHJvbC1mZWVkYmFjayB7XG4gICAgICB0b3A6IDA7XG4gICAgfVxuICB9XG59XG4iLCIvLyBzY3NzLWxpbnQ6ZGlzYWJsZSBRdWFsaWZ5aW5nRWxlbWVudFxuXG4vL1xuLy8gQmFzZSBzdHlsZXNcbi8vXG5cbi5idG4ge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGZvbnQtd2VpZ2h0OiAkYnRuLWZvbnQtd2VpZ2h0O1xuICBsaW5lLWhlaWdodDogJGJ0bi1saW5lLWhlaWdodDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICB1c2VyLXNlbGVjdDogbm9uZTtcbiAgYm9yZGVyOiAkaW5wdXQtYnRuLWJvcmRlci13aWR0aCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgQGluY2x1ZGUgYnV0dG9uLXNpemUoJGJ0bi1wYWRkaW5nLXksICRidG4tcGFkZGluZy14LCAkZm9udC1zaXplLWJhc2UsICRidG4tYm9yZGVyLXJhZGl1cyk7XG4gIEBpbmNsdWRlIHRyYW5zaXRpb24oJGJ0bi10cmFuc2l0aW9uKTtcblxuICAvLyBTaGFyZSBob3ZlciBhbmQgZm9jdXMgc3R5bGVzXG4gIEBpbmNsdWRlIGhvdmVyLWZvY3VzIHtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIH1cbiAgJjpmb2N1cyxcbiAgJi5mb2N1cyB7XG4gICAgb3V0bGluZTogMDtcbiAgICBib3gtc2hhZG93OiAkYnRuLWZvY3VzLWJveC1zaGFkb3c7XG4gIH1cblxuICAvLyBEaXNhYmxlZCBjb21lcyBmaXJzdCBzbyBhY3RpdmUgY2FuIHByb3Blcmx5IHJlc3R5bGVcbiAgJi5kaXNhYmxlZCxcbiAgJjpkaXNhYmxlZCB7XG4gICAgY3Vyc29yOiAkY3Vyc29yLWRpc2FibGVkO1xuICAgIG9wYWNpdHk6IC42NTtcbiAgICBAaW5jbHVkZSBib3gtc2hhZG93KG5vbmUpO1xuICB9XG5cbiAgJjphY3RpdmUsXG4gICYuYWN0aXZlIHtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiBub25lO1xuICAgIEBpbmNsdWRlIGJveC1zaGFkb3coJGJ0bi1mb2N1cy1ib3gtc2hhZG93LCAkYnRuLWFjdGl2ZS1ib3gtc2hhZG93KTtcbiAgfVxufVxuXG4vLyBGdXR1cmUtcHJvb2YgZGlzYWJsaW5nIG9mIGNsaWNrcyBvbiBgPGE+YCBlbGVtZW50c1xuYS5idG4uZGlzYWJsZWQsXG5maWVsZHNldFtkaXNhYmxlZF0gYS5idG4ge1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbn1cblxuXG4vL1xuLy8gQWx0ZXJuYXRlIGJ1dHRvbnNcbi8vXG5cbi5idG4tcHJpbWFyeSB7XG4gIEBpbmNsdWRlIGJ1dHRvbi12YXJpYW50KCRidG4tcHJpbWFyeS1jb2xvciwgJGJ0bi1wcmltYXJ5LWJnLCAkYnRuLXByaW1hcnktYm9yZGVyKTtcbn1cbi5idG4tc2Vjb25kYXJ5IHtcbiAgQGluY2x1ZGUgYnV0dG9uLXZhcmlhbnQoJGJ0bi1zZWNvbmRhcnktY29sb3IsICRidG4tc2Vjb25kYXJ5LWJnLCAkYnRuLXNlY29uZGFyeS1ib3JkZXIpO1xufVxuLmJ0bi1pbmZvIHtcbiAgQGluY2x1ZGUgYnV0dG9uLXZhcmlhbnQoJGJ0bi1pbmZvLWNvbG9yLCAkYnRuLWluZm8tYmcsICRidG4taW5mby1ib3JkZXIpO1xufVxuLmJ0bi1zdWNjZXNzIHtcbiAgQGluY2x1ZGUgYnV0dG9uLXZhcmlhbnQoJGJ0bi1zdWNjZXNzLWNvbG9yLCAkYnRuLXN1Y2Nlc3MtYmcsICRidG4tc3VjY2Vzcy1ib3JkZXIpO1xufVxuLmJ0bi13YXJuaW5nIHtcbiAgQGluY2x1ZGUgYnV0dG9uLXZhcmlhbnQoJGJ0bi13YXJuaW5nLWNvbG9yLCAkYnRuLXdhcm5pbmctYmcsICRidG4td2FybmluZy1ib3JkZXIpO1xufVxuLmJ0bi1kYW5nZXIge1xuICBAaW5jbHVkZSBidXR0b24tdmFyaWFudCgkYnRuLWRhbmdlci1jb2xvciwgJGJ0bi1kYW5nZXItYmcsICRidG4tZGFuZ2VyLWJvcmRlcik7XG59XG5cbi8vIFJlbW92ZSBhbGwgYmFja2dyb3VuZHNcbi5idG4tb3V0bGluZS1wcmltYXJ5IHtcbiAgQGluY2x1ZGUgYnV0dG9uLW91dGxpbmUtdmFyaWFudCgkYnRuLXByaW1hcnktYmcpO1xufVxuLmJ0bi1vdXRsaW5lLXNlY29uZGFyeSB7XG4gIEBpbmNsdWRlIGJ1dHRvbi1vdXRsaW5lLXZhcmlhbnQoJGJ0bi1zZWNvbmRhcnktYm9yZGVyKTtcbn1cbi5idG4tb3V0bGluZS1pbmZvIHtcbiAgQGluY2x1ZGUgYnV0dG9uLW91dGxpbmUtdmFyaWFudCgkYnRuLWluZm8tYmcpO1xufVxuLmJ0bi1vdXRsaW5lLXN1Y2Nlc3Mge1xuICBAaW5jbHVkZSBidXR0b24tb3V0bGluZS12YXJpYW50KCRidG4tc3VjY2Vzcy1iZyk7XG59XG4uYnRuLW91dGxpbmUtd2FybmluZyB7XG4gIEBpbmNsdWRlIGJ1dHRvbi1vdXRsaW5lLXZhcmlhbnQoJGJ0bi13YXJuaW5nLWJnKTtcbn1cbi5idG4tb3V0bGluZS1kYW5nZXIge1xuICBAaW5jbHVkZSBidXR0b24tb3V0bGluZS12YXJpYW50KCRidG4tZGFuZ2VyLWJnKTtcbn1cblxuXG4vL1xuLy8gTGluayBidXR0b25zXG4vL1xuXG4vLyBNYWtlIGEgYnV0dG9uIGxvb2sgYW5kIGJlaGF2ZSBsaWtlIGEgbGlua1xuLmJ0bi1saW5rIHtcbiAgZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1ub3JtYWw7XG4gIGNvbG9yOiAkbGluay1jb2xvcjtcbiAgYm9yZGVyLXJhZGl1czogMDtcblxuICAmLFxuICAmOmFjdGl2ZSxcbiAgJi5hY3RpdmUsXG4gICY6ZGlzYWJsZWQge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIEBpbmNsdWRlIGJveC1zaGFkb3cobm9uZSk7XG4gIH1cbiAgJixcbiAgJjpmb2N1cyxcbiAgJjphY3RpdmUge1xuICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIH1cbiAgQGluY2x1ZGUgaG92ZXIge1xuICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIH1cbiAgQGluY2x1ZGUgaG92ZXItZm9jdXMge1xuICAgIGNvbG9yOiAkbGluay1ob3Zlci1jb2xvcjtcbiAgICB0ZXh0LWRlY29yYXRpb246ICRsaW5rLWhvdmVyLWRlY29yYXRpb247XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIH1cbiAgJjpkaXNhYmxlZCB7XG4gICAgY29sb3I6ICRidG4tbGluay1kaXNhYmxlZC1jb2xvcjtcblxuICAgIEBpbmNsdWRlIGhvdmVyLWZvY3VzIHtcbiAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICB9XG4gIH1cbn1cblxuXG4vL1xuLy8gQnV0dG9uIFNpemVzXG4vL1xuXG4uYnRuLWxnIHtcbiAgLy8gbGluZS1oZWlnaHQ6IGVuc3VyZSBldmVuLW51bWJlcmVkIGhlaWdodCBvZiBidXR0b24gbmV4dCB0byBsYXJnZSBpbnB1dFxuICBAaW5jbHVkZSBidXR0b24tc2l6ZSgkYnRuLXBhZGRpbmcteS1sZywgJGJ0bi1wYWRkaW5nLXgtbGcsICRmb250LXNpemUtbGcsICRidG4tYm9yZGVyLXJhZGl1cy1sZyk7XG59XG4uYnRuLXNtIHtcbiAgLy8gbGluZS1oZWlnaHQ6IGVuc3VyZSBwcm9wZXIgaGVpZ2h0IG9mIGJ1dHRvbiBuZXh0IHRvIHNtYWxsIGlucHV0XG4gIEBpbmNsdWRlIGJ1dHRvbi1zaXplKCRidG4tcGFkZGluZy15LXNtLCAkYnRuLXBhZGRpbmcteC1zbSwgJGZvbnQtc2l6ZS1zbSwgJGJ0bi1ib3JkZXItcmFkaXVzLXNtKTtcbn1cblxuXG4vL1xuLy8gQmxvY2sgYnV0dG9uXG4vL1xuXG4uYnRuLWJsb2NrIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAxMDAlO1xufVxuXG4vLyBWZXJ0aWNhbGx5IHNwYWNlIG91dCBtdWx0aXBsZSBibG9jayBidXR0b25zXG4uYnRuLWJsb2NrICsgLmJ0bi1ibG9jayB7XG4gIG1hcmdpbi10b3A6ICRidG4tYmxvY2stc3BhY2luZy15O1xufVxuXG4vLyBTcGVjaWZpY2l0eSBvdmVycmlkZXNcbmlucHV0W3R5cGU9XCJzdWJtaXRcIl0sXG5pbnB1dFt0eXBlPVwicmVzZXRcIl0sXG5pbnB1dFt0eXBlPVwiYnV0dG9uXCJdIHtcbiAgJi5idG4tYmxvY2sge1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG59XG4iLCIuZmFkZSB7XG4gIG9wYWNpdHk6IDA7XG4gIEBpbmNsdWRlIHRyYW5zaXRpb24oJHRyYW5zaXRpb24tZmFkZSk7XG5cbiAgJi5zaG93IHtcbiAgICBvcGFjaXR5OiAxO1xuICB9XG59XG5cbi5jb2xsYXBzZSB7XG4gIGRpc3BsYXk6IG5vbmU7XG4gICYuc2hvdyB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cbn1cblxudHIge1xuICAmLmNvbGxhcHNlLnNob3cge1xuICAgIGRpc3BsYXk6IHRhYmxlLXJvdztcbiAgfVxufVxuXG50Ym9keSB7XG4gICYuY29sbGFwc2Uuc2hvdyB7XG4gICAgZGlzcGxheTogdGFibGUtcm93LWdyb3VwO1xuICB9XG59XG5cbi5jb2xsYXBzaW5nIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBoZWlnaHQ6IDA7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIEBpbmNsdWRlIHRyYW5zaXRpb24oJHRyYW5zaXRpb24tY29sbGFwc2UpO1xufVxuIiwiLy8gVGhlIGRyb3Bkb3duIHdyYXBwZXIgKGA8ZGl2PmApXG4uZHJvcHVwLFxuLmRyb3Bkb3duIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuXG4uZHJvcGRvd24tdG9nZ2xlIHtcbiAgLy8gR2VuZXJhdGUgdGhlIGNhcmV0IGF1dG9tYXRpY2FsbHlcbiAgJjo6YWZ0ZXIge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICB3aWR0aDogMDtcbiAgICBoZWlnaHQ6IDA7XG4gICAgbWFyZ2luLWxlZnQ6ICRjYXJldC13aWR0aDtcbiAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgYm9yZGVyLXRvcDogJGNhcmV0LXdpZHRoIHNvbGlkO1xuICAgIGJvcmRlci1yaWdodDogJGNhcmV0LXdpZHRoIHNvbGlkIHRyYW5zcGFyZW50O1xuICAgIGJvcmRlci1sZWZ0OiAkY2FyZXQtd2lkdGggc29saWQgdHJhbnNwYXJlbnQ7XG4gIH1cblxuICAvLyBQcmV2ZW50IHRoZSBmb2N1cyBvbiB0aGUgZHJvcGRvd24gdG9nZ2xlIHdoZW4gY2xvc2luZyBkcm9wZG93bnNcbiAgJjpmb2N1cyB7XG4gICAgb3V0bGluZTogMDtcbiAgfVxufVxuXG4uZHJvcHVwIHtcbiAgLmRyb3Bkb3duLXRvZ2dsZSB7XG4gICAgJjo6YWZ0ZXIge1xuICAgICAgYm9yZGVyLXRvcDogMDtcbiAgICAgIGJvcmRlci1ib3R0b206ICRjYXJldC13aWR0aCBzb2xpZDtcbiAgICB9XG4gIH1cbn1cblxuLy8gVGhlIGRyb3Bkb3duIG1lbnVcbi5kcm9wZG93bi1tZW51IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDEwMCU7XG4gIGxlZnQ6IDA7XG4gIHotaW5kZXg6ICR6aW5kZXgtZHJvcGRvd247XG4gIGRpc3BsYXk6IG5vbmU7IC8vIG5vbmUgYnkgZGVmYXVsdCwgYnV0IGJsb2NrIG9uIFwib3BlblwiIG9mIHRoZSBtZW51XG4gIGZsb2F0OiBsZWZ0O1xuICBtaW4td2lkdGg6ICRkcm9wZG93bi1taW4td2lkdGg7XG4gIHBhZGRpbmc6ICRkcm9wZG93bi1wYWRkaW5nLXkgMDtcbiAgbWFyZ2luOiAkZHJvcGRvd24tbWFyZ2luLXRvcCAwIDA7IC8vIG92ZXJyaWRlIGRlZmF1bHQgdWxcbiAgZm9udC1zaXplOiAkZm9udC1zaXplLWJhc2U7IC8vIFJlZGVjbGFyZSBiZWNhdXNlIG5lc3RpbmcgY2FuIGNhdXNlIGluaGVyaXRhbmNlIGlzc3Vlc1xuICBjb2xvcjogJGJvZHktY29sb3I7XG4gIHRleHQtYWxpZ246IGxlZnQ7IC8vIEVuc3VyZXMgcHJvcGVyIGFsaWdubWVudCBpZiBwYXJlbnQgaGFzIGl0IGNoYW5nZWQgKGUuZy4sIG1vZGFsIGZvb3RlcilcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGRyb3Bkb3duLWJnO1xuICBiYWNrZ3JvdW5kLWNsaXA6IHBhZGRpbmctYm94O1xuICBib3JkZXI6ICRkcm9wZG93bi1ib3JkZXItd2lkdGggc29saWQgJGRyb3Bkb3duLWJvcmRlci1jb2xvcjtcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkYm9yZGVyLXJhZGl1cyk7XG4gIEBpbmNsdWRlIGJveC1zaGFkb3coJGRyb3Bkb3duLWJveC1zaGFkb3cpO1xufVxuXG4vLyBEaXZpZGVycyAoYmFzaWNhbGx5IGFuIGA8aHI+YCkgd2l0aGluIHRoZSBkcm9wZG93blxuLmRyb3Bkb3duLWRpdmlkZXIge1xuICBAaW5jbHVkZSBuYXYtZGl2aWRlcigkZHJvcGRvd24tZGl2aWRlci1iZyk7XG59XG5cbi8vIExpbmtzLCBidXR0b25zLCBhbmQgbW9yZSB3aXRoaW4gdGhlIGRyb3Bkb3duIG1lbnVcbi8vXG4vLyBgPGJ1dHRvbj5gLXNwZWNpZmljIHN0eWxlcyBhcmUgZGVub3RlZCB3aXRoIGAvLyBGb3IgPGJ1dHRvbj5zYFxuLmRyb3Bkb3duLWl0ZW0ge1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDEwMCU7IC8vIEZvciBgPGJ1dHRvbj5gc1xuICBwYWRkaW5nOiAzcHggJGRyb3Bkb3duLWl0ZW0tcGFkZGluZy14O1xuICBjbGVhcjogYm90aDtcbiAgZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1ub3JtYWw7XG4gIGNvbG9yOiAkZHJvcGRvd24tbGluay1jb2xvcjtcbiAgdGV4dC1hbGlnbjogaW5oZXJpdDsgLy8gRm9yIGA8YnV0dG9uPmBzXG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7IC8vIHByZXZlbnQgbGlua3MgZnJvbSByYW5kb21seSBicmVha2luZyBvbnRvIG5ldyBsaW5lc1xuICBiYWNrZ3JvdW5kOiBub25lOyAvLyBGb3IgYDxidXR0b24+YHNcbiAgYm9yZGVyOiAwOyAvLyBGb3IgYDxidXR0b24+YHNcblxuICBAaW5jbHVkZSBob3Zlci1mb2N1cyB7XG4gICAgY29sb3I6ICRkcm9wZG93bi1saW5rLWhvdmVyLWNvbG9yO1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZHJvcGRvd24tbGluay1ob3Zlci1iZztcbiAgfVxuXG4gICYuYWN0aXZlLFxuICAmOmFjdGl2ZSB7XG4gICAgY29sb3I6ICRkcm9wZG93bi1saW5rLWFjdGl2ZS1jb2xvcjtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGRyb3Bkb3duLWxpbmstYWN0aXZlLWJnO1xuICB9XG5cbiAgJi5kaXNhYmxlZCxcbiAgJjpkaXNhYmxlZCB7XG4gICAgY29sb3I6ICRkcm9wZG93bi1saW5rLWRpc2FibGVkLWNvbG9yO1xuICAgIGN1cnNvcjogJGN1cnNvci1kaXNhYmxlZDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAvLyBSZW1vdmUgQ1NTIGdyYWRpZW50cyBpZiB0aGV5J3JlIGVuYWJsZWRcbiAgICBAaWYgJGVuYWJsZS1ncmFkaWVudHMge1xuICAgICAgYmFja2dyb3VuZC1pbWFnZTogbm9uZTtcbiAgICB9XG4gIH1cbn1cblxuLy8gT3BlbiBzdGF0ZSBmb3IgdGhlIGRyb3Bkb3duXG4uc2hvdyB7XG4gIC8vIFNob3cgdGhlIG1lbnVcbiAgPiAuZHJvcGRvd24tbWVudSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cblxuICAvLyBSZW1vdmUgdGhlIG91dGxpbmUgd2hlbiA6Zm9jdXMgaXMgdHJpZ2dlcmVkXG4gID4gYSB7XG4gICAgb3V0bGluZTogMDtcbiAgfVxufVxuXG4vLyBNZW51IHBvc2l0aW9uaW5nXG4vL1xuLy8gQWRkIGV4dHJhIGNsYXNzIHRvIGAuZHJvcGRvd24tbWVudWAgdG8gZmxpcCB0aGUgYWxpZ25tZW50IG9mIHRoZSBkcm9wZG93blxuLy8gbWVudSB3aXRoIHRoZSBwYXJlbnQuXG4uZHJvcGRvd24tbWVudS1yaWdodCB7XG4gIHJpZ2h0OiAwO1xuICBsZWZ0OiBhdXRvOyAvLyBSZXNldCB0aGUgZGVmYXVsdCBmcm9tIGAuZHJvcGRvd24tbWVudWBcbn1cblxuLmRyb3Bkb3duLW1lbnUtbGVmdCB7XG4gIHJpZ2h0OiBhdXRvO1xuICBsZWZ0OiAwO1xufVxuXG4vLyBEcm9wZG93biBzZWN0aW9uIGhlYWRlcnNcbi5kcm9wZG93bi1oZWFkZXIge1xuICBkaXNwbGF5OiBibG9jaztcbiAgcGFkZGluZzogJGRyb3Bkb3duLXBhZGRpbmcteSAkZHJvcGRvd24taXRlbS1wYWRkaW5nLXg7XG4gIG1hcmdpbi1ib3R0b206IDA7IC8vIGZvciB1c2Ugd2l0aCBoZWFkaW5nIGVsZW1lbnRzXG4gIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS1zbTtcbiAgY29sb3I6ICRkcm9wZG93bi1oZWFkZXItY29sb3I7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7IC8vIGFzIHdpdGggPiBsaSA+IGFcbn1cblxuLy8gQmFja2Ryb3AgdG8gY2F0Y2ggYm9keSBjbGlja3Mgb24gbW9iaWxlLCBldGMuXG4uZHJvcGRvd24tYmFja2Ryb3Age1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHRvcDogMDtcbiAgcmlnaHQ6IDA7XG4gIGJvdHRvbTogMDtcbiAgbGVmdDogMDtcbiAgei1pbmRleDogJHppbmRleC1kcm9wZG93bi1iYWNrZHJvcDtcbn1cblxuLy8gQWxsb3cgZm9yIGRyb3Bkb3ducyB0byBnbyBib3R0b20gdXAgKGFrYSwgZHJvcHVwLW1lbnUpXG4vL1xuLy8gSnVzdCBhZGQgLmRyb3B1cCBhZnRlciB0aGUgc3RhbmRhcmQgLmRyb3Bkb3duIGNsYXNzIGFuZCB5b3UncmUgc2V0LlxuXG4uZHJvcHVwIHtcbiAgLy8gRGlmZmVyZW50IHBvc2l0aW9uaW5nIGZvciBib3R0b20gdXAgbWVudVxuICAuZHJvcGRvd24tbWVudSB7XG4gICAgdG9wOiBhdXRvO1xuICAgIGJvdHRvbTogMTAwJTtcbiAgICBtYXJnaW4tYm90dG9tOiAkZHJvcGRvd24tbWFyZ2luLXRvcDtcbiAgfVxufVxuIiwiLy8gc2Nzcy1saW50OmRpc2FibGUgUXVhbGlmeWluZ0VsZW1lbnRcblxuLy8gTWFrZSB0aGUgZGl2IGJlaGF2ZSBsaWtlIGEgYnV0dG9uXG4uYnRuLWdyb3VwLFxuLmJ0bi1ncm91cC12ZXJ0aWNhbCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7IC8vIG1hdGNoIC5idG4gYWxpZ25tZW50IGdpdmVuIGZvbnQtc2l6ZSBoYWNrIGFib3ZlXG5cbiAgPiAuYnRuIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgZmxleDogMCAxIGF1dG87XG5cbiAgICAvLyBCcmluZyB0aGUgaG92ZXIsIGZvY3VzZWQsIGFuZCBcImFjdGl2ZVwiIGJ1dHRvbnMgdG8gdGhlIGZyb24gdG8gb3ZlcmxheVxuICAgIC8vIHRoZSBib3JkZXJzIHByb3Blcmx5XG4gICAgQGluY2x1ZGUgaG92ZXIge1xuICAgICAgei1pbmRleDogMjtcbiAgICB9XG4gICAgJjpmb2N1cyxcbiAgICAmOmFjdGl2ZSxcbiAgICAmLmFjdGl2ZSB7XG4gICAgICB6LWluZGV4OiAyO1xuICAgIH1cbiAgfVxuXG4gIC8vIFByZXZlbnQgZG91YmxlIGJvcmRlcnMgd2hlbiBidXR0b25zIGFyZSBuZXh0IHRvIGVhY2ggb3RoZXJcbiAgLmJ0biArIC5idG4sXG4gIC5idG4gKyAuYnRuLWdyb3VwLFxuICAuYnRuLWdyb3VwICsgLmJ0bixcbiAgLmJ0bi1ncm91cCArIC5idG4tZ3JvdXAge1xuICAgIG1hcmdpbi1sZWZ0OiAtJGlucHV0LWJ0bi1ib3JkZXItd2lkdGg7XG4gIH1cbn1cblxuLy8gT3B0aW9uYWw6IEdyb3VwIG11bHRpcGxlIGJ1dHRvbiBncm91cHMgdG9nZXRoZXIgZm9yIGEgdG9vbGJhclxuLmJ0bi10b29sYmFyIHtcbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xuXG4gIC5pbnB1dC1ncm91cCB7XG4gICAgd2lkdGg6IGF1dG87XG4gIH1cbn1cblxuLmJ0bi1ncm91cCA+IC5idG46bm90KDpmaXJzdC1jaGlsZCk6bm90KDpsYXN0LWNoaWxkKTpub3QoLmRyb3Bkb3duLXRvZ2dsZSkge1xuICBib3JkZXItcmFkaXVzOiAwO1xufVxuXG4vLyBTZXQgY29ybmVycyBpbmRpdmlkdWFsIGJlY2F1c2Ugc29tZXRpbWVzIGEgc2luZ2xlIGJ1dHRvbiBjYW4gYmUgaW4gYSAuYnRuLWdyb3VwIGFuZCB3ZSBuZWVkIDpmaXJzdC1jaGlsZCBhbmQgOmxhc3QtY2hpbGQgdG8gYm90aCBtYXRjaFxuLmJ0bi1ncm91cCA+IC5idG46Zmlyc3QtY2hpbGQge1xuICBtYXJnaW4tbGVmdDogMDtcblxuICAmOm5vdCg6bGFzdC1jaGlsZCk6bm90KC5kcm9wZG93bi10b2dnbGUpIHtcbiAgICBAaW5jbHVkZSBib3JkZXItcmlnaHQtcmFkaXVzKDApO1xuICB9XG59XG4vLyBOZWVkIC5kcm9wZG93bi10b2dnbGUgc2luY2UgOmxhc3QtY2hpbGQgZG9lc24ndCBhcHBseSBnaXZlbiBhIC5kcm9wZG93bi1tZW51IGltbWVkaWF0ZWx5IGFmdGVyIGl0XG4uYnRuLWdyb3VwID4gLmJ0bjpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpLFxuLmJ0bi1ncm91cCA+IC5kcm9wZG93bi10b2dnbGU6bm90KDpmaXJzdC1jaGlsZCkge1xuICBAaW5jbHVkZSBib3JkZXItbGVmdC1yYWRpdXMoMCk7XG59XG5cbi8vIEN1c3RvbSBlZGl0cyBmb3IgaW5jbHVkaW5nIGJ0bi1ncm91cHMgd2l0aGluIGJ0bi1ncm91cHMgKHVzZWZ1bCBmb3IgaW5jbHVkaW5nIGRyb3Bkb3duIGJ1dHRvbnMgd2l0aGluIGEgYnRuLWdyb3VwKVxuLmJ0bi1ncm91cCA+IC5idG4tZ3JvdXAge1xuICBmbG9hdDogbGVmdDtcbn1cbi5idG4tZ3JvdXAgPiAuYnRuLWdyb3VwOm5vdCg6Zmlyc3QtY2hpbGQpOm5vdCg6bGFzdC1jaGlsZCkgPiAuYnRuIHtcbiAgYm9yZGVyLXJhZGl1czogMDtcbn1cbi5idG4tZ3JvdXAgPiAuYnRuLWdyb3VwOmZpcnN0LWNoaWxkOm5vdCg6bGFzdC1jaGlsZCkge1xuICA+IC5idG46bGFzdC1jaGlsZCxcbiAgPiAuZHJvcGRvd24tdG9nZ2xlIHtcbiAgICBAaW5jbHVkZSBib3JkZXItcmlnaHQtcmFkaXVzKDApO1xuICB9XG59XG4uYnRuLWdyb3VwID4gLmJ0bi1ncm91cDpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpID4gLmJ0bjpmaXJzdC1jaGlsZCB7XG4gIEBpbmNsdWRlIGJvcmRlci1sZWZ0LXJhZGl1cygwKTtcbn1cblxuLy8gT24gYWN0aXZlIGFuZCBvcGVuLCBkb24ndCBzaG93IG91dGxpbmVcbi5idG4tZ3JvdXAgLmRyb3Bkb3duLXRvZ2dsZTphY3RpdmUsXG4uYnRuLWdyb3VwLm9wZW4gLmRyb3Bkb3duLXRvZ2dsZSB7XG4gIG91dGxpbmU6IDA7XG59XG5cblxuLy8gU2l6aW5nXG4vL1xuLy8gUmVtaXggdGhlIGRlZmF1bHQgYnV0dG9uIHNpemluZyBjbGFzc2VzIGludG8gbmV3IG9uZXMgZm9yIGVhc2llciBtYW5pcHVsYXRpb24uXG5cbi5idG4tZ3JvdXAtc20gPiAuYnRuIHsgQGV4dGVuZCAuYnRuLXNtOyB9XG4uYnRuLWdyb3VwLWxnID4gLmJ0biB7IEBleHRlbmQgLmJ0bi1sZzsgfVxuXG5cbi8vXG4vLyBTcGxpdCBidXR0b24gZHJvcGRvd25zXG4vL1xuXG4uYnRuICsgLmRyb3Bkb3duLXRvZ2dsZS1zcGxpdCB7XG4gIHBhZGRpbmctcmlnaHQ6ICRidG4tcGFkZGluZy14ICogLjc1O1xuICBwYWRkaW5nLWxlZnQ6ICRidG4tcGFkZGluZy14ICogLjc1O1xuXG4gICY6OmFmdGVyIHtcbiAgICBtYXJnaW4tbGVmdDogMDtcbiAgfVxufVxuXG4uYnRuLXNtICsgLmRyb3Bkb3duLXRvZ2dsZS1zcGxpdCB7XG4gIHBhZGRpbmctcmlnaHQ6ICRidG4tcGFkZGluZy14LXNtICogLjc1O1xuICBwYWRkaW5nLWxlZnQ6ICRidG4tcGFkZGluZy14LXNtICogLjc1O1xufVxuXG4uYnRuLWxnICsgLmRyb3Bkb3duLXRvZ2dsZS1zcGxpdCB7XG4gIHBhZGRpbmctcmlnaHQ6ICRidG4tcGFkZGluZy14LWxnICogLjc1O1xuICBwYWRkaW5nLWxlZnQ6ICRidG4tcGFkZGluZy14LWxnICogLjc1O1xufVxuXG5cbi8vIFRoZSBjbGlja2FibGUgYnV0dG9uIGZvciB0b2dnbGluZyB0aGUgbWVudVxuLy8gUmVtb3ZlIHRoZSBncmFkaWVudCBhbmQgc2V0IHRoZSBzYW1lIGluc2V0IHNoYWRvdyBhcyB0aGUgOmFjdGl2ZSBzdGF0ZVxuLmJ0bi1ncm91cC5vcGVuIC5kcm9wZG93bi10b2dnbGUge1xuICBAaW5jbHVkZSBib3gtc2hhZG93KCRidG4tYWN0aXZlLWJveC1zaGFkb3cpO1xuXG4gIC8vIFNob3cgbm8gc2hhZG93IGZvciBgLmJ0bi1saW5rYCBzaW5jZSBpdCBoYXMgbm8gb3RoZXIgYnV0dG9uIHN0eWxlcy5cbiAgJi5idG4tbGluayB7XG4gICAgQGluY2x1ZGUgYm94LXNoYWRvdyhub25lKTtcbiAgfVxufVxuXG5cbi8vXG4vLyBWZXJ0aWNhbCBidXR0b24gZ3JvdXBzXG4vL1xuXG4uYnRuLWdyb3VwLXZlcnRpY2FsIHtcbiAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcblxuICAuYnRuLFxuICAuYnRuLWdyb3VwIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxuXG4gID4gLmJ0biArIC5idG4sXG4gID4gLmJ0biArIC5idG4tZ3JvdXAsXG4gID4gLmJ0bi1ncm91cCArIC5idG4sXG4gID4gLmJ0bi1ncm91cCArIC5idG4tZ3JvdXAge1xuICAgIG1hcmdpbi10b3A6IC0kaW5wdXQtYnRuLWJvcmRlci13aWR0aDtcbiAgICBtYXJnaW4tbGVmdDogMDtcbiAgfVxufVxuXG4uYnRuLWdyb3VwLXZlcnRpY2FsID4gLmJ0biB7XG4gICY6bm90KDpmaXJzdC1jaGlsZCk6bm90KDpsYXN0LWNoaWxkKSB7XG4gICAgYm9yZGVyLXJhZGl1czogMDtcbiAgfVxuICAmOmZpcnN0LWNoaWxkOm5vdCg6bGFzdC1jaGlsZCkge1xuICAgIEBpbmNsdWRlIGJvcmRlci1ib3R0b20tcmFkaXVzKDApO1xuICB9XG4gICY6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgQGluY2x1ZGUgYm9yZGVyLXRvcC1yYWRpdXMoMCk7XG4gIH1cbn1cbi5idG4tZ3JvdXAtdmVydGljYWwgPiAuYnRuLWdyb3VwOm5vdCg6Zmlyc3QtY2hpbGQpOm5vdCg6bGFzdC1jaGlsZCkgPiAuYnRuIHtcbiAgYm9yZGVyLXJhZGl1czogMDtcbn1cbi5idG4tZ3JvdXAtdmVydGljYWwgPiAuYnRuLWdyb3VwOmZpcnN0LWNoaWxkOm5vdCg6bGFzdC1jaGlsZCkge1xuICA+IC5idG46bGFzdC1jaGlsZCxcbiAgPiAuZHJvcGRvd24tdG9nZ2xlIHtcbiAgICBAaW5jbHVkZSBib3JkZXItYm90dG9tLXJhZGl1cygwKTtcbiAgfVxufVxuLmJ0bi1ncm91cC12ZXJ0aWNhbCA+IC5idG4tZ3JvdXA6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSA+IC5idG46Zmlyc3QtY2hpbGQge1xuICBAaW5jbHVkZSBib3JkZXItdG9wLXJhZGl1cygwKTtcbn1cblxuXG4vLyBDaGVja2JveCBhbmQgcmFkaW8gb3B0aW9uc1xuLy9cbi8vIEluIG9yZGVyIHRvIHN1cHBvcnQgdGhlIGJyb3dzZXIncyBmb3JtIHZhbGlkYXRpb24gZmVlZGJhY2ssIHBvd2VyZWQgYnkgdGhlXG4vLyBgcmVxdWlyZWRgIGF0dHJpYnV0ZSwgd2UgaGF2ZSB0byBcImhpZGVcIiB0aGUgaW5wdXRzIHZpYSBgY2xpcGAuIFdlIGNhbm5vdCB1c2Vcbi8vIGBkaXNwbGF5OiBub25lO2Agb3IgYHZpc2liaWxpdHk6IGhpZGRlbjtgIGFzIHRoYXQgYWxzbyBoaWRlcyB0aGUgcG9wb3Zlci5cbi8vIFNpbXBseSB2aXN1YWxseSBoaWRpbmcgdGhlIGlucHV0cyB2aWEgYG9wYWNpdHlgIHdvdWxkIGxlYXZlIHRoZW0gY2xpY2thYmxlIGluXG4vLyBjZXJ0YWluIGNhc2VzIHdoaWNoIGlzIHByZXZlbnRlZCBieSB1c2luZyBgY2xpcGAgYW5kIGBwb2ludGVyLWV2ZW50c2AuXG4vLyBUaGlzIHdheSwgd2UgZW5zdXJlIGEgRE9NIGVsZW1lbnQgaXMgdmlzaWJsZSB0byBwb3NpdGlvbiB0aGUgcG9wb3ZlciBmcm9tLlxuLy9cbi8vIFNlZSBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvcHVsbC8xMjc5NCBhbmRcbi8vIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9wdWxsLzE0NTU5IGZvciBtb3JlIGluZm9ybWF0aW9uLlxuXG5bZGF0YS10b2dnbGU9XCJidXR0b25zXCJdIHtcbiAgPiAuYnRuLFxuICA+IC5idG4tZ3JvdXAgPiAuYnRuIHtcbiAgICBpbnB1dFt0eXBlPVwicmFkaW9cIl0sXG4gICAgaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdIHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIGNsaXA6IHJlY3QoMCwwLDAsMCk7XG4gICAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICB9XG4gIH1cbn1cbiIsIi8vXG4vLyBCYXNlIHN0eWxlc1xuLy9cblxuLmlucHV0LWdyb3VwIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBmbGV4O1xuICB3aWR0aDogMTAwJTtcblxuICAuZm9ybS1jb250cm9sIHtcbiAgICAvLyBFbnN1cmUgdGhhdCB0aGUgaW5wdXQgaXMgYWx3YXlzIGFib3ZlIHRoZSAqYXBwZW5kZWQqIGFkZG9uIGJ1dHRvbiBmb3JcbiAgICAvLyBwcm9wZXIgYm9yZGVyIGNvbG9ycy5cbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgei1pbmRleDogMjtcbiAgICBmbGV4OiAxIDEgYXV0bztcbiAgICAvLyBBZGQgd2lkdGggMSUgYW5kIGZsZXgtYmFzaXMgYXV0byB0byBlbnN1cmUgdGhhdCBidXR0b24gd2lsbCBub3Qgd3JhcCBvdXRcbiAgICAvLyB0aGUgY29sdW1uLiBBcHBsaWVzIHRvIElFIEVkZ2UrIGFuZCBGaXJlZm94LiBDaHJvbWUgZG9lcyBub3QgcmVxdWlyZSB0aGlzLlxuICAgIHdpZHRoOiAxJTtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuXG4gICAgLy8gQnJpbmcgdGhlIFwiYWN0aXZlXCIgZm9ybSBjb250cm9sIHRvIHRoZSBmcm9udFxuICAgIEBpbmNsdWRlIGhvdmVyLWZvY3VzLWFjdGl2ZSB7XG4gICAgICB6LWluZGV4OiAzO1xuICAgIH1cbiAgfVxufVxuXG4uaW5wdXQtZ3JvdXAtYWRkb24sXG4uaW5wdXQtZ3JvdXAtYnRuLFxuLmlucHV0LWdyb3VwIC5mb3JtLWNvbnRyb2wge1xuICAvLyBWZXJ0aWNhbGx5IGNlbnRlcnMgdGhlIGNvbnRlbnQgb2YgdGhlIGFkZG9ucyB3aXRoaW4gdGhlIGlucHV0IGdyb3VwXG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuXG4gICY6bm90KDpmaXJzdC1jaGlsZCk6bm90KDpsYXN0LWNoaWxkKSB7XG4gICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygwKTtcbiAgfVxufVxuXG4uaW5wdXQtZ3JvdXAtYWRkb24sXG4uaW5wdXQtZ3JvdXAtYnRuIHtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTsgLy8gTWF0Y2ggdGhlIGlucHV0c1xufVxuXG5cbi8vIFNpemluZyBvcHRpb25zXG4vL1xuLy8gUmVtaXggdGhlIGRlZmF1bHQgZm9ybSBjb250cm9sIHNpemluZyBjbGFzc2VzIGludG8gbmV3IG9uZXMgZm9yIGVhc2llclxuLy8gbWFuaXB1bGF0aW9uLlxuXG4uaW5wdXQtZ3JvdXAtbGcgPiAuZm9ybS1jb250cm9sLFxuLmlucHV0LWdyb3VwLWxnID4gLmlucHV0LWdyb3VwLWFkZG9uLFxuLmlucHV0LWdyb3VwLWxnID4gLmlucHV0LWdyb3VwLWJ0biA+IC5idG4ge1xuICBAZXh0ZW5kIC5mb3JtLWNvbnRyb2wtbGc7XG59XG4uaW5wdXQtZ3JvdXAtc20gPiAuZm9ybS1jb250cm9sLFxuLmlucHV0LWdyb3VwLXNtID4gLmlucHV0LWdyb3VwLWFkZG9uLFxuLmlucHV0LWdyb3VwLXNtID4gLmlucHV0LWdyb3VwLWJ0biA+IC5idG4ge1xuICBAZXh0ZW5kIC5mb3JtLWNvbnRyb2wtc207XG59XG5cblxuLy9cbi8vIFRleHQgaW5wdXQgZ3JvdXBzXG4vL1xuXG4uaW5wdXQtZ3JvdXAtYWRkb24ge1xuICBwYWRkaW5nOiAkaW5wdXQtcGFkZGluZy15ICRpbnB1dC1wYWRkaW5nLXg7XG4gIG1hcmdpbi1ib3R0b206IDA7IC8vIEFsbG93IHVzZSBvZiA8bGFiZWw+IGVsZW1lbnRzIGJ5IG92ZXJyaWRpbmcgb3VyIGRlZmF1bHQgbWFyZ2luLWJvdHRvbVxuICBmb250LXNpemU6ICRmb250LXNpemUtYmFzZTsgLy8gTWF0Y2ggaW5wdXRzXG4gIGZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtbm9ybWFsO1xuICBsaW5lLWhlaWdodDogJGlucHV0LWxpbmUtaGVpZ2h0O1xuICBjb2xvcjogJGlucHV0LWNvbG9yO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGJhY2tncm91bmQtY29sb3I6ICRpbnB1dC1ncm91cC1hZGRvbi1iZztcbiAgYm9yZGVyOiAkaW5wdXQtYnRuLWJvcmRlci13aWR0aCBzb2xpZCAkaW5wdXQtZ3JvdXAtYWRkb24tYm9yZGVyLWNvbG9yO1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRpbnB1dC1ib3JkZXItcmFkaXVzKTtcblxuICAvLyBTaXppbmdcbiAgJi5mb3JtLWNvbnRyb2wtc20ge1xuICAgIHBhZGRpbmc6ICRpbnB1dC1wYWRkaW5nLXktc20gJGlucHV0LXBhZGRpbmcteC1zbTtcbiAgICBmb250LXNpemU6ICRmb250LXNpemUtc207XG4gICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkaW5wdXQtYm9yZGVyLXJhZGl1cy1zbSk7XG4gIH1cbiAgJi5mb3JtLWNvbnRyb2wtbGcge1xuICAgIHBhZGRpbmc6ICRpbnB1dC1wYWRkaW5nLXktbGcgJGlucHV0LXBhZGRpbmcteC1sZztcbiAgICBmb250LXNpemU6ICRmb250LXNpemUtbGc7XG4gICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkaW5wdXQtYm9yZGVyLXJhZGl1cy1sZyk7XG4gIH1cblxuICAvLyBzY3NzLWxpbnQ6ZGlzYWJsZSBRdWFsaWZ5aW5nRWxlbWVudFxuICAvLyBOdWtlIGRlZmF1bHQgbWFyZ2lucyBmcm9tIGNoZWNrYm94ZXMgYW5kIHJhZGlvcyB0byB2ZXJ0aWNhbGx5IGNlbnRlciB3aXRoaW4uXG4gIGlucHV0W3R5cGU9XCJyYWRpb1wiXSxcbiAgaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdIHtcbiAgICBtYXJnaW4tdG9wOiAwO1xuICB9XG4gIC8vIHNjc3MtbGludDplbmFibGUgUXVhbGlmeWluZ0VsZW1lbnRcbn1cblxuXG4vL1xuLy8gUmVzZXQgcm91bmRlZCBjb3JuZXJzXG4vL1xuXG4uaW5wdXQtZ3JvdXAgLmZvcm0tY29udHJvbDpub3QoOmxhc3QtY2hpbGQpLFxuLmlucHV0LWdyb3VwLWFkZG9uOm5vdCg6bGFzdC1jaGlsZCksXG4uaW5wdXQtZ3JvdXAtYnRuOm5vdCg6bGFzdC1jaGlsZCkgPiAuYnRuLFxuLmlucHV0LWdyb3VwLWJ0bjpub3QoOmxhc3QtY2hpbGQpID4gLmJ0bi1ncm91cCA+IC5idG4sXG4uaW5wdXQtZ3JvdXAtYnRuOm5vdCg6bGFzdC1jaGlsZCkgPiAuZHJvcGRvd24tdG9nZ2xlLFxuLmlucHV0LWdyb3VwLWJ0bjpub3QoOmZpcnN0LWNoaWxkKSA+IC5idG46bm90KDpsYXN0LWNoaWxkKTpub3QoLmRyb3Bkb3duLXRvZ2dsZSksXG4uaW5wdXQtZ3JvdXAtYnRuOm5vdCg6Zmlyc3QtY2hpbGQpID4gLmJ0bi1ncm91cDpub3QoOmxhc3QtY2hpbGQpID4gLmJ0biB7XG4gIEBpbmNsdWRlIGJvcmRlci1yaWdodC1yYWRpdXMoMCk7XG59XG4uaW5wdXQtZ3JvdXAtYWRkb246bm90KDpsYXN0LWNoaWxkKSB7XG4gIGJvcmRlci1yaWdodDogMDtcbn1cbi5pbnB1dC1ncm91cCAuZm9ybS1jb250cm9sOm5vdCg6Zmlyc3QtY2hpbGQpLFxuLmlucHV0LWdyb3VwLWFkZG9uOm5vdCg6Zmlyc3QtY2hpbGQpLFxuLmlucHV0LWdyb3VwLWJ0bjpub3QoOmZpcnN0LWNoaWxkKSA+IC5idG4sXG4uaW5wdXQtZ3JvdXAtYnRuOm5vdCg6Zmlyc3QtY2hpbGQpID4gLmJ0bi1ncm91cCA+IC5idG4sXG4uaW5wdXQtZ3JvdXAtYnRuOm5vdCg6Zmlyc3QtY2hpbGQpID4gLmRyb3Bkb3duLXRvZ2dsZSxcbi5pbnB1dC1ncm91cC1idG46bm90KDpsYXN0LWNoaWxkKSA+IC5idG46bm90KDpmaXJzdC1jaGlsZCksXG4uaW5wdXQtZ3JvdXAtYnRuOm5vdCg6bGFzdC1jaGlsZCkgPiAuYnRuLWdyb3VwOm5vdCg6Zmlyc3QtY2hpbGQpID4gLmJ0biB7XG4gIEBpbmNsdWRlIGJvcmRlci1sZWZ0LXJhZGl1cygwKTtcbn1cbi5mb3JtLWNvbnRyb2wgKyAuaW5wdXQtZ3JvdXAtYWRkb246bm90KDpmaXJzdC1jaGlsZCkge1xuICBib3JkZXItbGVmdDogMDtcbn1cblxuLy9cbi8vIEJ1dHRvbiBpbnB1dCBncm91cHNcbi8vXG5cbi5pbnB1dC1ncm91cC1idG4ge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIC8vIEphbmtpbHkgcHJldmVudCBpbnB1dCBidXR0b24gZ3JvdXBzIGZyb20gd3JhcHBpbmcgd2l0aCBgd2hpdGUtc3BhY2VgIGFuZFxuICAvLyBgZm9udC1zaXplYCBpbiBjb21iaW5hdGlvbiB3aXRoIGBpbmxpbmUtYmxvY2tgIG9uIGJ1dHRvbnMuXG4gIGZvbnQtc2l6ZTogMDtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcblxuICAvLyBOZWdhdGl2ZSBtYXJnaW4gZm9yIHNwYWNpbmcsIHBvc2l0aW9uIGZvciBicmluZ2luZyBob3ZlcmVkL2ZvY3VzZWQvYWN0aXZlZFxuICAvLyBlbGVtZW50IGFib3ZlIHRoZSBzaWJsaW5ncy5cbiAgPiAuYnRuIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgLy8gVmVydGljYWxseSBzdHJldGNoIHRoZSBidXR0b24gYW5kIGNlbnRlciBpdHMgY29udGVudFxuICAgIGZsZXg6IDE7XG5cbiAgICArIC5idG4ge1xuICAgICAgbWFyZ2luLWxlZnQ6ICgtJGlucHV0LWJ0bi1ib3JkZXItd2lkdGgpO1xuICAgIH1cblxuICAgIC8vIEJyaW5nIHRoZSBcImFjdGl2ZVwiIGJ1dHRvbiB0byB0aGUgZnJvbnRcbiAgICBAaW5jbHVkZSBob3Zlci1mb2N1cy1hY3RpdmUge1xuICAgICAgei1pbmRleDogMztcbiAgICB9XG4gIH1cblxuICAvLyBOZWdhdGl2ZSBtYXJnaW4gdG8gb25seSBoYXZlIGEgc2luZ2xlLCBzaGFyZWQgYm9yZGVyIGJldHdlZW4gdGhlIHR3b1xuICAmOm5vdCg6bGFzdC1jaGlsZCkge1xuICAgID4gLmJ0bixcbiAgICA+IC5idG4tZ3JvdXAge1xuICAgICAgbWFyZ2luLXJpZ2h0OiAoLSRpbnB1dC1idG4tYm9yZGVyLXdpZHRoKTtcbiAgICB9XG4gIH1cbiAgJjpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgPiAuYnRuLFxuICAgID4gLmJ0bi1ncm91cCB7XG4gICAgICB6LWluZGV4OiAyO1xuICAgICAgbWFyZ2luLWxlZnQ6ICgtJGlucHV0LWJ0bi1ib3JkZXItd2lkdGgpO1xuICAgICAgLy8gQmVjYXVzZSBzcGVjaWZpY2l0eVxuICAgICAgQGluY2x1ZGUgaG92ZXItZm9jdXMtYWN0aXZlIHtcbiAgICAgICAgei1pbmRleDogMztcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIi8vIHNjc3MtbGludDpkaXNhYmxlIFByb3BlcnR5Q291bnRcblxuLy8gRW1iZWRkZWQgaWNvbnMgZnJvbSBPcGVuIEljb25pYy5cbi8vIFJlbGVhc2VkIHVuZGVyIE1JVCBhbmQgY29weXJpZ2h0IDIwMTQgV2F5YnVyeS5cbi8vIGh0dHBzOi8vdXNlaWNvbmljLmNvbS9vcGVuXG5cblxuLy8gQ2hlY2tib3hlcyBhbmQgcmFkaW9zXG4vL1xuLy8gQmFzZSBjbGFzcyB0YWtlcyBjYXJlIG9mIGFsbCB0aGUga2V5IGJlaGF2aW9yYWwgYXNwZWN0cy5cblxuLmN1c3RvbS1jb250cm9sIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgbWluLWhlaWdodDogKDFyZW0gKiAkbGluZS1oZWlnaHQtYmFzZSk7XG4gIHBhZGRpbmctbGVmdDogJGN1c3RvbS1jb250cm9sLWd1dHRlcjtcbiAgbWFyZ2luLXJpZ2h0OiAkY3VzdG9tLWNvbnRyb2wtc3BhY2VyLXg7XG4gIGN1cnNvcjogcG9pbnRlcjtcbn1cblxuLmN1c3RvbS1jb250cm9sLWlucHV0IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB6LWluZGV4OiAtMTsgLy8gUHV0IHRoZSBpbnB1dCBiZWhpbmQgdGhlIGxhYmVsIHNvIGl0IGRvZXNuJ3Qgb3ZlcmxheSB0ZXh0XG4gIG9wYWNpdHk6IDA7XG5cbiAgJjpjaGVja2VkIH4gLmN1c3RvbS1jb250cm9sLWluZGljYXRvciB7XG4gICAgY29sb3I6ICRjdXN0b20tY29udHJvbC1jaGVja2VkLWluZGljYXRvci1jb2xvcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY3VzdG9tLWNvbnRyb2wtY2hlY2tlZC1pbmRpY2F0b3ItYmc7XG4gICAgQGluY2x1ZGUgYm94LXNoYWRvdygkY3VzdG9tLWNvbnRyb2wtY2hlY2tlZC1pbmRpY2F0b3ItYm94LXNoYWRvdyk7XG4gIH1cblxuICAmOmZvY3VzIH4gLmN1c3RvbS1jb250cm9sLWluZGljYXRvciB7XG4gICAgLy8gdGhlIG1peGluIGlzIG5vdCB1c2VkIGhlcmUgdG8gbWFrZSBzdXJlIHRoZXJlIGlzIGZlZWRiYWNrXG4gICAgYm94LXNoYWRvdzogJGN1c3RvbS1jb250cm9sLWZvY3VzLWluZGljYXRvci1ib3gtc2hhZG93O1xuICB9XG5cbiAgJjphY3RpdmUgfiAuY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yIHtcbiAgICBjb2xvcjogJGN1c3RvbS1jb250cm9sLWFjdGl2ZS1pbmRpY2F0b3ItY29sb3I7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGN1c3RvbS1jb250cm9sLWFjdGl2ZS1pbmRpY2F0b3ItYmc7XG4gICAgQGluY2x1ZGUgYm94LXNoYWRvdygkY3VzdG9tLWNvbnRyb2wtYWN0aXZlLWluZGljYXRvci1ib3gtc2hhZG93KTtcbiAgfVxuXG4gICY6ZGlzYWJsZWQge1xuICAgIH4gLmN1c3RvbS1jb250cm9sLWluZGljYXRvciB7XG4gICAgICBjdXJzb3I6ICRjdXN0b20tY29udHJvbC1kaXNhYmxlZC1jdXJzb3I7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY3VzdG9tLWNvbnRyb2wtZGlzYWJsZWQtaW5kaWNhdG9yLWJnO1xuICAgIH1cblxuICAgIH4gLmN1c3RvbS1jb250cm9sLWRlc2NyaXB0aW9uIHtcbiAgICAgIGNvbG9yOiAkY3VzdG9tLWNvbnRyb2wtZGlzYWJsZWQtZGVzY3JpcHRpb24tY29sb3I7XG4gICAgICBjdXJzb3I6ICRjdXN0b20tY29udHJvbC1kaXNhYmxlZC1jdXJzb3I7XG4gICAgfVxuICB9XG59XG5cbi8vIEN1c3RvbSBpbmRpY2F0b3Jcbi8vXG4vLyBHZW5lcmF0ZXMgYSBzaGFkb3cgZWxlbWVudCB0byBjcmVhdGUgb3VyIG1ha2VzaGlmdCBjaGVja2JveC9yYWRpbyBiYWNrZ3JvdW5kLlxuXG4uY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6ICgoJGxpbmUtaGVpZ2h0LWJhc2UgLSAkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLXNpemUpIC8gMik7XG4gIGxlZnQ6IDA7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1zaXplO1xuICBoZWlnaHQ6ICRjdXN0b20tY29udHJvbC1pbmRpY2F0b3Itc2l6ZTtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gIHVzZXItc2VsZWN0OiBub25lO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWJnO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXIgY2VudGVyO1xuICBiYWNrZ3JvdW5kLXNpemU6ICRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItYmctc2l6ZTtcbiAgQGluY2x1ZGUgYm94LXNoYWRvdygkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWJveC1zaGFkb3cpO1xufVxuXG4vLyBDaGVja2JveGVzXG4vL1xuLy8gVHdlYWsganVzdCBhIGZldyB0aGluZ3MgZm9yIGNoZWNrYm94ZXMuXG5cbi5jdXN0b20tY2hlY2tib3gge1xuICAuY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yIHtcbiAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRjdXN0b20tY2hlY2tib3gtcmFkaXVzKTtcbiAgfVxuXG4gIC5jdXN0b20tY29udHJvbC1pbnB1dDpjaGVja2VkIH4gLmN1c3RvbS1jb250cm9sLWluZGljYXRvciB7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogJGN1c3RvbS1jaGVja2JveC1jaGVja2VkLWljb247XG4gIH1cblxuICAuY3VzdG9tLWNvbnRyb2wtaW5wdXQ6aW5kZXRlcm1pbmF0ZSB+IC5jdXN0b20tY29udHJvbC1pbmRpY2F0b3Ige1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRjdXN0b20tY2hlY2tib3gtaW5kZXRlcm1pbmF0ZS1iZztcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiAkY3VzdG9tLWNoZWNrYm94LWluZGV0ZXJtaW5hdGUtaWNvbjtcbiAgICBAaW5jbHVkZSBib3gtc2hhZG93KCRjdXN0b20tY2hlY2tib3gtaW5kZXRlcm1pbmF0ZS1ib3gtc2hhZG93KTtcbiAgfVxufVxuXG4vLyBSYWRpb3Ncbi8vXG4vLyBUd2VhayBqdXN0IGEgZmV3IHRoaW5ncyBmb3IgcmFkaW9zLlxuXG4uY3VzdG9tLXJhZGlvIHtcbiAgLmN1c3RvbS1jb250cm9sLWluZGljYXRvciB7XG4gICAgYm9yZGVyLXJhZGl1czogJGN1c3RvbS1yYWRpby1yYWRpdXM7XG4gIH1cblxuICAuY3VzdG9tLWNvbnRyb2wtaW5wdXQ6Y2hlY2tlZCB+IC5jdXN0b20tY29udHJvbC1pbmRpY2F0b3Ige1xuICAgIGJhY2tncm91bmQtaW1hZ2U6ICRjdXN0b20tcmFkaW8tY2hlY2tlZC1pY29uO1xuICB9XG59XG5cblxuLy8gTGF5b3V0IG9wdGlvbnNcbi8vXG4vLyBCeSBkZWZhdWx0IHJhZGlvcyBhbmQgY2hlY2tib3hlcyBhcmUgYGlubGluZS1ibG9ja2Agd2l0aCBubyBhZGRpdGlvbmFsIHNwYWNpbmdcbi8vIHNldC4gVXNlIHRoZXNlIG9wdGlvbmFsIGNsYXNzZXMgdG8gdHdlYWsgdGhlIGxheW91dC5cblxuLmN1c3RvbS1jb250cm9scy1zdGFja2VkIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcblxuICAuY3VzdG9tLWNvbnRyb2wge1xuICAgIG1hcmdpbi1ib3R0b206ICRjdXN0b20tY29udHJvbC1zcGFjZXIteTtcblxuICAgICsgLmN1c3RvbS1jb250cm9sIHtcbiAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgIH1cbiAgfVxufVxuXG5cbi8vIFNlbGVjdFxuLy9cbi8vIFJlcGxhY2VzIHRoZSBicm93c2VyIGRlZmF1bHQgc2VsZWN0IHdpdGggYSBjdXN0b20gb25lLCBtb3N0bHkgcHVsbGVkIGZyb21cbi8vIGh0dHA6Ly9wcmltZXJjc3MuaW8uXG4vL1xuXG4uY3VzdG9tLXNlbGVjdCB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICAkc2VsZWN0LWJvcmRlci13aWR0aDogKCRib3JkZXItd2lkdGggKiAyKTtcbiAgaGVpZ2h0OiBjYWxjKCN7JGlucHV0LWhlaWdodH0gKyAjeyRzZWxlY3QtYm9yZGVyLXdpZHRofSk7XG4gIHBhZGRpbmc6ICRjdXN0b20tc2VsZWN0LXBhZGRpbmcteSAoJGN1c3RvbS1zZWxlY3QtcGFkZGluZy14ICsgJGN1c3RvbS1zZWxlY3QtaW5kaWNhdG9yLXBhZGRpbmcpICRjdXN0b20tc2VsZWN0LXBhZGRpbmcteSAkY3VzdG9tLXNlbGVjdC1wYWRkaW5nLXg7XG4gIGxpbmUtaGVpZ2h0OiAkY3VzdG9tLXNlbGVjdC1saW5lLWhlaWdodDtcbiAgY29sb3I6ICRjdXN0b20tc2VsZWN0LWNvbG9yO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICBiYWNrZ3JvdW5kOiAkY3VzdG9tLXNlbGVjdC1iZyAkY3VzdG9tLXNlbGVjdC1pbmRpY2F0b3Igbm8tcmVwZWF0IHJpZ2h0ICRjdXN0b20tc2VsZWN0LXBhZGRpbmcteCBjZW50ZXI7XG4gIGJhY2tncm91bmQtc2l6ZTogJGN1c3RvbS1zZWxlY3QtYmctc2l6ZTtcbiAgYm9yZGVyOiAkY3VzdG9tLXNlbGVjdC1ib3JkZXItd2lkdGggc29saWQgJGN1c3RvbS1zZWxlY3QtYm9yZGVyLWNvbG9yO1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRjdXN0b20tc2VsZWN0LWJvcmRlci1yYWRpdXMpO1xuICAvLyBVc2UgdmVuZG9yIHByZWZpeGVzIGFzIGBhcHBlYXJhbmNlYCBpc24ndCBwYXJ0IG9mIHRoZSBDU1Mgc3BlYy5cbiAgLW1vei1hcHBlYXJhbmNlOiBub25lO1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XG5cbiAgJjpmb2N1cyB7XG4gICAgYm9yZGVyLWNvbG9yOiAkY3VzdG9tLXNlbGVjdC1mb2N1cy1ib3JkZXItY29sb3I7XG4gICAgb3V0bGluZTogbm9uZTtcbiAgICBAaW5jbHVkZSBib3gtc2hhZG93KCRjdXN0b20tc2VsZWN0LWZvY3VzLWJveC1zaGFkb3cpO1xuXG4gICAgJjo6LW1zLXZhbHVlIHtcbiAgICAgIC8vIEZvciB2aXN1YWwgY29uc2lzdGVuY3kgd2l0aCBvdGhlciBwbGF0Zm9ybXMvYnJvd3NlcnMsXG4gICAgICAvLyBzdXByZXNzIHRoZSBkZWZhdWx0IHdoaXRlIHRleHQgb24gYmx1ZSBiYWNrZ3JvdW5kIGhpZ2hsaWdodCBnaXZlbiB0b1xuICAgICAgLy8gdGhlIHNlbGVjdGVkIG9wdGlvbiB0ZXh0IHdoZW4gdGhlIChzdGlsbCBjbG9zZWQpIDxzZWxlY3Q+IHJlY2VpdmVzIGZvY3VzXG4gICAgICAvLyBpbiBJRSBhbmQgKHVuZGVyIGNlcnRhaW4gY29uZGl0aW9ucykgRWRnZS5cbiAgICAgIC8vIFNlZSBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzE5Mzk4LlxuICAgICAgY29sb3I6ICRpbnB1dC1jb2xvcjtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRpbnB1dC1iZztcbiAgICB9XG4gIH1cblxuICAmOmRpc2FibGVkIHtcbiAgICBjb2xvcjogJGN1c3RvbS1zZWxlY3QtZGlzYWJsZWQtY29sb3I7XG4gICAgY3Vyc29yOiAkY3Vyc29yLWRpc2FibGVkO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRjdXN0b20tc2VsZWN0LWRpc2FibGVkLWJnO1xuICB9XG5cbiAgLy8gSGlkZXMgdGhlIGRlZmF1bHQgY2FyZXQgaW4gSUUxMVxuICAmOjotbXMtZXhwYW5kIHtcbiAgICBvcGFjaXR5OiAwO1xuICB9XG59XG5cbi5jdXN0b20tc2VsZWN0LXNtIHtcbiAgcGFkZGluZy10b3A6ICRjdXN0b20tc2VsZWN0LXBhZGRpbmcteTtcbiAgcGFkZGluZy1ib3R0b206ICRjdXN0b20tc2VsZWN0LXBhZGRpbmcteTtcbiAgZm9udC1zaXplOiAkY3VzdG9tLXNlbGVjdC1zbS1mb250LXNpemU7XG5cbiAgLy8gJjpub3QoW211bHRpcGxlXSkge1xuICAvLyAgIGhlaWdodDogMjZweDtcbiAgLy8gICBtaW4taGVpZ2h0OiAyNnB4O1xuICAvLyB9XG59XG5cblxuLy8gRmlsZVxuLy9cbi8vIEN1c3RvbSBmaWxlIGlucHV0LlxuXG4uY3VzdG9tLWZpbGUge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6ICRjdXN0b20tZmlsZS1oZWlnaHQ7XG4gIG1hcmdpbi1ib3R0b206IDA7XG4gIGN1cnNvcjogcG9pbnRlcjtcbn1cblxuLmN1c3RvbS1maWxlLWlucHV0IHtcbiAgbWluLXdpZHRoOiAkY3VzdG9tLWZpbGUtd2lkdGg7XG4gIG1heC13aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAkY3VzdG9tLWZpbGUtaGVpZ2h0O1xuICBtYXJnaW46IDA7XG4gIGZpbHRlcjogYWxwaGEob3BhY2l0eSA9IDApO1xuICBvcGFjaXR5OiAwO1xuXG4gICY6Zm9jdXMgfiAuY3VzdG9tLWZpbGUtY29udHJvbCB7XG4gICAgQGluY2x1ZGUgYm94LXNoYWRvdygkY3VzdG9tLWZpbGUtZm9jdXMtYm94LXNoYWRvdyk7XG4gIH1cbn1cblxuLmN1c3RvbS1maWxlLWNvbnRyb2wge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgcmlnaHQ6IDA7XG4gIGxlZnQ6IDA7XG4gIHotaW5kZXg6IDU7XG4gIGhlaWdodDogJGN1c3RvbS1maWxlLWhlaWdodDtcbiAgcGFkZGluZzogJGN1c3RvbS1maWxlLXBhZGRpbmcteCAkY3VzdG9tLWZpbGUtcGFkZGluZy15O1xuICBsaW5lLWhlaWdodDogJGN1c3RvbS1maWxlLWxpbmUtaGVpZ2h0O1xuICBjb2xvcjogJGN1c3RvbS1maWxlLWNvbG9yO1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgdXNlci1zZWxlY3Q6IG5vbmU7XG4gIGJhY2tncm91bmQtY29sb3I6ICRjdXN0b20tZmlsZS1iZztcbiAgYm9yZGVyOiAkY3VzdG9tLWZpbGUtYm9yZGVyLXdpZHRoIHNvbGlkICRjdXN0b20tZmlsZS1ib3JkZXItY29sb3I7XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGN1c3RvbS1maWxlLWJvcmRlci1yYWRpdXMpO1xuICBAaW5jbHVkZSBib3gtc2hhZG93KCRjdXN0b20tZmlsZS1ib3gtc2hhZG93KTtcblxuICBAZWFjaCAkbGFuZywgJHRleHQgaW4gbWFwLWdldCgkY3VzdG9tLWZpbGUtdGV4dCwgcGxhY2Vob2xkZXIpIHtcbiAgICAmOmxhbmcoI3skbGFuZ30pOjphZnRlciB7XG4gICAgICBjb250ZW50OiAkdGV4dDtcbiAgICB9XG4gIH1cblxuICAmOjpiZWZvcmUge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IC0kY3VzdG9tLWZpbGUtYm9yZGVyLXdpZHRoO1xuICAgIHJpZ2h0OiAtJGN1c3RvbS1maWxlLWJvcmRlci13aWR0aDtcbiAgICBib3R0b206IC0kY3VzdG9tLWZpbGUtYm9yZGVyLXdpZHRoO1xuICAgIHotaW5kZXg6IDY7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgaGVpZ2h0OiAkY3VzdG9tLWZpbGUtaGVpZ2h0O1xuICAgIHBhZGRpbmc6ICRjdXN0b20tZmlsZS1wYWRkaW5nLXggJGN1c3RvbS1maWxlLXBhZGRpbmcteTtcbiAgICBsaW5lLWhlaWdodDogJGN1c3RvbS1maWxlLWxpbmUtaGVpZ2h0O1xuICAgIGNvbG9yOiAkY3VzdG9tLWZpbGUtYnV0dG9uLWNvbG9yO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRjdXN0b20tZmlsZS1idXR0b24tYmc7XG4gICAgYm9yZGVyOiAkY3VzdG9tLWZpbGUtYm9yZGVyLXdpZHRoIHNvbGlkICRjdXN0b20tZmlsZS1ib3JkZXItY29sb3I7XG4gICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygwICRjdXN0b20tZmlsZS1ib3JkZXItcmFkaXVzICRjdXN0b20tZmlsZS1ib3JkZXItcmFkaXVzIDApO1xuICB9XG5cbiAgQGVhY2ggJGxhbmcsICR0ZXh0IGluIG1hcC1nZXQoJGN1c3RvbS1maWxlLXRleHQsIGJ1dHRvbi1sYWJlbCkge1xuICAgICY6bGFuZygjeyRsYW5nfSk6OmJlZm9yZSB7XG4gICAgICBjb250ZW50OiAkdGV4dDtcbiAgICB9XG4gIH1cbn1cbiIsIi8vIEJhc2UgY2xhc3Ncbi8vXG4vLyBLaWNrc3RhcnQgYW55IG5hdmlnYXRpb24gY29tcG9uZW50IHdpdGggYSBzZXQgb2Ygc3R5bGUgcmVzZXRzLiBXb3JrcyB3aXRoXG4vLyBgPG5hdj5gcyBvciBgPHVsPmBzLlxuXG4ubmF2IHtcbiAgZGlzcGxheTogZmxleDtcbiAgcGFkZGluZy1sZWZ0OiAwO1xuICBtYXJnaW4tYm90dG9tOiAwO1xuICBsaXN0LXN0eWxlOiBub25lO1xufVxuXG4ubmF2LWxpbmsge1xuICBkaXNwbGF5OiBibG9jaztcbiAgcGFkZGluZzogJG5hdi1saW5rLXBhZGRpbmc7XG5cbiAgQGluY2x1ZGUgaG92ZXItZm9jdXMge1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgfVxuXG4gIC8vIERpc2FibGVkIHN0YXRlIGxpZ2h0ZW5zIHRleHQgYW5kIHJlbW92ZXMgaG92ZXIvdGFiIGVmZmVjdHNcbiAgJi5kaXNhYmxlZCB7XG4gICAgY29sb3I6ICRuYXYtZGlzYWJsZWQtbGluay1jb2xvcjtcbiAgICBjdXJzb3I6ICRjdXJzb3ItZGlzYWJsZWQ7XG4gIH1cbn1cblxuXG4vL1xuLy8gVGFic1xuLy9cblxuLm5hdi10YWJzIHtcbiAgYm9yZGVyLWJvdHRvbTogJG5hdi10YWJzLWJvcmRlci13aWR0aCBzb2xpZCAkbmF2LXRhYnMtYm9yZGVyLWNvbG9yO1xuXG4gIC5uYXYtaXRlbSB7XG4gICAgbWFyZ2luLWJvdHRvbTogLSRuYXYtdGFicy1ib3JkZXItd2lkdGg7XG4gIH1cblxuICAubmF2LWxpbmsge1xuICAgIGJvcmRlcjogJG5hdi10YWJzLWJvcmRlci13aWR0aCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICBAaW5jbHVkZSBib3JkZXItdG9wLXJhZGl1cygkbmF2LXRhYnMtYm9yZGVyLXJhZGl1cyk7XG5cbiAgICBAaW5jbHVkZSBob3Zlci1mb2N1cyB7XG4gICAgICBib3JkZXItY29sb3I6ICRuYXYtdGFicy1saW5rLWhvdmVyLWJvcmRlci1jb2xvciAkbmF2LXRhYnMtbGluay1ob3Zlci1ib3JkZXItY29sb3IgJG5hdi10YWJzLWJvcmRlci1jb2xvcjtcbiAgICB9XG5cbiAgICAmLmRpc2FibGVkIHtcbiAgICAgIGNvbG9yOiAkbmF2LWRpc2FibGVkLWxpbmstY29sb3I7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgfVxuICB9XG5cbiAgLm5hdi1saW5rLmFjdGl2ZSxcbiAgLm5hdi1pdGVtLnNob3cgLm5hdi1saW5rIHtcbiAgICBjb2xvcjogJG5hdi10YWJzLWFjdGl2ZS1saW5rLWhvdmVyLWNvbG9yO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRuYXYtdGFicy1hY3RpdmUtbGluay1ob3Zlci1iZztcbiAgICBib3JkZXItY29sb3I6ICRuYXYtdGFicy1hY3RpdmUtbGluay1ob3Zlci1ib3JkZXItY29sb3IgJG5hdi10YWJzLWFjdGl2ZS1saW5rLWhvdmVyLWJvcmRlci1jb2xvciAkbmF2LXRhYnMtYWN0aXZlLWxpbmstaG92ZXItYmc7XG4gIH1cblxuICAuZHJvcGRvd24tbWVudSB7XG4gICAgLy8gTWFrZSBkcm9wZG93biBib3JkZXIgb3ZlcmxhcCB0YWIgYm9yZGVyXG4gICAgbWFyZ2luLXRvcDogLSRuYXYtdGFicy1ib3JkZXItd2lkdGg7XG4gICAgLy8gUmVtb3ZlIHRoZSB0b3Agcm91bmRlZCBjb3JuZXJzIGhlcmUgc2luY2UgdGhlcmUgaXMgYSBoYXJkIGVkZ2UgYWJvdmUgdGhlIG1lbnVcbiAgICBAaW5jbHVkZSBib3JkZXItdG9wLXJhZGl1cygwKTtcbiAgfVxufVxuXG5cbi8vXG4vLyBQaWxsc1xuLy9cblxuLm5hdi1waWxscyB7XG4gIC5uYXYtbGluayB7XG4gICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkbmF2LXBpbGxzLWJvcmRlci1yYWRpdXMpO1xuICB9XG5cbiAgLm5hdi1saW5rLmFjdGl2ZSxcbiAgLm5hdi1pdGVtLnNob3cgLm5hdi1saW5rIHtcbiAgICBjb2xvcjogJG5hdi1waWxscy1hY3RpdmUtbGluay1jb2xvcjtcbiAgICBjdXJzb3I6IGRlZmF1bHQ7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJG5hdi1waWxscy1hY3RpdmUtbGluay1iZztcbiAgfVxufVxuXG5cbi8vXG4vLyBKdXN0aWZpZWQgdmFyaWFudHNcbi8vXG5cbi5uYXYtZmlsbCB7XG4gIC5uYXYtaXRlbSB7XG4gICAgZmxleDogMSAxIGF1dG87XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB9XG59XG5cbi5uYXYtanVzdGlmaWVkIHtcbiAgLm5hdi1pdGVtIHtcbiAgICBmbGV4OiAxIDEgMTAwJTtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIH1cbn1cblxuXG4vLyBUYWJiYWJsZSB0YWJzXG4vL1xuLy8gSGlkZSB0YWJiYWJsZSBwYW5lcyB0byBzdGFydCwgc2hvdyB0aGVtIHdoZW4gYC5hY3RpdmVgXG5cbi50YWItY29udGVudCB7XG4gID4gLnRhYi1wYW5lIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG4gID4gLmFjdGl2ZSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cbn1cbiIsIi8vIENvbnRlbnRzXG4vL1xuLy8gTmF2YmFyXG4vLyBOYXZiYXIgYnJhbmRcbi8vIE5hdmJhciBuYXZcbi8vIE5hdmJhciB0ZXh0XG4vLyBOYXZiYXIgZGl2aWRlclxuLy8gUmVzcG9uc2l2ZSBuYXZiYXJcbi8vIE5hdmJhciBwb3NpdGlvblxuLy8gTmF2YmFyIHRoZW1lc1xuXG5cbi8vIE5hdmJhclxuLy9cbi8vIFByb3ZpZGUgYSBzdGF0aWMgbmF2YmFyIGZyb20gd2hpY2ggd2UgZXhwYW5kIHRvIGNyZWF0ZSBmdWxsLXdpZHRoLCBmaXhlZCwgYW5kXG4vLyBvdGhlciBuYXZiYXIgdmFyaWF0aW9ucy5cblxuLm5hdmJhciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgcGFkZGluZzogJG5hdmJhci1wYWRkaW5nLXkgJG5hdmJhci1wYWRkaW5nLXg7XG59XG5cblxuLy8gTmF2YmFyIGJyYW5kXG4vL1xuLy8gVXNlZCBmb3IgYnJhbmQsIHByb2plY3QsIG9yIHNpdGUgbmFtZXMuXG5cbi5uYXZiYXItYnJhbmQge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHBhZGRpbmctdG9wOiAuMjVyZW07XG4gIHBhZGRpbmctYm90dG9tOiAuMjVyZW07XG4gIG1hcmdpbi1yaWdodDogJG5hdmJhci1wYWRkaW5nLXg7XG4gIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS1sZztcbiAgbGluZS1oZWlnaHQ6IGluaGVyaXQ7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG5cbiAgQGluY2x1ZGUgaG92ZXItZm9jdXMge1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgfVxufVxuXG5cbi8vIE5hdmJhciBuYXZcbi8vXG4vLyBDdXN0b20gbmF2YmFyIG5hdmlnYXRpb24gKGRvZXNuJ3QgcmVxdWlyZSBgLm5hdmAsIGJ1dCBkb2VzIG1ha2UgdXNlIG9mIGAubmF2LWxpbmtgKS5cblxuLm5hdmJhci1uYXYge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uOyAvLyBjYW5ub3QgdXNlIGBpbmhlcml0YCB0byBnZXQgdGhlIGAubmF2YmFyYHMgdmFsdWVcbiAgcGFkZGluZy1sZWZ0OiAwO1xuICBtYXJnaW4tYm90dG9tOiAwO1xuICBsaXN0LXN0eWxlOiBub25lO1xuXG4gIC5uYXYtbGluayB7XG4gICAgcGFkZGluZy1yaWdodDogMDtcbiAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gIH1cbn1cblxuXG4vLyBOYXZiYXIgdGV4dFxuLy9cbi8vXG5cbi5uYXZiYXItdGV4dCB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgcGFkZGluZy10b3A6ICAgIC40MjVyZW07XG4gIHBhZGRpbmctYm90dG9tOiAuNDI1cmVtO1xufVxuXG5cbi8vIFJlc3BvbnNpdmUgbmF2YmFyXG4vL1xuLy8gQ3VzdG9tIHN0eWxlcyBmb3IgcmVzcG9uc2l2ZSBjb2xsYXBzaW5nIGFuZCB0b2dnbGluZyBvZiBuYXZiYXIgY29udGVudHMuXG4vLyBQb3dlcmVkIGJ5IHRoZSBjb2xsYXBzZSBCb290c3RyYXAgSmF2YVNjcmlwdCBwbHVnaW4uXG5cbi8vIEJ1dHRvbiBmb3IgdG9nZ2xpbmcgdGhlIG5hdmJhciB3aGVuIGluIGl0cyBjb2xsYXBzZWQgc3RhdGVcbi5uYXZiYXItdG9nZ2xlciB7XG4gIGFsaWduLXNlbGY6IGZsZXgtc3RhcnQ7IC8vIFByZXZlbnQgdG9nZ2xlciBmcm9tIGdyb3dpbmcgdG8gZnVsbCB3aWR0aCB3aGVuIGl0J3MgdGhlIG9ubHkgdmlzaWJsZSBuYXZiYXIgY2hpbGRcbiAgcGFkZGluZzogJG5hdmJhci10b2dnbGVyLXBhZGRpbmcteSAkbmF2YmFyLXRvZ2dsZXItcGFkZGluZy14O1xuICBmb250LXNpemU6ICRuYXZiYXItdG9nZ2xlci1mb250LXNpemU7XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDsgLy8gcmVtb3ZlIGRlZmF1bHQgYnV0dG9uIHN0eWxlXG4gIGJvcmRlcjogJGJvcmRlci13aWR0aCBzb2xpZCB0cmFuc3BhcmVudDsgLy8gcmVtb3ZlIGRlZmF1bHQgYnV0dG9uIHN0eWxlXG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJG5hdmJhci10b2dnbGVyLWJvcmRlci1yYWRpdXMpO1xuXG4gIEBpbmNsdWRlIGhvdmVyLWZvY3VzIHtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIH1cbn1cblxuLy8gS2VlcCBhcyBhIHNlcGFyYXRlIGVsZW1lbnQgc28gZm9sa3MgY2FuIGVhc2lseSBvdmVycmlkZSBpdCB3aXRoIGFub3RoZXIgaWNvblxuLy8gb3IgaW1hZ2UgZmlsZSBhcyBuZWVkZWQuXG4ubmF2YmFyLXRvZ2dsZXItaWNvbiB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgd2lkdGg6IDEuNWVtO1xuICBoZWlnaHQ6IDEuNWVtO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICBjb250ZW50OiBcIlwiO1xuICBiYWNrZ3JvdW5kOiBuby1yZXBlYXQgY2VudGVyIGNlbnRlcjtcbiAgYmFja2dyb3VuZC1zaXplOiAxMDAlIDEwMCU7XG59XG5cbi8vIFVzZSBgcG9zaXRpb25gIG9uIHRoZSB0b2dnbGVyIHRvIHByZXZlbnQgaXQgZnJvbSBiZWluZyBhdXRvIHBsYWNlZCBhcyBhIGZsZXhcbi8vIGl0ZW0gYW5kIGFsbG93IGVhc3kgcGxhY2VtZW50LlxuLm5hdmJhci10b2dnbGVyLWxlZnQge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGxlZnQ6ICRuYXZiYXItcGFkZGluZy14O1xufVxuLm5hdmJhci10b2dnbGVyLXJpZ2h0IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICByaWdodDogJG5hdmJhci1wYWRkaW5nLXg7XG59XG5cbi8vIEdlbmVyYXRlIHNlcmllcyBvZiBgLm5hdmJhci10b2dnbGVhYmxlLSpgIHJlc3BvbnNpdmUgY2xhc3NlcyBmb3IgY29uZmlndXJpbmdcbi8vIHdoZXJlIHlvdXIgbmF2YmFyIGNvbGxhcHNlcy5cbi5uYXZiYXItdG9nZ2xlYWJsZSB7XG4gIEBlYWNoICRicmVha3BvaW50IGluIG1hcC1rZXlzKCRncmlkLWJyZWFrcG9pbnRzKSB7XG4gICAgJG5leHQ6IGJyZWFrcG9pbnQtbmV4dCgkYnJlYWtwb2ludCwgJGdyaWQtYnJlYWtwb2ludHMpO1xuICAgICRpbmZpeDogYnJlYWtwb2ludC1pbmZpeCgkYnJlYWtwb2ludCwgJGdyaWQtYnJlYWtwb2ludHMpO1xuXG4gICAgJiN7JGluZml4fSB7XG4gICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24oJGJyZWFrcG9pbnQpIHtcbiAgICAgICAgLm5hdmJhci1uYXYge1xuICAgICAgICAgIC5kcm9wZG93bi1tZW51IHtcbiAgICAgICAgICAgIHBvc2l0aW9uOiBzdGF0aWM7XG4gICAgICAgICAgICBmbG9hdDogbm9uZTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICA+IC5jb250YWluZXIge1xuICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gICAgICAgICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoJG5leHQpIHtcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgICAgICAgZmxleC13cmFwOiBub3dyYXA7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cbiAgICAgICAgLm5hdmJhci1uYXYge1xuICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG5cbiAgICAgICAgICAubmF2LWxpbmsge1xuICAgICAgICAgICAgcGFkZGluZy1yaWdodDogLjVyZW07XG4gICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IC41cmVtO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC8vIEZvciBuZXN0aW5nIGNvbnRhaW5lcnMsIGhhdmUgdG8gcmVkZWNsYXJlIGZvciBhbGlnbm1lbnQgcHVycG9zZXNcbiAgICAgICAgPiAuY29udGFpbmVyIHtcbiAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgIGZsZXgtd3JhcDogbm93cmFwO1xuICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgIH1cblxuICAgICAgICAvLyBzY3NzLWxpbnQ6ZGlzYWJsZSBJbXBvcnRhbnRSdWxlXG4gICAgICAgIC5uYXZiYXItY29sbGFwc2Uge1xuICAgICAgICAgIGRpc3BsYXk6IGZsZXggIWltcG9ydGFudDtcbiAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgfVxuICAgICAgICAvLyBzY3NzLWxpbnQ6ZW5hYmxlIEltcG9ydGFudFJ1bGVcblxuICAgICAgICAubmF2YmFyLXRvZ2dsZXIge1xuICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuXG4vLyBOYXZiYXIgdGhlbWVzXG4vL1xuLy8gU3R5bGVzIGZvciBzd2l0Y2hpbmcgYmV0d2VlbiBuYXZiYXJzIHdpdGggbGlnaHQgb3IgZGFyayBiYWNrZ3JvdW5kLlxuXG4vLyBEYXJrIGxpbmtzIGFnYWluc3QgYSBsaWdodCBiYWNrZ3JvdW5kXG4ubmF2YmFyLWxpZ2h0IHtcbiAgLm5hdmJhci1icmFuZCxcbiAgLm5hdmJhci10b2dnbGVyIHtcbiAgICBjb2xvcjogJG5hdmJhci1saWdodC1hY3RpdmUtY29sb3I7XG5cbiAgICBAaW5jbHVkZSBob3Zlci1mb2N1cyB7XG4gICAgICBjb2xvcjogJG5hdmJhci1saWdodC1hY3RpdmUtY29sb3I7XG4gICAgfVxuICB9XG5cbiAgLm5hdmJhci1uYXYge1xuICAgIC5uYXYtbGluayB7XG4gICAgICBjb2xvcjogJG5hdmJhci1saWdodC1jb2xvcjtcblxuICAgICAgQGluY2x1ZGUgaG92ZXItZm9jdXMge1xuICAgICAgICBjb2xvcjogJG5hdmJhci1saWdodC1ob3Zlci1jb2xvcjtcbiAgICAgIH1cblxuICAgICAgJi5kaXNhYmxlZCB7XG4gICAgICAgIGNvbG9yOiAkbmF2YmFyLWxpZ2h0LWRpc2FibGVkLWNvbG9yO1xuICAgICAgfVxuICAgIH1cblxuICAgIC5vcGVuID4gLm5hdi1saW5rLFxuICAgIC5hY3RpdmUgPiAubmF2LWxpbmssXG4gICAgLm5hdi1saW5rLm9wZW4sXG4gICAgLm5hdi1saW5rLmFjdGl2ZSB7XG4gICAgICBjb2xvcjogJG5hdmJhci1saWdodC1hY3RpdmUtY29sb3I7XG4gICAgfVxuICB9XG5cbiAgLm5hdmJhci10b2dnbGVyIHtcbiAgICBib3JkZXItY29sb3I6ICRuYXZiYXItbGlnaHQtdG9nZ2xlci1ib3JkZXI7XG4gIH1cblxuICAubmF2YmFyLXRvZ2dsZXItaWNvbiB7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogJG5hdmJhci1saWdodC10b2dnbGVyLWJnO1xuICB9XG5cbiAgLm5hdmJhci10ZXh0IHtcbiAgICBjb2xvcjogJG5hdmJhci1saWdodC1jb2xvcjtcbiAgfVxufVxuXG4vLyBXaGl0ZSBsaW5rcyBhZ2FpbnN0IGEgZGFyayBiYWNrZ3JvdW5kXG4ubmF2YmFyLWludmVyc2Uge1xuICAubmF2YmFyLWJyYW5kLFxuICAubmF2YmFyLXRvZ2dsZXIge1xuICAgIGNvbG9yOiAkbmF2YmFyLWludmVyc2UtYWN0aXZlLWNvbG9yO1xuXG4gICAgQGluY2x1ZGUgaG92ZXItZm9jdXMge1xuICAgICAgY29sb3I6ICRuYXZiYXItaW52ZXJzZS1hY3RpdmUtY29sb3I7XG4gICAgfVxuICB9XG5cbiAgLm5hdmJhci1uYXYge1xuICAgIC5uYXYtbGluayB7XG4gICAgICBjb2xvcjogJG5hdmJhci1pbnZlcnNlLWNvbG9yO1xuXG4gICAgICBAaW5jbHVkZSBob3Zlci1mb2N1cyB7XG4gICAgICAgIGNvbG9yOiAkbmF2YmFyLWludmVyc2UtaG92ZXItY29sb3I7XG4gICAgICB9XG5cbiAgICAgICYuZGlzYWJsZWQge1xuICAgICAgICBjb2xvcjogJG5hdmJhci1pbnZlcnNlLWRpc2FibGVkLWNvbG9yO1xuICAgICAgfVxuICAgIH1cblxuICAgIC5vcGVuID4gLm5hdi1saW5rLFxuICAgIC5hY3RpdmUgPiAubmF2LWxpbmssXG4gICAgLm5hdi1saW5rLm9wZW4sXG4gICAgLm5hdi1saW5rLmFjdGl2ZSB7XG4gICAgICBjb2xvcjogJG5hdmJhci1pbnZlcnNlLWFjdGl2ZS1jb2xvcjtcbiAgICB9XG4gIH1cblxuICAubmF2YmFyLXRvZ2dsZXIge1xuICAgIGJvcmRlci1jb2xvcjogJG5hdmJhci1pbnZlcnNlLXRvZ2dsZXItYm9yZGVyO1xuICB9XG5cbiAgLm5hdmJhci10b2dnbGVyLWljb24ge1xuICAgIGJhY2tncm91bmQtaW1hZ2U6ICRuYXZiYXItaW52ZXJzZS10b2dnbGVyLWJnO1xuICB9XG5cbiAgLm5hdmJhci10ZXh0IHtcbiAgICBjb2xvcjogJG5hdmJhci1pbnZlcnNlLWNvbG9yO1xuICB9XG59XG4iLCIvL1xuLy8gQmFzZSBzdHlsZXNcbi8vXG5cbi5jYXJkIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkY2FyZC1iZztcbiAgYm9yZGVyOiAkY2FyZC1ib3JkZXItd2lkdGggc29saWQgJGNhcmQtYm9yZGVyLWNvbG9yO1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRjYXJkLWJvcmRlci1yYWRpdXMpO1xufVxuXG4uY2FyZC1ibG9jayB7XG4gIC8vIEVuYWJsZSBgZmxleC1ncm93OiAxYCBmb3IgZGVja3MgYW5kIGdyb3VwcyBzbyB0aGF0IGNhcmQgYmxvY2tzIHRha2UgdXBcbiAgLy8gYXMgbXVjaCBzcGFjZSBhcyBwb3NzaWJsZSwgZW5zdXJpbmcgZm9vdGVycyBhcmUgYWxpZ25lZCB0byB0aGUgYm90dG9tLlxuICBmbGV4OiAxIDEgYXV0bztcbiAgcGFkZGluZzogJGNhcmQtc3BhY2VyLXg7XG59XG5cbi5jYXJkLXRpdGxlIHtcbiAgbWFyZ2luLWJvdHRvbTogJGNhcmQtc3BhY2VyLXk7XG59XG5cbi5jYXJkLXN1YnRpdGxlIHtcbiAgbWFyZ2luLXRvcDogLSgkY2FyZC1zcGFjZXIteSAvIDIpO1xuICBtYXJnaW4tYm90dG9tOiAwO1xufVxuXG4uY2FyZC10ZXh0Omxhc3QtY2hpbGQge1xuICBtYXJnaW4tYm90dG9tOiAwO1xufVxuXG4uY2FyZC1saW5rIHtcbiAgQGluY2x1ZGUgaG92ZXIge1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgfVxuXG4gICsgLmNhcmQtbGluayB7XG4gICAgbWFyZ2luLWxlZnQ6ICRjYXJkLXNwYWNlci14O1xuICB9XG59XG5cbi5jYXJkIHtcbiAgPiAubGlzdC1ncm91cDpmaXJzdC1jaGlsZCB7XG4gICAgLmxpc3QtZ3JvdXAtaXRlbTpmaXJzdC1jaGlsZCB7XG4gICAgICBAaW5jbHVkZSBib3JkZXItdG9wLXJhZGl1cygkY2FyZC1ib3JkZXItcmFkaXVzKTtcbiAgICB9XG4gIH1cblxuICA+IC5saXN0LWdyb3VwOmxhc3QtY2hpbGQge1xuICAgIC5saXN0LWdyb3VwLWl0ZW06bGFzdC1jaGlsZCB7XG4gICAgICBAaW5jbHVkZSBib3JkZXItYm90dG9tLXJhZGl1cygkY2FyZC1ib3JkZXItcmFkaXVzKTtcbiAgICB9XG4gIH1cbn1cblxuXG4vL1xuLy8gT3B0aW9uYWwgdGV4dHVhbCBjYXBzXG4vL1xuXG4uY2FyZC1oZWFkZXIge1xuICBwYWRkaW5nOiAkY2FyZC1zcGFjZXIteSAkY2FyZC1zcGFjZXIteDtcbiAgbWFyZ2luLWJvdHRvbTogMDsgLy8gUmVtb3ZlcyB0aGUgZGVmYXVsdCBtYXJnaW4tYm90dG9tIG9mIDxoTj5cbiAgYmFja2dyb3VuZC1jb2xvcjogJGNhcmQtY2FwLWJnO1xuICBib3JkZXItYm90dG9tOiAkY2FyZC1ib3JkZXItd2lkdGggc29saWQgJGNhcmQtYm9yZGVyLWNvbG9yO1xuXG4gICY6Zmlyc3QtY2hpbGQge1xuICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGNhcmQtYm9yZGVyLXJhZGl1cy1pbm5lciAkY2FyZC1ib3JkZXItcmFkaXVzLWlubmVyIDAgMCk7XG4gIH1cbn1cblxuLmNhcmQtZm9vdGVyIHtcbiAgcGFkZGluZzogJGNhcmQtc3BhY2VyLXkgJGNhcmQtc3BhY2VyLXg7XG4gIGJhY2tncm91bmQtY29sb3I6ICRjYXJkLWNhcC1iZztcbiAgYm9yZGVyLXRvcDogJGNhcmQtYm9yZGVyLXdpZHRoIHNvbGlkICRjYXJkLWJvcmRlci1jb2xvcjtcblxuICAmOmxhc3QtY2hpbGQge1xuICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoMCAwICRjYXJkLWJvcmRlci1yYWRpdXMtaW5uZXIgJGNhcmQtYm9yZGVyLXJhZGl1cy1pbm5lcik7XG4gIH1cbn1cblxuXG4vL1xuLy8gSGVhZGVyIG5hdnNcbi8vXG5cbi5jYXJkLWhlYWRlci10YWJzIHtcbiAgbWFyZ2luLXJpZ2h0OiAtKCRjYXJkLXNwYWNlci14IC8gMik7XG4gIG1hcmdpbi1ib3R0b206IC0kY2FyZC1zcGFjZXIteTtcbiAgbWFyZ2luLWxlZnQ6IC0oJGNhcmQtc3BhY2VyLXggLyAyKTtcbiAgYm9yZGVyLWJvdHRvbTogMDtcbn1cblxuLmNhcmQtaGVhZGVyLXBpbGxzIHtcbiAgbWFyZ2luLXJpZ2h0OiAtKCRjYXJkLXNwYWNlci14IC8gMik7XG4gIG1hcmdpbi1sZWZ0OiAtKCRjYXJkLXNwYWNlci14IC8gMik7XG59XG5cblxuLy9cbi8vIEJhY2tncm91bmQgdmFyaWF0aW9uc1xuLy9cblxuLmNhcmQtcHJpbWFyeSB7XG4gIEBpbmNsdWRlIGNhcmQtdmFyaWFudCgkYnJhbmQtcHJpbWFyeSwgJGJyYW5kLXByaW1hcnkpO1xufVxuLmNhcmQtc3VjY2VzcyB7XG4gIEBpbmNsdWRlIGNhcmQtdmFyaWFudCgkYnJhbmQtc3VjY2VzcywgJGJyYW5kLXN1Y2Nlc3MpO1xufVxuLmNhcmQtaW5mbyB7XG4gIEBpbmNsdWRlIGNhcmQtdmFyaWFudCgkYnJhbmQtaW5mbywgJGJyYW5kLWluZm8pO1xufVxuLmNhcmQtd2FybmluZyB7XG4gIEBpbmNsdWRlIGNhcmQtdmFyaWFudCgkYnJhbmQtd2FybmluZywgJGJyYW5kLXdhcm5pbmcpO1xufVxuLmNhcmQtZGFuZ2VyIHtcbiAgQGluY2x1ZGUgY2FyZC12YXJpYW50KCRicmFuZC1kYW5nZXIsICRicmFuZC1kYW5nZXIpO1xufVxuXG4vLyBSZW1vdmUgYWxsIGJhY2tncm91bmRzXG4uY2FyZC1vdXRsaW5lLXByaW1hcnkge1xuICBAaW5jbHVkZSBjYXJkLW91dGxpbmUtdmFyaWFudCgkYnRuLXByaW1hcnktYmcpO1xufVxuLmNhcmQtb3V0bGluZS1zZWNvbmRhcnkge1xuICBAaW5jbHVkZSBjYXJkLW91dGxpbmUtdmFyaWFudCgkYnRuLXNlY29uZGFyeS1ib3JkZXIpO1xufVxuLmNhcmQtb3V0bGluZS1pbmZvIHtcbiAgQGluY2x1ZGUgY2FyZC1vdXRsaW5lLXZhcmlhbnQoJGJ0bi1pbmZvLWJnKTtcbn1cbi5jYXJkLW91dGxpbmUtc3VjY2VzcyB7XG4gIEBpbmNsdWRlIGNhcmQtb3V0bGluZS12YXJpYW50KCRidG4tc3VjY2Vzcy1iZyk7XG59XG4uY2FyZC1vdXRsaW5lLXdhcm5pbmcge1xuICBAaW5jbHVkZSBjYXJkLW91dGxpbmUtdmFyaWFudCgkYnRuLXdhcm5pbmctYmcpO1xufVxuLmNhcmQtb3V0bGluZS1kYW5nZXIge1xuICBAaW5jbHVkZSBjYXJkLW91dGxpbmUtdmFyaWFudCgkYnRuLWRhbmdlci1iZyk7XG59XG5cbi8vXG4vLyBJbnZlcnNlIHRleHQgd2l0aGluIGEgY2FyZCBmb3IgdXNlIHdpdGggZGFyayBiYWNrZ3JvdW5kc1xuLy9cblxuLmNhcmQtaW52ZXJzZSB7XG4gIEBpbmNsdWRlIGNhcmQtaW52ZXJzZTtcbn1cblxuLy9cbi8vIEJsb2NrcXVvdGVcbi8vXG5cbi5jYXJkLWJsb2NrcXVvdGUge1xuICBwYWRkaW5nOiAwO1xuICBtYXJnaW4tYm90dG9tOiAwO1xuICBib3JkZXItbGVmdDogMDtcbn1cblxuLy8gQ2FyZCBpbWFnZVxuLmNhcmQtaW1nIHtcbiAgLy8gbWFyZ2luOiAtMS4zMjVyZW07XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGNhcmQtYm9yZGVyLXJhZGl1cy1pbm5lcik7XG59XG4uY2FyZC1pbWctb3ZlcmxheSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICByaWdodDogMDtcbiAgYm90dG9tOiAwO1xuICBsZWZ0OiAwO1xuICBwYWRkaW5nOiAkY2FyZC1pbWctb3ZlcmxheS1wYWRkaW5nO1xufVxuXG5cblxuLy8gQ2FyZCBpbWFnZSBjYXBzXG4uY2FyZC1pbWctdG9wIHtcbiAgQGluY2x1ZGUgYm9yZGVyLXRvcC1yYWRpdXMoJGNhcmQtYm9yZGVyLXJhZGl1cy1pbm5lcik7XG59XG4uY2FyZC1pbWctYm90dG9tIHtcbiAgQGluY2x1ZGUgYm9yZGVyLWJvdHRvbS1yYWRpdXMoJGNhcmQtYm9yZGVyLXJhZGl1cy1pbm5lcik7XG59XG5cblxuLy8gQ2FyZCBkZWNrXG5cbkBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoc20pIHtcbiAgLmNhcmQtZGVjayB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWZsb3c6IHJvdyB3cmFwO1xuXG4gICAgLmNhcmQge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGZsZXg6IDEgMCAwO1xuICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcblxuICAgICAgLy8gU2VsZWN0aXZlbHkgYXBwbHkgaG9yaXpvbnRhbCBtYXJnaW5zIHRvIGNhcmRzIHRvIGF2b2lkIGRvaW5nIHRoZVxuICAgICAgLy8gbmVnYXRpdmUgbWFyZ2luIGRhbmNlIGxpa2Ugb3VyIGdyaWQuIFRoaXMgZGlmZmVycyBmcm9tIHRoZSBncmlkXG4gICAgICAvLyBkdWUgdG8gdGhlIHVzZSBvZiBtYXJnaW5zIGFzIGd1dHRlcnMgaW5zdGVhZCBvZiBwYWRkaW5nLlxuICAgICAgJjpub3QoOmZpcnN0LWNoaWxkKSB7IG1hcmdpbi1sZWZ0OiAkY2FyZC1kZWNrLW1hcmdpbjsgfVxuICAgICAgJjpub3QoOmxhc3QtY2hpbGQpIHsgbWFyZ2luLXJpZ2h0OiAkY2FyZC1kZWNrLW1hcmdpbjsgfVxuICAgIH1cbiAgfVxufVxuXG5cbi8vXG4vLyBDYXJkIGdyb3Vwc1xuLy9cblxuQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChzbSkge1xuICAuY2FyZC1ncm91cCB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWZsb3c6IHJvdyB3cmFwO1xuXG4gICAgLmNhcmQge1xuICAgICAgZmxleDogMSAwIDA7XG5cbiAgICAgICsgLmNhcmQge1xuICAgICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICAgICAgYm9yZGVyLWxlZnQ6IDA7XG4gICAgICB9XG5cbiAgICAgIC8vIEhhbmRsZSByb3VuZGVkIGNvcm5lcnNcbiAgICAgIEBpZiAkZW5hYmxlLXJvdW5kZWQge1xuICAgICAgICAmOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgICBAaW5jbHVkZSBib3JkZXItcmlnaHQtcmFkaXVzKDApO1xuXG4gICAgICAgICAgLmNhcmQtaW1nLXRvcCB7XG4gICAgICAgICAgICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogMDtcbiAgICAgICAgICB9XG4gICAgICAgICAgLmNhcmQtaW1nLWJvdHRvbSB7XG4gICAgICAgICAgICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogMDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgICAgICBAaW5jbHVkZSBib3JkZXItbGVmdC1yYWRpdXMoMCk7XG5cbiAgICAgICAgICAuY2FyZC1pbWctdG9wIHtcbiAgICAgICAgICAgIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IDA7XG4gICAgICAgICAgfVxuICAgICAgICAgIC5jYXJkLWltZy1ib3R0b20ge1xuICAgICAgICAgICAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogMDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAmOm5vdCg6Zmlyc3QtY2hpbGQpOm5vdCg6bGFzdC1jaGlsZCkge1xuICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDA7XG5cbiAgICAgICAgICAuY2FyZC1pbWctdG9wLFxuICAgICAgICAgIC5jYXJkLWltZy1ib3R0b20ge1xuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogMDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuXG4vL1xuLy8gQ29sdW1uc1xuLy9cblxuQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChzbSkge1xuICAuY2FyZC1jb2x1bW5zIHtcbiAgICBjb2x1bW4tY291bnQ6ICRjYXJkLWNvbHVtbnMtY291bnQ7XG4gICAgY29sdW1uLWdhcDogJGNhcmQtY29sdW1ucy1nYXA7XG5cbiAgICAuY2FyZCB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IC8vIERvbid0IGxldCB0aGVtIHZlcnRpY2FsbHkgc3BhbiBtdWx0aXBsZSBjb2x1bW5zXG4gICAgICB3aWR0aDogMTAwJTsgLy8gRG9uJ3QgbGV0IHRoZWlyIHdpZHRoIGNoYW5nZVxuICAgICAgbWFyZ2luLWJvdHRvbTogJGNhcmQtY29sdW1ucy1tYXJnaW47XG4gICAgfVxuICB9XG59XG4iLCIuYnJlYWRjcnVtYiB7XG4gIHBhZGRpbmc6ICRicmVhZGNydW1iLXBhZGRpbmcteSAkYnJlYWRjcnVtYi1wYWRkaW5nLXg7XG4gIG1hcmdpbi1ib3R0b206ICRzcGFjZXIteTtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGJyZWFkY3J1bWItYmc7XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGJvcmRlci1yYWRpdXMpO1xuICBAaW5jbHVkZSBjbGVhcmZpeDtcbn1cblxuLmJyZWFkY3J1bWItaXRlbSB7XG4gIGZsb2F0OiBsZWZ0O1xuXG4gIC8vIFRoZSBzZXBhcmF0b3IgYmV0d2VlbiBicmVhZGNydW1icyAoYnkgZGVmYXVsdCwgYSBmb3J3YXJkLXNsYXNoOiBcIi9cIilcbiAgKyAuYnJlYWRjcnVtYi1pdGVtOjpiZWZvcmUge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jazsgLy8gU3VwcHJlc3MgdW5kZXJsaW5pbmcgb2YgdGhlIHNlcGFyYXRvciBpbiBtb2Rlcm4gYnJvd3NlcnNcbiAgICBwYWRkaW5nLXJpZ2h0OiAkYnJlYWRjcnVtYi1pdGVtLXBhZGRpbmc7XG4gICAgcGFkZGluZy1sZWZ0OiAkYnJlYWRjcnVtYi1pdGVtLXBhZGRpbmc7XG4gICAgY29sb3I6ICRicmVhZGNydW1iLWRpdmlkZXItY29sb3I7XG4gICAgY29udGVudDogXCIjeyRicmVhZGNydW1iLWRpdmlkZXJ9XCI7XG4gIH1cblxuICAvLyBJRTktMTEgaGFjayB0byBwcm9wZXJseSBoYW5kbGUgaHlwZXJsaW5rIHVuZGVybGluZXMgZm9yIGJyZWFkY3J1bWJzIGJ1aWx0XG4gIC8vIHdpdGhvdXQgYDx1bD5gcy4gVGhlIGA6OmJlZm9yZWAgcHNldWRvLWVsZW1lbnQgZ2VuZXJhdGVzIGFuIGVsZW1lbnRcbiAgLy8gKndpdGhpbiogdGhlIC5icmVhZGNydW1iLWl0ZW0gYW5kIHRoZXJlYnkgaW5oZXJpdHMgdGhlIGB0ZXh0LWRlY29yYXRpb25gLlxuICAvL1xuICAvLyBUbyB0cmljayBJRSBpbnRvIHN1cHByZXNzaW5nIHRoZSB1bmRlcmxpbmUsIHdlIGdpdmUgdGhlIHBzZXVkby1lbGVtZW50IGFuXG4gIC8vIHVuZGVybGluZSBhbmQgdGhlbiBpbW1lZGlhdGVseSByZW1vdmUgaXQuXG4gICsgLmJyZWFkY3J1bWItaXRlbTpob3Zlcjo6YmVmb3JlIHtcbiAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgfVxuICArIC5icmVhZGNydW1iLWl0ZW06aG92ZXI6OmJlZm9yZSB7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICB9XG5cbiAgJi5hY3RpdmUge1xuICAgIGNvbG9yOiAkYnJlYWRjcnVtYi1hY3RpdmUtY29sb3I7XG4gIH1cbn1cbiIsIi5wYWdpbmF0aW9uIHtcbiAgZGlzcGxheTogZmxleDtcbiAgLy8gMS0yOiBEaXNhYmxlIGJyb3dzZXIgZGVmYXVsdCBsaXN0IHN0eWxlc1xuICBwYWRkaW5nLWxlZnQ6IDA7IC8vIDFcbiAgbGlzdC1zdHlsZTogbm9uZTsgLy8gMlxuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCk7XG59XG5cbi5wYWdlLWl0ZW0ge1xuICAmOmZpcnN0LWNoaWxkIHtcbiAgICAucGFnZS1saW5rIHtcbiAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgICAgQGluY2x1ZGUgYm9yZGVyLWxlZnQtcmFkaXVzKCRib3JkZXItcmFkaXVzKTtcbiAgICB9XG4gIH1cbiAgJjpsYXN0LWNoaWxkIHtcbiAgICAucGFnZS1saW5rIHtcbiAgICAgIEBpbmNsdWRlIGJvcmRlci1yaWdodC1yYWRpdXMoJGJvcmRlci1yYWRpdXMpO1xuICAgIH1cbiAgfVxuXG4gICYuYWN0aXZlIC5wYWdlLWxpbmsge1xuICAgIHotaW5kZXg6IDI7XG4gICAgY29sb3I6ICRwYWdpbmF0aW9uLWFjdGl2ZS1jb2xvcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkcGFnaW5hdGlvbi1hY3RpdmUtYmc7XG4gICAgYm9yZGVyLWNvbG9yOiAkcGFnaW5hdGlvbi1hY3RpdmUtYm9yZGVyO1xuICB9XG5cbiAgJi5kaXNhYmxlZCAucGFnZS1saW5rIHtcbiAgICBjb2xvcjogJHBhZ2luYXRpb24tZGlzYWJsZWQtY29sb3I7XG4gICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgY3Vyc29yOiAkY3Vyc29yLWRpc2FibGVkOyAvLyBXaGlsZSBgcG9pbnRlci1ldmVudHM6IG5vbmVgIHJlbW92ZXMgdGhlIGN1cnNvciBpbiBtb2Rlcm4gYnJvd3NlcnMsIHdlIHByb3ZpZGUgYSBkaXNhYmxlZCBjdXJzb3IgYXMgYSBmYWxsYmFjay5cbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkcGFnaW5hdGlvbi1kaXNhYmxlZC1iZztcbiAgICBib3JkZXItY29sb3I6ICRwYWdpbmF0aW9uLWRpc2FibGVkLWJvcmRlcjtcbiAgfVxufVxuXG4ucGFnZS1saW5rIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBibG9jaztcbiAgcGFkZGluZzogJHBhZ2luYXRpb24tcGFkZGluZy15ICRwYWdpbmF0aW9uLXBhZGRpbmcteDtcbiAgbWFyZ2luLWxlZnQ6IC0xcHg7XG4gIGxpbmUtaGVpZ2h0OiAkcGFnaW5hdGlvbi1saW5lLWhlaWdodDtcbiAgY29sb3I6ICRwYWdpbmF0aW9uLWNvbG9yO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkcGFnaW5hdGlvbi1iZztcbiAgYm9yZGVyOiAkcGFnaW5hdGlvbi1ib3JkZXItd2lkdGggc29saWQgJHBhZ2luYXRpb24tYm9yZGVyLWNvbG9yO1xuXG4gIEBpbmNsdWRlIGhvdmVyLWZvY3VzIHtcbiAgICBjb2xvcjogJHBhZ2luYXRpb24taG92ZXItY29sb3I7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRwYWdpbmF0aW9uLWhvdmVyLWJnO1xuICAgIGJvcmRlci1jb2xvcjogJHBhZ2luYXRpb24taG92ZXItYm9yZGVyO1xuICB9XG59XG5cblxuLy9cbi8vIFNpemluZ1xuLy9cblxuLnBhZ2luYXRpb24tbGcge1xuICBAaW5jbHVkZSBwYWdpbmF0aW9uLXNpemUoJHBhZ2luYXRpb24tcGFkZGluZy15LWxnLCAkcGFnaW5hdGlvbi1wYWRkaW5nLXgtbGcsICRmb250LXNpemUtbGcsICRsaW5lLWhlaWdodC1sZywgJGJvcmRlci1yYWRpdXMtbGcpO1xufVxuXG4ucGFnaW5hdGlvbi1zbSB7XG4gIEBpbmNsdWRlIHBhZ2luYXRpb24tc2l6ZSgkcGFnaW5hdGlvbi1wYWRkaW5nLXktc20sICRwYWdpbmF0aW9uLXBhZGRpbmcteC1zbSwgJGZvbnQtc2l6ZS1zbSwgJGxpbmUtaGVpZ2h0LXNtLCAkYm9yZGVyLXJhZGl1cy1zbSk7XG59XG4iLCIvLyBCYXNlIGNsYXNzXG4vL1xuLy8gUmVxdWlyZXMgb25lIG9mIHRoZSBjb250ZXh0dWFsLCBjb2xvciBtb2RpZmllciBjbGFzc2VzIGZvciBgY29sb3JgIGFuZFxuLy8gYGJhY2tncm91bmQtY29sb3JgLlxuXG4uYmFkZ2Uge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHBhZGRpbmc6ICRiYWRnZS1wYWRkaW5nLXkgJGJhZGdlLXBhZGRpbmcteDtcbiAgZm9udC1zaXplOiAkYmFkZ2UtZm9udC1zaXplO1xuICBmb250LXdlaWdodDogJGJhZGdlLWZvbnQtd2VpZ2h0O1xuICBsaW5lLWhlaWdodDogMTtcbiAgY29sb3I6ICRiYWRnZS1jb2xvcjtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoKTtcblxuICAvLyBFbXB0eSBiYWRnZXMgY29sbGFwc2UgYXV0b21hdGljYWxseVxuICAmOmVtcHR5IHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG59XG5cbi8vIFF1aWNrIGZpeCBmb3IgYmFkZ2VzIGluIGJ1dHRvbnNcbi5idG4gLmJhZGdlIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB0b3A6IC0xcHg7XG59XG5cbi8vIHNjc3MtbGludDpkaXNhYmxlIFF1YWxpZnlpbmdFbGVtZW50XG4vLyBBZGQgaG92ZXIgZWZmZWN0cywgYnV0IG9ubHkgZm9yIGxpbmtzXG5hLmJhZGdlIHtcbiAgQGluY2x1ZGUgaG92ZXItZm9jdXMge1xuICAgIGNvbG9yOiAkYmFkZ2UtbGluay1ob3Zlci1jb2xvcjtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICB9XG59XG4vLyBzY3NzLWxpbnQ6ZW5hYmxlIFF1YWxpZnlpbmdFbGVtZW50XG5cbi8vIFBpbGwgYmFkZ2VzXG4vL1xuLy8gTWFrZSB0aGVtIGV4dHJhIHJvdW5kZWQgd2l0aCBhIG1vZGlmaWVyIHRvIHJlcGxhY2UgdjMncyBiYWRnZXMuXG5cbi5iYWRnZS1waWxsIHtcbiAgcGFkZGluZy1yaWdodDogJGJhZGdlLXBpbGwtcGFkZGluZy14O1xuICBwYWRkaW5nLWxlZnQ6ICRiYWRnZS1waWxsLXBhZGRpbmcteDtcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkYmFkZ2UtcGlsbC1ib3JkZXItcmFkaXVzKTtcbn1cblxuLy8gQ29sb3JzXG4vL1xuLy8gQ29udGV4dHVhbCB2YXJpYXRpb25zIChsaW5rZWQgYmFkZ2VzIGdldCBkYXJrZXIgb24gOmhvdmVyKS5cblxuLmJhZGdlLWRlZmF1bHQge1xuICBAaW5jbHVkZSBiYWRnZS12YXJpYW50KCRiYWRnZS1kZWZhdWx0LWJnKTtcbn1cblxuLmJhZGdlLXByaW1hcnkge1xuICBAaW5jbHVkZSBiYWRnZS12YXJpYW50KCRiYWRnZS1wcmltYXJ5LWJnKTtcbn1cblxuLmJhZGdlLXN1Y2Nlc3Mge1xuICBAaW5jbHVkZSBiYWRnZS12YXJpYW50KCRiYWRnZS1zdWNjZXNzLWJnKTtcbn1cblxuLmJhZGdlLWluZm8ge1xuICBAaW5jbHVkZSBiYWRnZS12YXJpYW50KCRiYWRnZS1pbmZvLWJnKTtcbn1cblxuLmJhZGdlLXdhcm5pbmcge1xuICBAaW5jbHVkZSBiYWRnZS12YXJpYW50KCRiYWRnZS13YXJuaW5nLWJnKTtcbn1cblxuLmJhZGdlLWRhbmdlciB7XG4gIEBpbmNsdWRlIGJhZGdlLXZhcmlhbnQoJGJhZGdlLWRhbmdlci1iZyk7XG59XG4iLCIuanVtYm90cm9uIHtcbiAgcGFkZGluZzogJGp1bWJvdHJvbi1wYWRkaW5nICgkanVtYm90cm9uLXBhZGRpbmcgLyAyKTtcbiAgbWFyZ2luLWJvdHRvbTogJGp1bWJvdHJvbi1wYWRkaW5nO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkanVtYm90cm9uLWJnO1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRib3JkZXItcmFkaXVzLWxnKTtcblxuICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKHNtKSB7XG4gICAgcGFkZGluZzogKCRqdW1ib3Ryb24tcGFkZGluZyAqIDIpICRqdW1ib3Ryb24tcGFkZGluZztcbiAgfVxufVxuXG4uanVtYm90cm9uLWhyIHtcbiAgYm9yZGVyLXRvcC1jb2xvcjogZGFya2VuKCRqdW1ib3Ryb24tYmcsIDEwJSk7XG59XG5cbi5qdW1ib3Ryb24tZmx1aWQge1xuICBwYWRkaW5nLXJpZ2h0OiAwO1xuICBwYWRkaW5nLWxlZnQ6IDA7XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoMCk7XG59XG4iLCIvL1xuLy8gQmFzZSBzdHlsZXNcbi8vXG5cbi5hbGVydCB7XG4gIHBhZGRpbmc6ICRhbGVydC1wYWRkaW5nLXkgJGFsZXJ0LXBhZGRpbmcteDtcbiAgbWFyZ2luLWJvdHRvbTogJGFsZXJ0LW1hcmdpbi1ib3R0b207XG4gIGJvcmRlcjogJGFsZXJ0LWJvcmRlci13aWR0aCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkYWxlcnQtYm9yZGVyLXJhZGl1cyk7XG59XG5cbi8vIEhlYWRpbmdzIGZvciBsYXJnZXIgYWxlcnRzXG4uYWxlcnQtaGVhZGluZyB7XG4gIC8vIFNwZWNpZmllZCB0byBwcmV2ZW50IGNvbmZsaWN0cyBvZiBjaGFuZ2luZyAkaGVhZGluZ3MtY29sb3JcbiAgY29sb3I6IGluaGVyaXQ7XG59XG5cbi8vIFByb3ZpZGUgY2xhc3MgZm9yIGxpbmtzIHRoYXQgbWF0Y2ggYWxlcnRzXG4uYWxlcnQtbGluayB7XG4gIGZvbnQtd2VpZ2h0OiAkYWxlcnQtbGluay1mb250LXdlaWdodDtcbn1cblxuXG4vLyBEaXNtaXNzaWJsZSBhbGVydHNcbi8vXG4vLyBFeHBhbmQgdGhlIHJpZ2h0IHBhZGRpbmcgYW5kIGFjY291bnQgZm9yIHRoZSBjbG9zZSBidXR0b24ncyBwb3NpdGlvbmluZy5cblxuLmFsZXJ0LWRpc21pc3NpYmxlIHtcbiAgLy8gQWRqdXN0IGNsb3NlIGxpbmsgcG9zaXRpb25cbiAgLmNsb3NlIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgdG9wOiAtJGFsZXJ0LXBhZGRpbmcteTtcbiAgICByaWdodDogLSRhbGVydC1wYWRkaW5nLXg7XG4gICAgcGFkZGluZzogJGFsZXJ0LXBhZGRpbmcteSAkYWxlcnQtcGFkZGluZy14O1xuICAgIGNvbG9yOiBpbmhlcml0O1xuICB9XG59XG5cblxuLy8gQWx0ZXJuYXRlIHN0eWxlc1xuLy9cbi8vIEdlbmVyYXRlIGNvbnRleHR1YWwgbW9kaWZpZXIgY2xhc3NlcyBmb3IgY29sb3JpemluZyB0aGUgYWxlcnQuXG5cbi5hbGVydC1zdWNjZXNzIHtcbiAgQGluY2x1ZGUgYWxlcnQtdmFyaWFudCgkYWxlcnQtc3VjY2Vzcy1iZywgJGFsZXJ0LXN1Y2Nlc3MtYm9yZGVyLCAkYWxlcnQtc3VjY2Vzcy10ZXh0KTtcbn1cbi5hbGVydC1pbmZvIHtcbiAgQGluY2x1ZGUgYWxlcnQtdmFyaWFudCgkYWxlcnQtaW5mby1iZywgJGFsZXJ0LWluZm8tYm9yZGVyLCAkYWxlcnQtaW5mby10ZXh0KTtcbn1cbi5hbGVydC13YXJuaW5nIHtcbiAgQGluY2x1ZGUgYWxlcnQtdmFyaWFudCgkYWxlcnQtd2FybmluZy1iZywgJGFsZXJ0LXdhcm5pbmctYm9yZGVyLCAkYWxlcnQtd2FybmluZy10ZXh0KTtcbn1cbi5hbGVydC1kYW5nZXIge1xuICBAaW5jbHVkZSBhbGVydC12YXJpYW50KCRhbGVydC1kYW5nZXItYmcsICRhbGVydC1kYW5nZXItYm9yZGVyLCAkYWxlcnQtZGFuZ2VyLXRleHQpO1xufVxuIiwiLy8gUHJvZ3Jlc3MgYW5pbWF0aW9uc1xuQGtleWZyYW1lcyBwcm9ncmVzcy1iYXItc3RyaXBlcyB7XG4gIGZyb20geyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAkcHJvZ3Jlc3MtaGVpZ2h0IDA7IH1cbiAgdG8geyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwIDA7IH1cbn1cblxuLy8gQmFzaWMgcHJvZ3Jlc3MgYmFyXG4ucHJvZ3Jlc3Mge1xuICBkaXNwbGF5OiBmbGV4O1xuICBvdmVyZmxvdzogaGlkZGVuOyAvLyBmb3JjZSByb3VuZGVkIGNvcm5lcnMgYnkgY3JvcHBpbmcgaXRcbiAgZm9udC1zaXplOiAkcHJvZ3Jlc3MtZm9udC1zaXplO1xuICBsaW5lLWhlaWdodDogJHByb2dyZXNzLWhlaWdodDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkcHJvZ3Jlc3MtYmc7XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJHByb2dyZXNzLWJvcmRlci1yYWRpdXMpO1xufVxuLnByb2dyZXNzLWJhciB7XG4gIGhlaWdodDogJHByb2dyZXNzLWhlaWdodDtcbiAgY29sb3I6ICRwcm9ncmVzcy1iYXItY29sb3I7XG4gIGJhY2tncm91bmQtY29sb3I6ICRwcm9ncmVzcy1iYXItYmc7XG59XG5cbi8vIFN0cmlwZWRcbi5wcm9ncmVzcy1iYXItc3RyaXBlZCB7XG4gIEBpbmNsdWRlIGdyYWRpZW50LXN0cmlwZWQoKTtcbiAgYmFja2dyb3VuZC1zaXplOiAkcHJvZ3Jlc3MtaGVpZ2h0ICRwcm9ncmVzcy1oZWlnaHQ7XG59XG5cbi8vIEFuaW1hdGVkXG4ucHJvZ3Jlc3MtYmFyLWFuaW1hdGVkIHtcbiAgYW5pbWF0aW9uOiBwcm9ncmVzcy1iYXItc3RyaXBlcyAkcHJvZ3Jlc3MtYmFyLWFuaW1hdGlvbi10aW1pbmc7XG59XG4iLCIubWVkaWEge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcbn1cblxuLm1lZGlhLWJvZHkge1xuICBmbGV4OiAxO1xufVxuIiwiLy8gQmFzZSBjbGFzc1xuLy9cbi8vIEVhc2lseSB1c2FibGUgb24gPHVsPiwgPG9sPiwgb3IgPGRpdj4uXG5cbi5saXN0LWdyb3VwIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcblxuICAvLyBObyBuZWVkIHRvIHNldCBsaXN0LXN0eWxlOiBub25lOyBzaW5jZSAubGlzdC1ncm91cC1pdGVtIGlzIGJsb2NrIGxldmVsXG4gIHBhZGRpbmctbGVmdDogMDsgLy8gcmVzZXQgcGFkZGluZyBiZWNhdXNlIHVsIGFuZCBvbFxuICBtYXJnaW4tYm90dG9tOiAwO1xufVxuXG5cbi8vIEludGVyYWN0aXZlIGxpc3QgaXRlbXNcbi8vXG4vLyBVc2UgYW5jaG9yIG9yIGJ1dHRvbiBlbGVtZW50cyBpbnN0ZWFkIG9mIGBsaWBzIG9yIGBkaXZgcyB0byBjcmVhdGUgaW50ZXJhY3RpdmVcbi8vIGxpc3QgaXRlbXMuIEluY2x1ZGVzIGFuIGV4dHJhIGAuYWN0aXZlYCBtb2RpZmllciBjbGFzcyBmb3Igc2VsZWN0ZWQgaXRlbXMuXG5cbi5saXN0LWdyb3VwLWl0ZW0tYWN0aW9uIHtcbiAgd2lkdGg6IDEwMCU7IC8vIEZvciBgPGJ1dHRvbj5gcyAoYW5jaG9ycyBiZWNvbWUgMTAwJSBieSBkZWZhdWx0IHRob3VnaClcbiAgY29sb3I6ICRsaXN0LWdyb3VwLWxpbmstY29sb3I7XG4gIHRleHQtYWxpZ246IGluaGVyaXQ7IC8vIEZvciBgPGJ1dHRvbj5gcyAoYW5jaG9ycyBpbmhlcml0KVxuXG4gIC5saXN0LWdyb3VwLWl0ZW0taGVhZGluZyB7XG4gICAgY29sb3I6ICRsaXN0LWdyb3VwLWxpbmstaGVhZGluZy1jb2xvcjtcbiAgfVxuXG4gIC8vIEhvdmVyIHN0YXRlXG4gIEBpbmNsdWRlIGhvdmVyLWZvY3VzIHtcbiAgICBjb2xvcjogJGxpc3QtZ3JvdXAtbGluay1ob3Zlci1jb2xvcjtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGxpc3QtZ3JvdXAtaG92ZXItYmc7XG4gIH1cblxuICAmOmFjdGl2ZSB7XG4gICAgY29sb3I6ICRsaXN0LWdyb3VwLWxpbmstYWN0aXZlLWNvbG9yO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRsaXN0LWdyb3VwLWxpbmstYWN0aXZlLWJnO1xuICB9XG59XG5cblxuLy8gSW5kaXZpZHVhbCBsaXN0IGl0ZW1zXG4vL1xuLy8gVXNlIG9uIGBsaWBzIG9yIGBkaXZgcyB3aXRoaW4gdGhlIGAubGlzdC1ncm91cGAgcGFyZW50LlxuXG4ubGlzdC1ncm91cC1pdGVtIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWZsb3c6IHJvdyB3cmFwO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBwYWRkaW5nOiAkbGlzdC1ncm91cC1pdGVtLXBhZGRpbmcteSAkbGlzdC1ncm91cC1pdGVtLXBhZGRpbmcteDtcbiAgLy8gUGxhY2UgdGhlIGJvcmRlciBvbiB0aGUgbGlzdCBpdGVtcyBhbmQgbmVnYXRpdmUgbWFyZ2luIHVwIGZvciBiZXR0ZXIgc3R5bGluZ1xuICBtYXJnaW4tYm90dG9tOiAtJGxpc3QtZ3JvdXAtYm9yZGVyLXdpZHRoO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkbGlzdC1ncm91cC1iZztcbiAgYm9yZGVyOiAkbGlzdC1ncm91cC1ib3JkZXItd2lkdGggc29saWQgJGxpc3QtZ3JvdXAtYm9yZGVyLWNvbG9yO1xuXG4gICY6Zmlyc3QtY2hpbGQge1xuICAgIEBpbmNsdWRlIGJvcmRlci10b3AtcmFkaXVzKCRsaXN0LWdyb3VwLWJvcmRlci1yYWRpdXMpO1xuICB9XG5cbiAgJjpsYXN0LWNoaWxkIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIEBpbmNsdWRlIGJvcmRlci1ib3R0b20tcmFkaXVzKCRsaXN0LWdyb3VwLWJvcmRlci1yYWRpdXMpO1xuICB9XG5cbiAgQGluY2x1ZGUgaG92ZXItZm9jdXMge1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgfVxuXG4gICYuZGlzYWJsZWQsXG4gICY6ZGlzYWJsZWQge1xuICAgIGNvbG9yOiAkbGlzdC1ncm91cC1kaXNhYmxlZC1jb2xvcjtcbiAgICBjdXJzb3I6ICRjdXJzb3ItZGlzYWJsZWQ7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGxpc3QtZ3JvdXAtZGlzYWJsZWQtYmc7XG5cbiAgICAvLyBGb3JjZSBjb2xvciB0byBpbmhlcml0IGZvciBjdXN0b20gY29udGVudFxuICAgIC5saXN0LWdyb3VwLWl0ZW0taGVhZGluZyB7XG4gICAgICBjb2xvcjogaW5oZXJpdDtcbiAgICB9XG4gICAgLmxpc3QtZ3JvdXAtaXRlbS10ZXh0IHtcbiAgICAgIGNvbG9yOiAkbGlzdC1ncm91cC1kaXNhYmxlZC10ZXh0LWNvbG9yO1xuICAgIH1cbiAgfVxuXG4gIC8vIEluY2x1ZGUgYm90aCBoZXJlIGZvciBgPGE+YHMgYW5kIGA8YnV0dG9uPmBzXG4gICYuYWN0aXZlIHtcbiAgICB6LWluZGV4OiAyOyAvLyBQbGFjZSBhY3RpdmUgaXRlbXMgYWJvdmUgdGhlaXIgc2libGluZ3MgZm9yIHByb3BlciBib3JkZXIgc3R5bGluZ1xuICAgIGNvbG9yOiAkbGlzdC1ncm91cC1hY3RpdmUtY29sb3I7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGxpc3QtZ3JvdXAtYWN0aXZlLWJnO1xuICAgIGJvcmRlci1jb2xvcjogJGxpc3QtZ3JvdXAtYWN0aXZlLWJvcmRlcjtcblxuICAgIC8vIEZvcmNlIGNvbG9yIHRvIGluaGVyaXQgZm9yIGN1c3RvbSBjb250ZW50XG4gICAgLmxpc3QtZ3JvdXAtaXRlbS1oZWFkaW5nLFxuICAgIC5saXN0LWdyb3VwLWl0ZW0taGVhZGluZyA+IHNtYWxsLFxuICAgIC5saXN0LWdyb3VwLWl0ZW0taGVhZGluZyA+IC5zbWFsbCB7XG4gICAgICBjb2xvcjogaW5oZXJpdDtcbiAgICB9XG5cbiAgICAubGlzdC1ncm91cC1pdGVtLXRleHQge1xuICAgICAgY29sb3I6ICRsaXN0LWdyb3VwLWFjdGl2ZS10ZXh0LWNvbG9yO1xuICAgIH1cbiAgfVxufVxuXG5cbi8vIEZsdXNoIGxpc3QgaXRlbXNcbi8vXG4vLyBSZW1vdmUgYm9yZGVycyBhbmQgYm9yZGVyLXJhZGl1cyB0byBrZWVwIGxpc3QgZ3JvdXAgaXRlbXMgZWRnZS10by1lZGdlLiBNb3N0XG4vLyB1c2VmdWwgd2l0aGluIG90aGVyIGNvbXBvbmVudHMgKGUuZy4sIGNhcmRzKS5cblxuLmxpc3QtZ3JvdXAtZmx1c2gge1xuICAubGlzdC1ncm91cC1pdGVtIHtcbiAgICBib3JkZXItcmlnaHQ6IDA7XG4gICAgYm9yZGVyLWxlZnQ6IDA7XG4gICAgYm9yZGVyLXJhZGl1czogMDtcbiAgfVxuXG4gICY6Zmlyc3QtY2hpbGQge1xuICAgIC5saXN0LWdyb3VwLWl0ZW06Zmlyc3QtY2hpbGQge1xuICAgICAgYm9yZGVyLXRvcDogMDtcbiAgICB9XG4gIH1cblxuICAmOmxhc3QtY2hpbGQge1xuICAgIC5saXN0LWdyb3VwLWl0ZW06bGFzdC1jaGlsZCB7XG4gICAgICBib3JkZXItYm90dG9tOiAwO1xuICAgIH1cbiAgfVxufVxuXG5cbi8vIENvbnRleHR1YWwgdmFyaWFudHNcbi8vXG4vLyBBZGQgbW9kaWZpZXIgY2xhc3NlcyB0byBjaGFuZ2UgdGV4dCBhbmQgYmFja2dyb3VuZCBjb2xvciBvbiBpbmRpdmlkdWFsIGl0ZW1zLlxuLy8gT3JnYW5pemF0aW9uYWxseSwgdGhpcyBtdXN0IGNvbWUgYWZ0ZXIgdGhlIGA6aG92ZXJgIHN0YXRlcy5cblxuQGluY2x1ZGUgbGlzdC1ncm91cC1pdGVtLXZhcmlhbnQoc3VjY2VzcywgJHN0YXRlLXN1Y2Nlc3MtYmcsICRzdGF0ZS1zdWNjZXNzLXRleHQpO1xuQGluY2x1ZGUgbGlzdC1ncm91cC1pdGVtLXZhcmlhbnQoaW5mbywgJHN0YXRlLWluZm8tYmcsICRzdGF0ZS1pbmZvLXRleHQpO1xuQGluY2x1ZGUgbGlzdC1ncm91cC1pdGVtLXZhcmlhbnQod2FybmluZywgJHN0YXRlLXdhcm5pbmctYmcsICRzdGF0ZS13YXJuaW5nLXRleHQpO1xuQGluY2x1ZGUgbGlzdC1ncm91cC1pdGVtLXZhcmlhbnQoZGFuZ2VyLCAkc3RhdGUtZGFuZ2VyLWJnLCAkc3RhdGUtZGFuZ2VyLXRleHQpO1xuIiwiLy8gQ3JlZGl0OiBOaWNvbGFzIEdhbGxhZ2hlciBhbmQgU1VJVCBDU1MuXG5cbi5lbWJlZC1yZXNwb25zaXZlIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDEwMCU7XG4gIHBhZGRpbmc6IDA7XG4gIG92ZXJmbG93OiBoaWRkZW47XG5cbiAgJjo6YmVmb3JlIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBjb250ZW50OiBcIlwiO1xuICB9XG5cbiAgLmVtYmVkLXJlc3BvbnNpdmUtaXRlbSxcbiAgaWZyYW1lLFxuICBlbWJlZCxcbiAgb2JqZWN0LFxuICB2aWRlbyB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICBib3R0b206IDA7XG4gICAgbGVmdDogMDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgYm9yZGVyOiAwO1xuICB9XG59XG5cbi5lbWJlZC1yZXNwb25zaXZlLTIxYnk5IHtcbiAgJjo6YmVmb3JlIHtcbiAgICBwYWRkaW5nLXRvcDogcGVyY2VudGFnZSg5IC8gMjEpO1xuICB9XG59XG5cbi5lbWJlZC1yZXNwb25zaXZlLTE2Ynk5IHtcbiAgJjo6YmVmb3JlIHtcbiAgICBwYWRkaW5nLXRvcDogcGVyY2VudGFnZSg5IC8gMTYpO1xuICB9XG59XG5cbi5lbWJlZC1yZXNwb25zaXZlLTRieTMge1xuICAmOjpiZWZvcmUge1xuICAgIHBhZGRpbmctdG9wOiBwZXJjZW50YWdlKDMgLyA0KTtcbiAgfVxufVxuXG4uZW1iZWQtcmVzcG9uc2l2ZS0xYnkxIHtcbiAgJjo6YmVmb3JlIHtcbiAgICBwYWRkaW5nLXRvcDogcGVyY2VudGFnZSgxIC8gMSk7XG4gIH1cbn1cbiIsIi5jbG9zZSB7XG4gIGZsb2F0OiByaWdodDtcbiAgZm9udC1zaXplOiAkY2xvc2UtZm9udC1zaXplO1xuICBmb250LXdlaWdodDogJGNsb3NlLWZvbnQtd2VpZ2h0O1xuICBsaW5lLWhlaWdodDogMTtcbiAgY29sb3I6ICRjbG9zZS1jb2xvcjtcbiAgdGV4dC1zaGFkb3c6ICRjbG9zZS10ZXh0LXNoYWRvdztcbiAgb3BhY2l0eTogLjU7XG5cbiAgQGluY2x1ZGUgaG92ZXItZm9jdXMge1xuICAgIGNvbG9yOiAkY2xvc2UtY29sb3I7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICBvcGFjaXR5OiAuNzU7XG4gIH1cbn1cblxuLy8gQWRkaXRpb25hbCBwcm9wZXJ0aWVzIGZvciBidXR0b24gdmVyc2lvblxuLy8gaU9TIHJlcXVpcmVzIHRoZSBidXR0b24gZWxlbWVudCBpbnN0ZWFkIG9mIGFuIGFuY2hvciB0YWcuXG4vLyBJZiB5b3Ugd2FudCB0aGUgYW5jaG9yIHZlcnNpb24sIGl0IHJlcXVpcmVzIGBocmVmPVwiI1wiYC5cbi8vIFNlZSBodHRwczovL2RldmVsb3Blci5tb3ppbGxhLm9yZy9lbi1VUy9kb2NzL1dlYi9FdmVudHMvY2xpY2sjU2FmYXJpX01vYmlsZVxuXG4vLyBzY3NzLWxpbnQ6ZGlzYWJsZSBRdWFsaWZ5aW5nRWxlbWVudFxuYnV0dG9uLmNsb3NlIHtcbiAgcGFkZGluZzogMDtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgYm9yZGVyOiAwO1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XG59XG4vLyBzY3NzLWxpbnQ6ZW5hYmxlIFF1YWxpZnlpbmdFbGVtZW50XG4iLCIvLyAubW9kYWwtb3BlbiAgICAgIC0gYm9keSBjbGFzcyBmb3Iga2lsbGluZyB0aGUgc2Nyb2xsXG4vLyAubW9kYWwgICAgICAgICAgIC0gY29udGFpbmVyIHRvIHNjcm9sbCB3aXRoaW5cbi8vIC5tb2RhbC1kaWFsb2cgICAgLSBwb3NpdGlvbmluZyBzaGVsbCBmb3IgdGhlIGFjdHVhbCBtb2RhbFxuLy8gLm1vZGFsLWNvbnRlbnQgICAtIGFjdHVhbCBtb2RhbCB3LyBiZyBhbmQgY29ybmVycyBhbmQgc3R1ZmZcblxuXG4vLyBLaWxsIHRoZSBzY3JvbGwgb24gdGhlIGJvZHlcbi5tb2RhbC1vcGVuIHtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbn1cblxuLy8gQ29udGFpbmVyIHRoYXQgdGhlIG1vZGFsIHNjcm9sbHMgd2l0aGluXG4ubW9kYWwge1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHRvcDogMDtcbiAgcmlnaHQ6IDA7XG4gIGJvdHRvbTogMDtcbiAgbGVmdDogMDtcbiAgei1pbmRleDogJHppbmRleC1tb2RhbDtcbiAgZGlzcGxheTogbm9uZTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgLy8gUHJldmVudCBDaHJvbWUgb24gV2luZG93cyBmcm9tIGFkZGluZyBhIGZvY3VzIG91dGxpbmUuIEZvciBkZXRhaWxzLCBzZWVcbiAgLy8gaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL3B1bGwvMTA5NTEuXG4gIG91dGxpbmU6IDA7XG4gIC8vIFdlIGRlbGliZXJhdGVseSBkb24ndCB1c2UgYC13ZWJraXQtb3ZlcmZsb3ctc2Nyb2xsaW5nOiB0b3VjaDtgIGR1ZSB0byBhXG4gIC8vIGduYXJseSBpT1MgU2FmYXJpIGJ1ZzogaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE1ODM0MlxuICAvLyBTZWUgYWxzbyBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzE3Njk1XG5cbiAgLy8gV2hlbiBmYWRpbmcgaW4gdGhlIG1vZGFsLCBhbmltYXRlIGl0IHRvIHNsaWRlIGRvd25cbiAgJi5mYWRlIC5tb2RhbC1kaWFsb2cge1xuICAgIEBpbmNsdWRlIHRyYW5zaXRpb24oJG1vZGFsLXRyYW5zaXRpb24pO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIC0yNSUpO1xuICB9XG4gICYuc2hvdyAubW9kYWwtZGlhbG9nIHsgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgMCk7IH1cbn1cbi5tb2RhbC1vcGVuIC5tb2RhbCB7XG4gIG92ZXJmbG93LXg6IGhpZGRlbjtcbiAgb3ZlcmZsb3cteTogYXV0bztcbn1cblxuLy8gU2hlbGwgZGl2IHRvIHBvc2l0aW9uIHRoZSBtb2RhbCB3aXRoIGJvdHRvbSBwYWRkaW5nXG4ubW9kYWwtZGlhbG9nIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB3aWR0aDogYXV0bztcbiAgbWFyZ2luOiAkbW9kYWwtZGlhbG9nLW1hcmdpbjtcbn1cblxuLy8gQWN0dWFsIG1vZGFsXG4ubW9kYWwtY29udGVudCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgYmFja2dyb3VuZC1jb2xvcjogJG1vZGFsLWNvbnRlbnQtYmc7XG4gIGJhY2tncm91bmQtY2xpcDogcGFkZGluZy1ib3g7XG4gIGJvcmRlcjogJG1vZGFsLWNvbnRlbnQtYm9yZGVyLXdpZHRoIHNvbGlkICRtb2RhbC1jb250ZW50LWJvcmRlci1jb2xvcjtcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkYm9yZGVyLXJhZGl1cy1sZyk7XG4gIEBpbmNsdWRlIGJveC1zaGFkb3coJG1vZGFsLWNvbnRlbnQteHMtYm94LXNoYWRvdyk7XG4gIC8vIFJlbW92ZSBmb2N1cyBvdXRsaW5lIGZyb20gb3BlbmVkIG1vZGFsXG4gIG91dGxpbmU6IDA7XG59XG5cbi8vIE1vZGFsIGJhY2tncm91bmRcbi5tb2RhbC1iYWNrZHJvcCB7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgdG9wOiAwO1xuICByaWdodDogMDtcbiAgYm90dG9tOiAwO1xuICBsZWZ0OiAwO1xuICB6LWluZGV4OiAkemluZGV4LW1vZGFsLWJhY2tkcm9wO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkbW9kYWwtYmFja2Ryb3AtYmc7XG5cbiAgLy8gRmFkZSBmb3IgYmFja2Ryb3BcbiAgJi5mYWRlIHsgb3BhY2l0eTogMDsgfVxuICAmLnNob3cgeyBvcGFjaXR5OiAkbW9kYWwtYmFja2Ryb3Atb3BhY2l0eTsgfVxufVxuXG4vLyBNb2RhbCBoZWFkZXJcbi8vIFRvcCBzZWN0aW9uIG9mIHRoZSBtb2RhbCB3LyB0aXRsZSBhbmQgZGlzbWlzc1xuLm1vZGFsLWhlYWRlciB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7IC8vIHZlcnRpY2FsbHkgY2VudGVyIGl0XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjsgLy8gUHV0IG1vZGFsIGhlYWRlciBlbGVtZW50cyAodGl0bGUgYW5kIGRpc21pc3MpIG9uIG9wcG9zaXRlIGVuZHNcbiAgcGFkZGluZzogJG1vZGFsLWhlYWRlci1wYWRkaW5nO1xuICBib3JkZXItYm90dG9tOiAkbW9kYWwtaGVhZGVyLWJvcmRlci13aWR0aCBzb2xpZCAkbW9kYWwtaGVhZGVyLWJvcmRlci1jb2xvcjtcbn1cblxuLy8gVGl0bGUgdGV4dCB3aXRoaW4gaGVhZGVyXG4ubW9kYWwtdGl0bGUge1xuICBtYXJnaW4tYm90dG9tOiAwO1xuICBsaW5lLWhlaWdodDogJG1vZGFsLXRpdGxlLWxpbmUtaGVpZ2h0O1xufVxuXG4vLyBNb2RhbCBib2R5XG4vLyBXaGVyZSBhbGwgbW9kYWwgY29udGVudCByZXNpZGVzIChzaWJsaW5nIG9mIC5tb2RhbC1oZWFkZXIgYW5kIC5tb2RhbC1mb290ZXIpXG4ubW9kYWwtYm9keSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgLy8gRW5hYmxlIGBmbGV4LWdyb3c6IDFgIHNvIHRoYXQgdGhlIGJvZHkgdGFrZSB1cCBhcyBtdWNoIHNwYWNlIGFzIHBvc3NpYmxlXG4gIC8vIHdoZW4gc2hvdWxkIHRoZXJlIGJlIGEgZml4ZWQgaGVpZ2h0IG9uIGAubW9kYWwtZGlhbG9nYC5cbiAgZmxleDogMSAxIGF1dG87XG4gIHBhZGRpbmc6ICRtb2RhbC1pbm5lci1wYWRkaW5nO1xufVxuXG4vLyBGb290ZXIgKGZvciBhY3Rpb25zKVxuLm1vZGFsLWZvb3RlciB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7IC8vIHZlcnRpY2FsbHkgY2VudGVyXG4gIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7IC8vIFJpZ2h0IGFsaWduIGJ1dHRvbnMgd2l0aCBmbGV4IHByb3BlcnR5IGJlY2F1c2UgdGV4dC1hbGlnbiBkb2Vzbid0IHdvcmsgb24gZmxleCBpdGVtc1xuICBwYWRkaW5nOiAkbW9kYWwtaW5uZXItcGFkZGluZztcbiAgYm9yZGVyLXRvcDogJG1vZGFsLWZvb3Rlci1ib3JkZXItd2lkdGggc29saWQgJG1vZGFsLWZvb3Rlci1ib3JkZXItY29sb3I7XG5cbiAgLy8gRWFzaWx5IHBsYWNlIG1hcmdpbiBiZXR3ZWVuIGZvb3RlciBlbGVtZW50c1xuICA+IDpub3QoOmZpcnN0LWNoaWxkKSB7IG1hcmdpbi1sZWZ0OiAuMjVyZW07IH1cbiAgPiA6bm90KDpsYXN0LWNoaWxkKSB7IG1hcmdpbi1yaWdodDogLjI1cmVtOyB9XG59XG5cbi8vIE1lYXN1cmUgc2Nyb2xsYmFyIHdpZHRoIGZvciBwYWRkaW5nIGJvZHkgZHVyaW5nIG1vZGFsIHNob3cvaGlkZVxuLm1vZGFsLXNjcm9sbGJhci1tZWFzdXJlIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IC05OTk5cHg7XG4gIHdpZHRoOiA1MHB4O1xuICBoZWlnaHQ6IDUwcHg7XG4gIG92ZXJmbG93OiBzY3JvbGw7XG59XG5cbi8vIFNjYWxlIHVwIHRoZSBtb2RhbFxuQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChzbSkge1xuICAvLyBBdXRvbWF0aWNhbGx5IHNldCBtb2RhbCdzIHdpZHRoIGZvciBsYXJnZXIgdmlld3BvcnRzXG4gIC5tb2RhbC1kaWFsb2cge1xuICAgIG1heC13aWR0aDogJG1vZGFsLW1kO1xuICAgIG1hcmdpbjogJG1vZGFsLWRpYWxvZy1zbS11cC1tYXJnaW4teSBhdXRvO1xuICB9XG5cbiAgLm1vZGFsLWNvbnRlbnQge1xuICAgIEBpbmNsdWRlIGJveC1zaGFkb3coJG1vZGFsLWNvbnRlbnQtc20tdXAtYm94LXNoYWRvdyk7XG4gIH1cblxuICAubW9kYWwtc20geyBtYXgtd2lkdGg6ICRtb2RhbC1zbTsgfVxufVxuXG5AaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKGxnKSB7XG4gIC5tb2RhbC1sZyB7IG1heC13aWR0aDogJG1vZGFsLWxnOyB9XG59XG4iLCIvLyBCYXNlIGNsYXNzXG4udG9vbHRpcCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgei1pbmRleDogJHppbmRleC10b29sdGlwO1xuICBkaXNwbGF5OiBibG9jaztcbiAgLy8gT3VyIHBhcmVudCBlbGVtZW50IGNhbiBiZSBhcmJpdHJhcnkgc2luY2UgdG9vbHRpcHMgYXJlIGJ5IGRlZmF1bHQgaW5zZXJ0ZWQgYXMgYSBzaWJsaW5nIG9mIHRoZWlyIHRhcmdldCBlbGVtZW50LlxuICAvLyBTbyByZXNldCBvdXIgZm9udCBhbmQgdGV4dCBwcm9wZXJ0aWVzIHRvIGF2b2lkIGluaGVyaXRpbmcgd2VpcmQgdmFsdWVzLlxuICBAaW5jbHVkZSByZXNldC10ZXh0KCk7XG4gIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS1zbTtcbiAgLy8gQWxsb3cgYnJlYWtpbmcgdmVyeSBsb25nIHdvcmRzIHNvIHRoZXkgZG9uJ3Qgb3ZlcmZsb3cgdGhlIHRvb2x0aXAncyBib3VuZHNcbiAgd29yZC13cmFwOiBicmVhay13b3JkO1xuICBvcGFjaXR5OiAwO1xuXG4gICYuc2hvdyB7IG9wYWNpdHk6ICR0b29sdGlwLW9wYWNpdHk7IH1cblxuICAmLnRvb2x0aXAtdG9wLFxuICAmLmJzLXRldGhlci1lbGVtZW50LWF0dGFjaGVkLWJvdHRvbSB7XG4gICAgcGFkZGluZzogJHRvb2x0aXAtYXJyb3ctd2lkdGggMDtcbiAgICBtYXJnaW4tdG9wOiAtJHRvb2x0aXAtbWFyZ2luO1xuXG4gICAgLnRvb2x0aXAtaW5uZXI6OmJlZm9yZSB7XG4gICAgICBib3R0b206IDA7XG4gICAgICBsZWZ0OiA1MCU7XG4gICAgICBtYXJnaW4tbGVmdDogLSR0b29sdGlwLWFycm93LXdpZHRoO1xuICAgICAgY29udGVudDogXCJcIjtcbiAgICAgIGJvcmRlci13aWR0aDogJHRvb2x0aXAtYXJyb3ctd2lkdGggJHRvb2x0aXAtYXJyb3ctd2lkdGggMDtcbiAgICAgIGJvcmRlci10b3AtY29sb3I6ICR0b29sdGlwLWFycm93LWNvbG9yO1xuICAgIH1cbiAgfVxuICAmLnRvb2x0aXAtcmlnaHQsXG4gICYuYnMtdGV0aGVyLWVsZW1lbnQtYXR0YWNoZWQtbGVmdCB7XG4gICAgcGFkZGluZzogMCAkdG9vbHRpcC1hcnJvdy13aWR0aDtcbiAgICBtYXJnaW4tbGVmdDogJHRvb2x0aXAtbWFyZ2luO1xuXG4gICAgLnRvb2x0aXAtaW5uZXI6OmJlZm9yZSB7XG4gICAgICB0b3A6IDUwJTtcbiAgICAgIGxlZnQ6IDA7XG4gICAgICBtYXJnaW4tdG9wOiAtJHRvb2x0aXAtYXJyb3ctd2lkdGg7XG4gICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgYm9yZGVyLXdpZHRoOiAkdG9vbHRpcC1hcnJvdy13aWR0aCAkdG9vbHRpcC1hcnJvdy13aWR0aCAkdG9vbHRpcC1hcnJvdy13aWR0aCAwO1xuICAgICAgYm9yZGVyLXJpZ2h0LWNvbG9yOiAkdG9vbHRpcC1hcnJvdy1jb2xvcjtcbiAgICB9XG4gIH1cbiAgJi50b29sdGlwLWJvdHRvbSxcbiAgJi5icy10ZXRoZXItZWxlbWVudC1hdHRhY2hlZC10b3Age1xuICAgIHBhZGRpbmc6ICR0b29sdGlwLWFycm93LXdpZHRoIDA7XG4gICAgbWFyZ2luLXRvcDogJHRvb2x0aXAtbWFyZ2luO1xuXG4gICAgLnRvb2x0aXAtaW5uZXI6OmJlZm9yZSB7XG4gICAgICB0b3A6IDA7XG4gICAgICBsZWZ0OiA1MCU7XG4gICAgICBtYXJnaW4tbGVmdDogLSR0b29sdGlwLWFycm93LXdpZHRoO1xuICAgICAgY29udGVudDogXCJcIjtcbiAgICAgIGJvcmRlci13aWR0aDogMCAkdG9vbHRpcC1hcnJvdy13aWR0aCAkdG9vbHRpcC1hcnJvdy13aWR0aDtcbiAgICAgIGJvcmRlci1ib3R0b20tY29sb3I6ICR0b29sdGlwLWFycm93LWNvbG9yO1xuICAgIH1cbiAgfVxuICAmLnRvb2x0aXAtbGVmdCxcbiAgJi5icy10ZXRoZXItZWxlbWVudC1hdHRhY2hlZC1yaWdodCB7XG4gICAgcGFkZGluZzogMCAkdG9vbHRpcC1hcnJvdy13aWR0aDtcbiAgICBtYXJnaW4tbGVmdDogLSR0b29sdGlwLW1hcmdpbjtcblxuICAgIC50b29sdGlwLWlubmVyOjpiZWZvcmUge1xuICAgICAgdG9wOiA1MCU7XG4gICAgICByaWdodDogMDtcbiAgICAgIG1hcmdpbi10b3A6IC0kdG9vbHRpcC1hcnJvdy13aWR0aDtcbiAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICBib3JkZXItd2lkdGg6ICR0b29sdGlwLWFycm93LXdpZHRoIDAgJHRvb2x0aXAtYXJyb3ctd2lkdGggJHRvb2x0aXAtYXJyb3ctd2lkdGg7XG4gICAgICBib3JkZXItbGVmdC1jb2xvcjogJHRvb2x0aXAtYXJyb3ctY29sb3I7XG4gICAgfVxuICB9XG59XG5cbi8vIFdyYXBwZXIgZm9yIHRoZSB0b29sdGlwIGNvbnRlbnRcbi50b29sdGlwLWlubmVyIHtcbiAgbWF4LXdpZHRoOiAkdG9vbHRpcC1tYXgtd2lkdGg7XG4gIHBhZGRpbmc6ICR0b29sdGlwLXBhZGRpbmcteSAkdG9vbHRpcC1wYWRkaW5nLXg7XG4gIGNvbG9yOiAkdG9vbHRpcC1jb2xvcjtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkdG9vbHRpcC1iZztcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkYm9yZGVyLXJhZGl1cyk7XG5cbiAgJjo6YmVmb3JlIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgd2lkdGg6IDA7XG4gICAgaGVpZ2h0OiAwO1xuICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgYm9yZGVyLXN0eWxlOiBzb2xpZDtcbiAgfVxufVxuIiwiLnBvcG92ZXIge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgei1pbmRleDogJHppbmRleC1wb3BvdmVyO1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWF4LXdpZHRoOiAkcG9wb3Zlci1tYXgtd2lkdGg7XG4gIHBhZGRpbmc6ICRwb3BvdmVyLWlubmVyLXBhZGRpbmc7XG4gIC8vIE91ciBwYXJlbnQgZWxlbWVudCBjYW4gYmUgYXJiaXRyYXJ5IHNpbmNlIHRvb2x0aXBzIGFyZSBieSBkZWZhdWx0IGluc2VydGVkIGFzIGEgc2libGluZyBvZiB0aGVpciB0YXJnZXQgZWxlbWVudC5cbiAgLy8gU28gcmVzZXQgb3VyIGZvbnQgYW5kIHRleHQgcHJvcGVydGllcyB0byBhdm9pZCBpbmhlcml0aW5nIHdlaXJkIHZhbHVlcy5cbiAgQGluY2x1ZGUgcmVzZXQtdGV4dCgpO1xuICBmb250LXNpemU6ICRmb250LXNpemUtc207XG4gIC8vIEFsbG93IGJyZWFraW5nIHZlcnkgbG9uZyB3b3JkcyBzbyB0aGV5IGRvbid0IG92ZXJmbG93IHRoZSBwb3BvdmVyJ3MgYm91bmRzXG4gIHdvcmQtd3JhcDogYnJlYWstd29yZDtcbiAgYmFja2dyb3VuZC1jb2xvcjogJHBvcG92ZXItYmc7XG4gIGJhY2tncm91bmQtY2xpcDogcGFkZGluZy1ib3g7XG4gIGJvcmRlcjogJHBvcG92ZXItYm9yZGVyLXdpZHRoIHNvbGlkICRwb3BvdmVyLWJvcmRlci1jb2xvcjtcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkYm9yZGVyLXJhZGl1cy1sZyk7XG4gIEBpbmNsdWRlIGJveC1zaGFkb3coJHBvcG92ZXItYm94LXNoYWRvdyk7XG5cblxuICAvLyBQb3BvdmVyIGRpcmVjdGlvbnNcblxuICAmLnBvcG92ZXItdG9wLFxuICAmLmJzLXRldGhlci1lbGVtZW50LWF0dGFjaGVkLWJvdHRvbSB7XG4gICAgbWFyZ2luLXRvcDogLSRwb3BvdmVyLWFycm93LXdpZHRoO1xuXG4gICAgJjo6YmVmb3JlLFxuICAgICY6OmFmdGVyIHtcbiAgICAgIGxlZnQ6IDUwJTtcbiAgICAgIGJvcmRlci1ib3R0b20td2lkdGg6IDA7XG4gICAgfVxuXG4gICAgJjo6YmVmb3JlIHtcbiAgICAgIGJvdHRvbTogLSRwb3BvdmVyLWFycm93LW91dGVyLXdpZHRoO1xuICAgICAgbWFyZ2luLWxlZnQ6IC0kcG9wb3Zlci1hcnJvdy1vdXRlci13aWR0aDtcbiAgICAgIGJvcmRlci10b3AtY29sb3I6ICRwb3BvdmVyLWFycm93LW91dGVyLWNvbG9yO1xuICAgIH1cblxuICAgICY6OmFmdGVyIHtcbiAgICAgIGJvdHRvbTogLSgkcG9wb3Zlci1hcnJvdy1vdXRlci13aWR0aCAtIDEpO1xuICAgICAgbWFyZ2luLWxlZnQ6IC0kcG9wb3Zlci1hcnJvdy13aWR0aDtcbiAgICAgIGJvcmRlci10b3AtY29sb3I6ICRwb3BvdmVyLWFycm93LWNvbG9yO1xuICAgIH1cbiAgfVxuXG4gICYucG9wb3Zlci1yaWdodCxcbiAgJi5icy10ZXRoZXItZWxlbWVudC1hdHRhY2hlZC1sZWZ0IHtcbiAgICBtYXJnaW4tbGVmdDogJHBvcG92ZXItYXJyb3ctd2lkdGg7XG5cbiAgICAmOjpiZWZvcmUsXG4gICAgJjo6YWZ0ZXIge1xuICAgICAgdG9wOiA1MCU7XG4gICAgICBib3JkZXItbGVmdC13aWR0aDogMDtcbiAgICB9XG5cbiAgICAmOjpiZWZvcmUge1xuICAgICAgbGVmdDogLSRwb3BvdmVyLWFycm93LW91dGVyLXdpZHRoO1xuICAgICAgbWFyZ2luLXRvcDogLSRwb3BvdmVyLWFycm93LW91dGVyLXdpZHRoO1xuICAgICAgYm9yZGVyLXJpZ2h0LWNvbG9yOiAkcG9wb3Zlci1hcnJvdy1vdXRlci1jb2xvcjtcbiAgICB9XG5cbiAgICAmOjphZnRlciB7XG4gICAgICBsZWZ0OiAtKCRwb3BvdmVyLWFycm93LW91dGVyLXdpZHRoIC0gMSk7XG4gICAgICBtYXJnaW4tdG9wOiAtKCRwb3BvdmVyLWFycm93LW91dGVyLXdpZHRoIC0gMSk7XG4gICAgICBib3JkZXItcmlnaHQtY29sb3I6ICRwb3BvdmVyLWFycm93LWNvbG9yO1xuICAgIH1cbiAgfVxuXG4gICYucG9wb3Zlci1ib3R0b20sXG4gICYuYnMtdGV0aGVyLWVsZW1lbnQtYXR0YWNoZWQtdG9wIHtcbiAgICBtYXJnaW4tdG9wOiAkcG9wb3Zlci1hcnJvdy13aWR0aDtcblxuICAgICY6OmJlZm9yZSxcbiAgICAmOjphZnRlciB7XG4gICAgICBsZWZ0OiA1MCU7XG4gICAgICBib3JkZXItdG9wLXdpZHRoOiAwO1xuICAgIH1cblxuICAgICY6OmJlZm9yZSB7XG4gICAgICB0b3A6IC0kcG9wb3Zlci1hcnJvdy1vdXRlci13aWR0aDtcbiAgICAgIG1hcmdpbi1sZWZ0OiAtJHBvcG92ZXItYXJyb3ctb3V0ZXItd2lkdGg7XG4gICAgICBib3JkZXItYm90dG9tLWNvbG9yOiAkcG9wb3Zlci1hcnJvdy1vdXRlci1jb2xvcjtcbiAgICB9XG5cbiAgICAmOjphZnRlciB7XG4gICAgICB0b3A6IC0oJHBvcG92ZXItYXJyb3ctb3V0ZXItd2lkdGggLSAxKTtcbiAgICAgIG1hcmdpbi1sZWZ0OiAtJHBvcG92ZXItYXJyb3ctd2lkdGg7XG4gICAgICBib3JkZXItYm90dG9tLWNvbG9yOiAkcG9wb3Zlci10aXRsZS1iZztcbiAgICB9XG5cbiAgICAvLyBUaGlzIHdpbGwgcmVtb3ZlIHRoZSBwb3BvdmVyLXRpdGxlJ3MgYm9yZGVyIGp1c3QgYmVsb3cgdGhlIGFycm93XG4gICAgLnBvcG92ZXItdGl0bGU6OmJlZm9yZSB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0b3A6IDA7XG4gICAgICBsZWZ0OiA1MCU7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIHdpZHRoOiAyMHB4O1xuICAgICAgbWFyZ2luLWxlZnQ6IC0xMHB4O1xuICAgICAgY29udGVudDogXCJcIjtcbiAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkcG9wb3Zlci10aXRsZS1iZztcbiAgICB9XG4gIH1cblxuICAmLnBvcG92ZXItbGVmdCxcbiAgJi5icy10ZXRoZXItZWxlbWVudC1hdHRhY2hlZC1yaWdodCB7XG4gICAgbWFyZ2luLWxlZnQ6IC0kcG9wb3Zlci1hcnJvdy13aWR0aDtcblxuICAgICY6OmJlZm9yZSxcbiAgICAmOjphZnRlciB7XG4gICAgICB0b3A6IDUwJTtcbiAgICAgIGJvcmRlci1yaWdodC13aWR0aDogMDtcbiAgICB9XG5cbiAgICAmOjpiZWZvcmUge1xuICAgICAgcmlnaHQ6IC0kcG9wb3Zlci1hcnJvdy1vdXRlci13aWR0aDtcbiAgICAgIG1hcmdpbi10b3A6IC0kcG9wb3Zlci1hcnJvdy1vdXRlci13aWR0aDtcbiAgICAgIGJvcmRlci1sZWZ0LWNvbG9yOiAkcG9wb3Zlci1hcnJvdy1vdXRlci1jb2xvcjtcbiAgICB9XG5cbiAgICAmOjphZnRlciB7XG4gICAgICByaWdodDogLSgkcG9wb3Zlci1hcnJvdy1vdXRlci13aWR0aCAtIDEpO1xuICAgICAgbWFyZ2luLXRvcDogLSgkcG9wb3Zlci1hcnJvdy1vdXRlci13aWR0aCAtIDEpO1xuICAgICAgYm9yZGVyLWxlZnQtY29sb3I6ICRwb3BvdmVyLWFycm93LWNvbG9yO1xuICAgIH1cbiAgfVxufVxuXG5cbi8vIE9mZnNldCB0aGUgcG9wb3ZlciB0byBhY2NvdW50IGZvciB0aGUgcG9wb3ZlciBhcnJvd1xuLnBvcG92ZXItdGl0bGUge1xuICBwYWRkaW5nOiAkcG9wb3Zlci10aXRsZS1wYWRkaW5nLXkgJHBvcG92ZXItdGl0bGUtcGFkZGluZy14O1xuICBtYXJnaW4tYm90dG9tOiAwOyAvLyBSZXNldCB0aGUgZGVmYXVsdCBmcm9tIFJlYm9vdFxuICBmb250LXNpemU6ICRmb250LXNpemUtYmFzZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogJHBvcG92ZXItdGl0bGUtYmc7XG4gIGJvcmRlci1ib3R0b206ICRwb3BvdmVyLWJvcmRlci13aWR0aCBzb2xpZCBkYXJrZW4oJHBvcG92ZXItdGl0bGUtYmcsIDUlKTtcbiAgJG9mZnNldC1ib3JkZXItd2lkdGg6IGNhbGMoI3skYm9yZGVyLXJhZGl1cy1sZ30gLSAjeyRwb3BvdmVyLWJvcmRlci13aWR0aH0pO1xuICBAaW5jbHVkZSBib3JkZXItdG9wLXJhZGl1cygkb2Zmc2V0LWJvcmRlci13aWR0aCk7XG5cbiAgJjplbXB0eSB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxufVxuXG4ucG9wb3Zlci1jb250ZW50IHtcbiAgcGFkZGluZzogJHBvcG92ZXItY29udGVudC1wYWRkaW5nLXkgJHBvcG92ZXItY29udGVudC1wYWRkaW5nLXg7XG59XG5cblxuLy8gQXJyb3dzXG4vL1xuLy8gLnBvcG92ZXItYXJyb3cgaXMgb3V0ZXIsIC5wb3BvdmVyLWFycm93OjphZnRlciBpcyBpbm5lclxuXG4ucG9wb3Zlcjo6YmVmb3JlLFxuLnBvcG92ZXI6OmFmdGVyIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDA7XG4gIGhlaWdodDogMDtcbiAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLXN0eWxlOiBzb2xpZDtcbn1cblxuLnBvcG92ZXI6OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIGJvcmRlci13aWR0aDogJHBvcG92ZXItYXJyb3ctb3V0ZXItd2lkdGg7XG59XG4ucG9wb3Zlcjo6YWZ0ZXIge1xuICBjb250ZW50OiBcIlwiO1xuICBib3JkZXItd2lkdGg6ICRwb3BvdmVyLWFycm93LXdpZHRoO1xufVxuIiwiLy8gV3JhcHBlciBmb3IgdGhlIHNsaWRlIGNvbnRhaW5lciBhbmQgaW5kaWNhdG9yc1xuLmNhcm91c2VsIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuXG4uY2Fyb3VzZWwtaW5uZXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHdpZHRoOiAxMDAlO1xuICBvdmVyZmxvdzogaGlkZGVuO1xufVxuXG4uY2Fyb3VzZWwtaXRlbSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogbm9uZTtcbiAgd2lkdGg6IDEwMCU7XG5cbiAgQGluY2x1ZGUgaWYtc3VwcG9ydHMtM2QtdHJhbnNmb3JtcygpIHtcbiAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKCRjYXJvdXNlbC10cmFuc2l0aW9uKTtcbiAgICBiYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG4gICAgcGVyc3BlY3RpdmU6IDEwMDBweDtcbiAgfVxufVxuXG4uY2Fyb3VzZWwtaXRlbS5hY3RpdmUsXG4uY2Fyb3VzZWwtaXRlbS1uZXh0LFxuLmNhcm91c2VsLWl0ZW0tcHJldiB7XG4gIGRpc3BsYXk6IGZsZXg7XG59XG5cbi5jYXJvdXNlbC1pdGVtLW5leHQsXG4uY2Fyb3VzZWwtaXRlbS1wcmV2IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG59XG5cbi8vIENTUzMgdHJhbnNmb3JtcyB3aGVuIHN1cHBvcnRlZCBieSB0aGUgYnJvd3NlclxuQGluY2x1ZGUgaWYtc3VwcG9ydHMtM2QtdHJhbnNmb3JtcygpIHtcbiAgLmNhcm91c2VsLWl0ZW0tbmV4dC5jYXJvdXNlbC1pdGVtLWxlZnQsXG4gIC5jYXJvdXNlbC1pdGVtLXByZXYuY2Fyb3VzZWwtaXRlbS1yaWdodCB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbiAgfVxuXG4gIC5jYXJvdXNlbC1pdGVtLW5leHQsXG4gIC5hY3RpdmUuY2Fyb3VzZWwtaXRlbS1yaWdodCB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgxMDAlLCAwLCAwKTtcbiAgfVxuXG4gIC5jYXJvdXNlbC1pdGVtLXByZXYsXG4gIC5hY3RpdmUuY2Fyb3VzZWwtaXRlbS1sZWZ0IHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0xMDAlLCAwLCAwKTtcbiAgfVxufVxuXG5cbi8vXG4vLyBMZWZ0L3JpZ2h0IGNvbnRyb2xzIGZvciBuYXZcbi8vXG5cbi5jYXJvdXNlbC1jb250cm9sLXByZXYsXG4uY2Fyb3VzZWwtY29udHJvbC1uZXh0IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGJvdHRvbTogMDtcbiAgLy8gVXNlIGZsZXggZm9yIGFsaWdubWVudCAoMS0zKVxuICBkaXNwbGF5OiBmbGV4OyAvLyAxLiBhbGxvdyBmbGV4IHN0eWxlc1xuICBhbGlnbi1pdGVtczogY2VudGVyOyAvLyAyLiB2ZXJ0aWNhbGx5IGNlbnRlciBjb250ZW50c1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjsgLy8gMy4gaG9yaXpvbnRhbGx5IGNlbnRlciBjb250ZW50c1xuICB3aWR0aDogJGNhcm91c2VsLWNvbnRyb2wtd2lkdGg7XG4gIGNvbG9yOiAkY2Fyb3VzZWwtY29udHJvbC1jb2xvcjtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBvcGFjaXR5OiAkY2Fyb3VzZWwtY29udHJvbC1vcGFjaXR5O1xuICAvLyBXZSBjYW4ndCBoYXZlIGEgdHJhbnNpdGlvbiBoZXJlIGJlY2F1c2UgV2ViS2l0IGNhbmNlbHMgdGhlIGNhcm91c2VsXG4gIC8vIGFuaW1hdGlvbiBpZiB5b3UgdHJpcCB0aGlzIHdoaWxlIGluIHRoZSBtaWRkbGUgb2YgYW5vdGhlciBhbmltYXRpb24uXG5cbiAgLy8gSG92ZXIvZm9jdXMgc3RhdGVcbiAgQGluY2x1ZGUgaG92ZXItZm9jdXMge1xuICAgIGNvbG9yOiAkY2Fyb3VzZWwtY29udHJvbC1jb2xvcjtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgb3V0bGluZTogMDtcbiAgICBvcGFjaXR5OiAuOTtcbiAgfVxufVxuLmNhcm91c2VsLWNvbnRyb2wtcHJldiB7XG4gIGxlZnQ6IDA7XG59XG4uY2Fyb3VzZWwtY29udHJvbC1uZXh0IHtcbiAgcmlnaHQ6IDA7XG59XG5cbi8vIEljb25zIGZvciB3aXRoaW5cbi5jYXJvdXNlbC1jb250cm9sLXByZXYtaWNvbixcbi5jYXJvdXNlbC1jb250cm9sLW5leHQtaWNvbiB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgd2lkdGg6ICRjYXJvdXNlbC1jb250cm9sLWljb24td2lkdGg7XG4gIGhlaWdodDogJGNhcm91c2VsLWNvbnRyb2wtaWNvbi13aWR0aDtcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQgbm8tcmVwZWF0IGNlbnRlciBjZW50ZXI7XG4gIGJhY2tncm91bmQtc2l6ZTogMTAwJSAxMDAlO1xufVxuLmNhcm91c2VsLWNvbnRyb2wtcHJldi1pY29uIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogJGNhcm91c2VsLWNvbnRyb2wtcHJldi1pY29uLWJnO1xufVxuLmNhcm91c2VsLWNvbnRyb2wtbmV4dC1pY29uIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogJGNhcm91c2VsLWNvbnRyb2wtbmV4dC1pY29uLWJnO1xufVxuXG5cbi8vIE9wdGlvbmFsIGluZGljYXRvciBwaXBzXG4vL1xuLy8gQWRkIGFuIG9yZGVyZWQgbGlzdCB3aXRoIHRoZSBmb2xsb3dpbmcgY2xhc3MgYW5kIGFkZCBhIGxpc3QgaXRlbSBmb3IgZWFjaFxuLy8gc2xpZGUgeW91ciBjYXJvdXNlbCBob2xkcy5cblxuLmNhcm91c2VsLWluZGljYXRvcnMge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHJpZ2h0OiAwO1xuICBib3R0b206IDEwcHg7XG4gIGxlZnQ6IDA7XG4gIHotaW5kZXg6IDE1O1xuICBkaXNwbGF5OiBmbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgcGFkZGluZy1sZWZ0OiAwOyAvLyBvdmVycmlkZSA8b2w+IGRlZmF1bHRcbiAgLy8gVXNlIHRoZSAuY2Fyb3VzZWwtY29udHJvbCdzIHdpZHRoIGFzIG1hcmdpbiBzbyB3ZSBkb24ndCBvdmVybGF5IHRob3NlXG4gIG1hcmdpbi1yaWdodDogJGNhcm91c2VsLWNvbnRyb2wtd2lkdGg7XG4gIG1hcmdpbi1sZWZ0OiAkY2Fyb3VzZWwtY29udHJvbC13aWR0aDtcbiAgbGlzdC1zdHlsZTogbm9uZTtcblxuICBsaSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGZsZXg6IDEgMCBhdXRvO1xuICAgIG1heC13aWR0aDogJGNhcm91c2VsLWluZGljYXRvci13aWR0aDtcbiAgICBoZWlnaHQ6ICRjYXJvdXNlbC1pbmRpY2F0b3ItaGVpZ2h0O1xuICAgIG1hcmdpbi1yaWdodDogJGNhcm91c2VsLWluZGljYXRvci1zcGFjZXI7XG4gICAgbWFyZ2luLWxlZnQ6ICRjYXJvdXNlbC1pbmRpY2F0b3Itc3BhY2VyO1xuICAgIHRleHQtaW5kZW50OiAtOTk5cHg7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoJGNhcm91c2VsLWluZGljYXRvci1hY3RpdmUtYmcsIC41KTtcblxuICAgIC8vIFVzZSBwc2V1ZG8gY2xhc3NlcyB0byBpbmNyZWFzZSB0aGUgaGl0IGFyZWEgYnkgMTBweCBvbiB0b3AgYW5kIGJvdHRvbS5cbiAgICAmOjpiZWZvcmUge1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiAtMTBweDtcbiAgICAgIGxlZnQ6IDA7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIGhlaWdodDogMTBweDtcbiAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgfVxuICAgICY6OmFmdGVyIHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIGJvdHRvbTogLTEwcHg7XG4gICAgICBsZWZ0OiAwO1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBoZWlnaHQ6IDEwcHg7XG4gICAgICBjb250ZW50OiBcIlwiO1xuICAgIH1cbiAgfVxuXG4gIC5hY3RpdmUge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRjYXJvdXNlbC1pbmRpY2F0b3ItYWN0aXZlLWJnO1xuICB9XG59XG5cblxuLy8gT3B0aW9uYWwgY2FwdGlvbnNcbi8vXG4vL1xuXG4uY2Fyb3VzZWwtY2FwdGlvbiB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgcmlnaHQ6ICgoMTAwJSAtICRjYXJvdXNlbC1jYXB0aW9uLXdpZHRoKSAvIDIpO1xuICBib3R0b206IDIwcHg7XG4gIGxlZnQ6ICgoMTAwJSAtICRjYXJvdXNlbC1jYXB0aW9uLXdpZHRoKSAvIDIpO1xuICB6LWluZGV4OiAxMDtcbiAgcGFkZGluZy10b3A6IDIwcHg7XG4gIHBhZGRpbmctYm90dG9tOiAyMHB4O1xuICBjb2xvcjogJGNhcm91c2VsLWNhcHRpb24tY29sb3I7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cbiIsIkBpbXBvcnQgXCJ1dGlsaXRpZXMvYWxpZ25cIjtcbkBpbXBvcnQgXCJ1dGlsaXRpZXMvYmFja2dyb3VuZFwiO1xuQGltcG9ydCBcInV0aWxpdGllcy9ib3JkZXJzXCI7XG5AaW1wb3J0IFwidXRpbGl0aWVzL2NsZWFyZml4XCI7XG5AaW1wb3J0IFwidXRpbGl0aWVzL2Rpc3BsYXlcIjtcbkBpbXBvcnQgXCJ1dGlsaXRpZXMvZmxleFwiO1xuQGltcG9ydCBcInV0aWxpdGllcy9mbG9hdFwiO1xuQGltcG9ydCBcInV0aWxpdGllcy9wb3NpdGlvblwiO1xuQGltcG9ydCBcInV0aWxpdGllcy9zY3JlZW5yZWFkZXJzXCI7XG5AaW1wb3J0IFwidXRpbGl0aWVzL3NpemluZ1wiO1xuQGltcG9ydCBcInV0aWxpdGllcy9zcGFjaW5nXCI7XG5AaW1wb3J0IFwidXRpbGl0aWVzL3RleHRcIjtcbkBpbXBvcnQgXCJ1dGlsaXRpZXMvdmlzaWJpbGl0eVwiO1xuIiwiLmFsaWduLWJhc2VsaW5lICAgIHsgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lICFpbXBvcnRhbnQ7IH0gLy8gQnJvd3NlciBkZWZhdWx0XG4uYWxpZ24tdG9wICAgICAgICAgeyB2ZXJ0aWNhbC1hbGlnbjogdG9wICFpbXBvcnRhbnQ7IH1cbi5hbGlnbi1taWRkbGUgICAgICB7IHZlcnRpY2FsLWFsaWduOiBtaWRkbGUgIWltcG9ydGFudDsgfVxuLmFsaWduLWJvdHRvbSAgICAgIHsgdmVydGljYWwtYWxpZ246IGJvdHRvbSAhaW1wb3J0YW50OyB9XG4uYWxpZ24tdGV4dC1ib3R0b20geyB2ZXJ0aWNhbC1hbGlnbjogdGV4dC1ib3R0b20gIWltcG9ydGFudDsgfVxuLmFsaWduLXRleHQtdG9wICAgIHsgdmVydGljYWwtYWxpZ246IHRleHQtdG9wICFpbXBvcnRhbnQ7IH1cbiIsIi8vXG4vLyBDb250ZXh0dWFsIGJhY2tncm91bmRzXG4vL1xuXG4uYmctZmFkZWQge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiBkYXJrZW4oJGJvZHktYmcsIDMlKTtcbn1cblxuQGluY2x1ZGUgYmctdmFyaWFudCgnLmJnLXByaW1hcnknLCAkYnJhbmQtcHJpbWFyeSk7XG5cbkBpbmNsdWRlIGJnLXZhcmlhbnQoJy5iZy1zdWNjZXNzJywgJGJyYW5kLXN1Y2Nlc3MpO1xuXG5AaW5jbHVkZSBiZy12YXJpYW50KCcuYmctaW5mbycsICRicmFuZC1pbmZvKTtcblxuQGluY2x1ZGUgYmctdmFyaWFudCgnLmJnLXdhcm5pbmcnLCAkYnJhbmQtd2FybmluZyk7XG5cbkBpbmNsdWRlIGJnLXZhcmlhbnQoJy5iZy1kYW5nZXInLCAkYnJhbmQtZGFuZ2VyKTtcblxuQGluY2x1ZGUgYmctdmFyaWFudCgnLmJnLWludmVyc2UnLCAkYnJhbmQtaW52ZXJzZSk7XG4iLCIvL1xuLy8gQm9yZGVyXG4vL1xuXG4uYm9yZGVyLTAgICAgICAgIHsgYm9yZGVyOiAwICFpbXBvcnRhbnQ7IH1cbi5ib3JkZXItdG9wLTAgICAgeyBib3JkZXItdG9wOiAwICFpbXBvcnRhbnQ7IH1cbi5ib3JkZXItcmlnaHQtMCAgeyBib3JkZXItcmlnaHQ6IDAgIWltcG9ydGFudDsgfVxuLmJvcmRlci1ib3R0b20tMCB7IGJvcmRlci1ib3R0b206IDAgIWltcG9ydGFudDsgfVxuLmJvcmRlci1sZWZ0LTAgICB7IGJvcmRlci1sZWZ0OiAwICFpbXBvcnRhbnQ7IH1cblxuLy9cbi8vIEJvcmRlci1yYWRpdXNcbi8vXG5cbi5yb3VuZGVkIHtcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkYm9yZGVyLXJhZGl1cyk7XG59XG4ucm91bmRlZC10b3Age1xuICBAaW5jbHVkZSBib3JkZXItdG9wLXJhZGl1cygkYm9yZGVyLXJhZGl1cyk7XG59XG4ucm91bmRlZC1yaWdodCB7XG4gIEBpbmNsdWRlIGJvcmRlci1yaWdodC1yYWRpdXMoJGJvcmRlci1yYWRpdXMpO1xufVxuLnJvdW5kZWQtYm90dG9tIHtcbiAgQGluY2x1ZGUgYm9yZGVyLWJvdHRvbS1yYWRpdXMoJGJvcmRlci1yYWRpdXMpO1xufVxuLnJvdW5kZWQtbGVmdCB7XG4gIEBpbmNsdWRlIGJvcmRlci1sZWZ0LXJhZGl1cygkYm9yZGVyLXJhZGl1cyk7XG59XG5cbi5yb3VuZGVkLWNpcmNsZSB7XG4gIGJvcmRlci1yYWRpdXM6IDUwJTtcbn1cblxuLnJvdW5kZWQtMCB7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG59XG4iLCIuY2xlYXJmaXgge1xuICBAaW5jbHVkZSBjbGVhcmZpeCgpO1xufVxuIiwiLy9cbi8vIERpc3BsYXkgdXRpbGl0aWVzXG4vL1xuXG5AZWFjaCAkYnJlYWtwb2ludCBpbiBtYXAta2V5cygkZ3JpZC1icmVha3BvaW50cykge1xuICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKCRicmVha3BvaW50KSB7XG4gICAgJGluZml4OiBicmVha3BvaW50LWluZml4KCRicmVha3BvaW50LCAkZ3JpZC1icmVha3BvaW50cyk7XG5cbiAgICAuZCN7JGluZml4fS1ub25lICAgICAgICAgeyBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7IH1cbiAgICAuZCN7JGluZml4fS1pbmxpbmUgICAgICAgeyBkaXNwbGF5OiBpbmxpbmUgIWltcG9ydGFudDsgfVxuICAgIC5kI3skaW5maXh9LWlubGluZS1ibG9jayB7IGRpc3BsYXk6IGlubGluZS1ibG9jayAhaW1wb3J0YW50OyB9XG4gICAgLmQjeyRpbmZpeH0tYmxvY2sgICAgICAgIHsgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDsgfVxuICAgIC5kI3skaW5maXh9LXRhYmxlICAgICAgICB7IGRpc3BsYXk6IHRhYmxlICFpbXBvcnRhbnQ7IH1cbiAgICAuZCN7JGluZml4fS10YWJsZS1jZWxsICAgeyBkaXNwbGF5OiB0YWJsZS1jZWxsICFpbXBvcnRhbnQ7IH1cbiAgICAuZCN7JGluZml4fS1mbGV4ICAgICAgICAgeyBkaXNwbGF5OiBmbGV4ICFpbXBvcnRhbnQ7IH1cbiAgICAuZCN7JGluZml4fS1pbmxpbmUtZmxleCAgeyBkaXNwbGF5OiBpbmxpbmUtZmxleCAhaW1wb3J0YW50OyB9XG4gIH1cbn1cbiIsIi8vIEZsZXggdmFyaWF0aW9uXG4vL1xuLy8gQ3VzdG9tIHN0eWxlcyBmb3IgYWRkaXRpb25hbCBmbGV4IGFsaWdubWVudCBvcHRpb25zLlxuXG5AZWFjaCAkYnJlYWtwb2ludCBpbiBtYXAta2V5cygkZ3JpZC1icmVha3BvaW50cykge1xuICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKCRicmVha3BvaW50KSB7XG4gICAgJGluZml4OiBicmVha3BvaW50LWluZml4KCRicmVha3BvaW50LCAkZ3JpZC1icmVha3BvaW50cyk7XG5cbiAgICAuZmxleCN7JGluZml4fS1maXJzdCAgICAgeyBvcmRlcjogLTE7IH1cbiAgICAuZmxleCN7JGluZml4fS1sYXN0ICAgICAgeyBvcmRlcjogMTsgfVxuICAgIC5mbGV4I3skaW5maXh9LXVub3JkZXJlZCB7IG9yZGVyOiAwOyB9XG5cbiAgICAuZmxleCN7JGluZml4fS1yb3cgICAgICAgICAgICB7IGZsZXgtZGlyZWN0aW9uOiByb3cgIWltcG9ydGFudDsgfVxuICAgIC5mbGV4I3skaW5maXh9LWNvbHVtbiAgICAgICAgIHsgZmxleC1kaXJlY3Rpb246IGNvbHVtbiAhaW1wb3J0YW50OyB9XG4gICAgLmZsZXgjeyRpbmZpeH0tcm93LXJldmVyc2UgICAgeyBmbGV4LWRpcmVjdGlvbjogcm93LXJldmVyc2UgIWltcG9ydGFudDsgfVxuICAgIC5mbGV4I3skaW5maXh9LWNvbHVtbi1yZXZlcnNlIHsgZmxleC1kaXJlY3Rpb246IGNvbHVtbi1yZXZlcnNlICFpbXBvcnRhbnQ7IH1cblxuICAgIC5mbGV4I3skaW5maXh9LXdyYXAgICAgICAgICB7IGZsZXgtd3JhcDogd3JhcCAhaW1wb3J0YW50OyB9XG4gICAgLmZsZXgjeyRpbmZpeH0tbm93cmFwICAgICAgIHsgZmxleC13cmFwOiBub3dyYXAgIWltcG9ydGFudDsgfVxuICAgIC5mbGV4I3skaW5maXh9LXdyYXAtcmV2ZXJzZSB7IGZsZXgtd3JhcDogd3JhcC1yZXZlcnNlICFpbXBvcnRhbnQ7IH1cblxuICAgIC5qdXN0aWZ5LWNvbnRlbnQjeyRpbmZpeH0tc3RhcnQgICB7IGp1c3RpZnktY29udGVudDogZmxleC1zdGFydCAhaW1wb3J0YW50OyB9XG4gICAgLmp1c3RpZnktY29udGVudCN7JGluZml4fS1lbmQgICAgIHsganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZCAhaW1wb3J0YW50OyB9XG4gICAgLmp1c3RpZnktY29udGVudCN7JGluZml4fS1jZW50ZXIgIHsganVzdGlmeS1jb250ZW50OiBjZW50ZXIgIWltcG9ydGFudDsgfVxuICAgIC5qdXN0aWZ5LWNvbnRlbnQjeyRpbmZpeH0tYmV0d2VlbiB7IGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbiAhaW1wb3J0YW50OyB9XG4gICAgLmp1c3RpZnktY29udGVudCN7JGluZml4fS1hcm91bmQgIHsganVzdGlmeS1jb250ZW50OiBzcGFjZS1hcm91bmQgIWltcG9ydGFudDsgfVxuXG4gICAgLmFsaWduLWl0ZW1zI3skaW5maXh9LXN0YXJ0ICAgIHsgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQgIWltcG9ydGFudDsgfVxuICAgIC5hbGlnbi1pdGVtcyN7JGluZml4fS1lbmQgICAgICB7IGFsaWduLWl0ZW1zOiBmbGV4LWVuZCAhaW1wb3J0YW50OyB9XG4gICAgLmFsaWduLWl0ZW1zI3skaW5maXh9LWNlbnRlciAgIHsgYWxpZ24taXRlbXM6IGNlbnRlciAhaW1wb3J0YW50OyB9XG4gICAgLmFsaWduLWl0ZW1zI3skaW5maXh9LWJhc2VsaW5lIHsgYWxpZ24taXRlbXM6IGJhc2VsaW5lICFpbXBvcnRhbnQ7IH1cbiAgICAuYWxpZ24taXRlbXMjeyRpbmZpeH0tc3RyZXRjaCAgeyBhbGlnbi1pdGVtczogc3RyZXRjaCAhaW1wb3J0YW50OyB9XG5cbiAgICAuYWxpZ24tY29udGVudCN7JGluZml4fS1zdGFydCAgIHsgYWxpZ24tY29udGVudDogZmxleC1zdGFydCAhaW1wb3J0YW50OyB9XG4gICAgLmFsaWduLWNvbnRlbnQjeyRpbmZpeH0tZW5kICAgICB7IGFsaWduLWNvbnRlbnQ6IGZsZXgtZW5kICFpbXBvcnRhbnQ7IH1cbiAgICAuYWxpZ24tY29udGVudCN7JGluZml4fS1jZW50ZXIgIHsgYWxpZ24tY29udGVudDogY2VudGVyICFpbXBvcnRhbnQ7IH1cbiAgICAuYWxpZ24tY29udGVudCN7JGluZml4fS1iZXR3ZWVuIHsgYWxpZ24tY29udGVudDogc3BhY2UtYmV0d2VlbiAhaW1wb3J0YW50OyB9XG4gICAgLmFsaWduLWNvbnRlbnQjeyRpbmZpeH0tYXJvdW5kICB7IGFsaWduLWNvbnRlbnQ6IHNwYWNlLWFyb3VuZCAhaW1wb3J0YW50OyB9XG4gICAgLmFsaWduLWNvbnRlbnQjeyRpbmZpeH0tc3RyZXRjaCB7IGFsaWduLWNvbnRlbnQ6IHN0cmV0Y2ggIWltcG9ydGFudDsgfVxuXG4gICAgLmFsaWduLXNlbGYjeyRpbmZpeH0tYXV0byAgICAgeyBhbGlnbi1zZWxmOiBhdXRvICFpbXBvcnRhbnQ7IH1cbiAgICAuYWxpZ24tc2VsZiN7JGluZml4fS1zdGFydCAgICB7IGFsaWduLXNlbGY6IGZsZXgtc3RhcnQgIWltcG9ydGFudDsgfVxuICAgIC5hbGlnbi1zZWxmI3skaW5maXh9LWVuZCAgICAgIHsgYWxpZ24tc2VsZjogZmxleC1lbmQgIWltcG9ydGFudDsgfVxuICAgIC5hbGlnbi1zZWxmI3skaW5maXh9LWNlbnRlciAgIHsgYWxpZ24tc2VsZjogY2VudGVyICFpbXBvcnRhbnQ7IH1cbiAgICAuYWxpZ24tc2VsZiN7JGluZml4fS1iYXNlbGluZSB7IGFsaWduLXNlbGY6IGJhc2VsaW5lICFpbXBvcnRhbnQ7IH1cbiAgICAuYWxpZ24tc2VsZiN7JGluZml4fS1zdHJldGNoICB7IGFsaWduLXNlbGY6IHN0cmV0Y2ggIWltcG9ydGFudDsgfVxuICB9XG59XG4iLCJAZWFjaCAkYnJlYWtwb2ludCBpbiBtYXAta2V5cygkZ3JpZC1icmVha3BvaW50cykge1xuICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKCRicmVha3BvaW50KSB7XG4gICAgJGluZml4OiBicmVha3BvaW50LWluZml4KCRicmVha3BvaW50LCAkZ3JpZC1icmVha3BvaW50cyk7XG5cbiAgICAuZmxvYXQjeyRpbmZpeH0tbGVmdCAgeyBAaW5jbHVkZSBmbG9hdC1sZWZ0OyB9XG4gICAgLmZsb2F0I3skaW5maXh9LXJpZ2h0IHsgQGluY2x1ZGUgZmxvYXQtcmlnaHQ7IH1cbiAgICAuZmxvYXQjeyRpbmZpeH0tbm9uZSAgeyBAaW5jbHVkZSBmbG9hdC1ub25lOyB9XG4gIH1cbn1cbiIsIi8vIFBvc2l0aW9uaW5nXG5cbi5maXhlZC10b3Age1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHRvcDogMDtcbiAgcmlnaHQ6IDA7XG4gIGxlZnQ6IDA7XG4gIHotaW5kZXg6ICR6aW5kZXgtZml4ZWQ7XG59XG5cbi5maXhlZC1ib3R0b20ge1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHJpZ2h0OiAwO1xuICBib3R0b206IDA7XG4gIGxlZnQ6IDA7XG4gIHotaW5kZXg6ICR6aW5kZXgtZml4ZWQ7XG59XG5cbi5zdGlja3ktdG9wIHtcbiAgcG9zaXRpb246IHN0aWNreTtcbiAgdG9wOiAwO1xuICB6LWluZGV4OiAkemluZGV4LXN0aWNreTtcbn1cbiIsIi8vXG4vLyBTY3JlZW5yZWFkZXJzXG4vL1xuXG4uc3Itb25seSB7XG4gIEBpbmNsdWRlIHNyLW9ubHkoKTtcbn1cblxuLnNyLW9ubHktZm9jdXNhYmxlIHtcbiAgQGluY2x1ZGUgc3Itb25seS1mb2N1c2FibGUoKTtcbn1cbiIsIi8vIFdpZHRoIGFuZCBoZWlnaHRcblxuQGVhY2ggJHByb3AsICRhYmJyZXYgaW4gKHdpZHRoOiB3LCBoZWlnaHQ6IGgpIHtcbiAgQGVhY2ggJHNpemUsICRsZW5ndGggaW4gJHNpemVzIHtcbiAgICAuI3skYWJicmV2fS0jeyRzaXplfSB7ICN7JHByb3B9OiAkbGVuZ3RoICFpbXBvcnRhbnQ7IH1cbiAgfVxufVxuXG4ubXctMTAwIHsgbWF4LXdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7IH1cbi5taC0xMDAgeyBtYXgtaGVpZ2h0OiAxMDAlICFpbXBvcnRhbnQ7IH1cbiIsIi8vIE1hcmdpbiBhbmQgUGFkZGluZ1xuXG5AZWFjaCAkYnJlYWtwb2ludCBpbiBtYXAta2V5cygkZ3JpZC1icmVha3BvaW50cykge1xuICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKCRicmVha3BvaW50KSB7XG4gICAgJGluZml4OiBicmVha3BvaW50LWluZml4KCRicmVha3BvaW50LCAkZ3JpZC1icmVha3BvaW50cyk7XG5cbiAgICBAZWFjaCAkcHJvcCwgJGFiYnJldiBpbiAobWFyZ2luOiBtLCBwYWRkaW5nOiBwKSB7XG4gICAgICBAZWFjaCAkc2l6ZSwgJGxlbmd0aHMgaW4gJHNwYWNlcnMge1xuICAgICAgICAkbGVuZ3RoLXg6IG1hcC1nZXQoJGxlbmd0aHMsIHgpO1xuICAgICAgICAkbGVuZ3RoLXk6IG1hcC1nZXQoJGxlbmd0aHMsIHkpO1xuXG4gICAgICAgIC4jeyRhYmJyZXZ9I3skaW5maXh9LSN7JHNpemV9ICB7ICN7JHByb3B9OiAgICAgICAgJGxlbmd0aC15ICRsZW5ndGgteCAhaW1wb3J0YW50OyB9XG4gICAgICAgIC4jeyRhYmJyZXZ9dCN7JGluZml4fS0jeyRzaXplfSB7ICN7JHByb3B9LXRvcDogICAgJGxlbmd0aC15ICFpbXBvcnRhbnQ7IH1cbiAgICAgICAgLiN7JGFiYnJldn1yI3skaW5maXh9LSN7JHNpemV9IHsgI3skcHJvcH0tcmlnaHQ6ICAkbGVuZ3RoLXggIWltcG9ydGFudDsgfVxuICAgICAgICAuI3skYWJicmV2fWIjeyRpbmZpeH0tI3skc2l6ZX0geyAjeyRwcm9wfS1ib3R0b206ICRsZW5ndGgteSAhaW1wb3J0YW50OyB9XG4gICAgICAgIC4jeyRhYmJyZXZ9bCN7JGluZml4fS0jeyRzaXplfSB7ICN7JHByb3B9LWxlZnQ6ICAgJGxlbmd0aC14ICFpbXBvcnRhbnQ7IH1cbiAgICAgICAgLiN7JGFiYnJldn14I3skaW5maXh9LSN7JHNpemV9IHtcbiAgICAgICAgICAjeyRwcm9wfS1yaWdodDogJGxlbmd0aC14ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgI3skcHJvcH0tbGVmdDogICRsZW5ndGgteCAhaW1wb3J0YW50O1xuICAgICAgICB9XG4gICAgICAgIC4jeyRhYmJyZXZ9eSN7JGluZml4fS0jeyRzaXplfSB7XG4gICAgICAgICAgI3skcHJvcH0tdG9wOiAgICAkbGVuZ3RoLXkgIWltcG9ydGFudDtcbiAgICAgICAgICAjeyRwcm9wfS1ib3R0b206ICRsZW5ndGgteSAhaW1wb3J0YW50O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gU29tZSBzcGVjaWFsIG1hcmdpbiB1dGlsc1xuICAgIC5tI3skaW5maXh9LWF1dG8gIHsgbWFyZ2luOiAgICAgICAgYXV0byAhaW1wb3J0YW50OyB9XG4gICAgLm10I3skaW5maXh9LWF1dG8geyBtYXJnaW4tdG9wOiAgICBhdXRvICFpbXBvcnRhbnQ7IH1cbiAgICAubXIjeyRpbmZpeH0tYXV0byB7IG1hcmdpbi1yaWdodDogIGF1dG8gIWltcG9ydGFudDsgfVxuICAgIC5tYiN7JGluZml4fS1hdXRvIHsgbWFyZ2luLWJvdHRvbTogYXV0byAhaW1wb3J0YW50OyB9XG4gICAgLm1sI3skaW5maXh9LWF1dG8geyBtYXJnaW4tbGVmdDogICBhdXRvICFpbXBvcnRhbnQ7IH1cbiAgICAubXgjeyRpbmZpeH0tYXV0byB7XG4gICAgICBtYXJnaW4tcmlnaHQ6IGF1dG8gIWltcG9ydGFudDtcbiAgICAgIG1hcmdpbi1sZWZ0OiAgYXV0byAhaW1wb3J0YW50O1xuICAgIH1cbiAgICAubXkjeyRpbmZpeH0tYXV0byB7XG4gICAgICBtYXJnaW4tdG9wOiAgICBhdXRvICFpbXBvcnRhbnQ7XG4gICAgICBtYXJnaW4tYm90dG9tOiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgfVxuICB9XG59XG4iLCIvL1xuLy8gVGV4dFxuLy9cblxuLy8gQWxpZ25tZW50XG5cbi50ZXh0LWp1c3RpZnkgIHsgdGV4dC1hbGlnbjoganVzdGlmeSAhaW1wb3J0YW50OyB9XG4udGV4dC1ub3dyYXAgICB7IHdoaXRlLXNwYWNlOiBub3dyYXAgIWltcG9ydGFudDsgfVxuLnRleHQtdHJ1bmNhdGUgeyBAaW5jbHVkZSB0ZXh0LXRydW5jYXRlOyB9XG5cbi8vIFJlc3BvbnNpdmUgYWxpZ25tZW50XG5cbkBlYWNoICRicmVha3BvaW50IGluIG1hcC1rZXlzKCRncmlkLWJyZWFrcG9pbnRzKSB7XG4gIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoJGJyZWFrcG9pbnQpIHtcbiAgICAkaW5maXg6IGJyZWFrcG9pbnQtaW5maXgoJGJyZWFrcG9pbnQsICRncmlkLWJyZWFrcG9pbnRzKTtcblxuICAgIC50ZXh0I3skaW5maXh9LWxlZnQgICB7IHRleHQtYWxpZ246IGxlZnQgIWltcG9ydGFudDsgfVxuICAgIC50ZXh0I3skaW5maXh9LXJpZ2h0ICB7IHRleHQtYWxpZ246IHJpZ2h0ICFpbXBvcnRhbnQ7IH1cbiAgICAudGV4dCN7JGluZml4fS1jZW50ZXIgeyB0ZXh0LWFsaWduOiBjZW50ZXIgIWltcG9ydGFudDsgfVxuICB9XG59XG5cbi8vIFRyYW5zZm9ybWF0aW9uXG5cbi50ZXh0LWxvd2VyY2FzZSAgeyB0ZXh0LXRyYW5zZm9ybTogbG93ZXJjYXNlICFpbXBvcnRhbnQ7IH1cbi50ZXh0LXVwcGVyY2FzZSAgeyB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlICFpbXBvcnRhbnQ7IH1cbi50ZXh0LWNhcGl0YWxpemUgeyB0ZXh0LXRyYW5zZm9ybTogY2FwaXRhbGl6ZSAhaW1wb3J0YW50OyB9XG5cbi8vIFdlaWdodCBhbmQgaXRhbGljc1xuXG4uZm9udC13ZWlnaHQtbm9ybWFsIHsgZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1ub3JtYWw7IH1cbi5mb250LXdlaWdodC1ib2xkICAgeyBmb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LWJvbGQ7IH1cbi5mb250LWl0YWxpYyAgICAgICAgeyBmb250LXN0eWxlOiBpdGFsaWM7IH1cblxuLy8gQ29udGV4dHVhbCBjb2xvcnNcblxuLnRleHQtd2hpdGUge1xuICBjb2xvcjogI2ZmZiAhaW1wb3J0YW50O1xufVxuXG5AaW5jbHVkZSB0ZXh0LWVtcGhhc2lzLXZhcmlhbnQoJy50ZXh0LW11dGVkJywgJHRleHQtbXV0ZWQpO1xuXG5AaW5jbHVkZSB0ZXh0LWVtcGhhc2lzLXZhcmlhbnQoJy50ZXh0LXByaW1hcnknLCAkYnJhbmQtcHJpbWFyeSk7XG5cbkBpbmNsdWRlIHRleHQtZW1waGFzaXMtdmFyaWFudCgnLnRleHQtc3VjY2VzcycsICRicmFuZC1zdWNjZXNzKTtcblxuQGluY2x1ZGUgdGV4dC1lbXBoYXNpcy12YXJpYW50KCcudGV4dC1pbmZvJywgJGJyYW5kLWluZm8pO1xuXG5AaW5jbHVkZSB0ZXh0LWVtcGhhc2lzLXZhcmlhbnQoJy50ZXh0LXdhcm5pbmcnLCAkYnJhbmQtd2FybmluZyk7XG5cbkBpbmNsdWRlIHRleHQtZW1waGFzaXMtdmFyaWFudCgnLnRleHQtZGFuZ2VyJywgJGJyYW5kLWRhbmdlcik7XG5cbi8vIEZvbnQgY29sb3JcblxuQGluY2x1ZGUgdGV4dC1lbXBoYXNpcy12YXJpYW50KCcudGV4dC1ncmF5LWRhcmsnLCAkZ3JheS1kYXJrKTtcblxuLy8gTWlzY1xuXG4udGV4dC1oaWRlIHtcbiAgQGluY2x1ZGUgdGV4dC1oaWRlKCk7XG59XG4iLCIvL1xuLy8gVmlzaWJpbGl0eSB1dGlsaXRpZXNcbi8vXG5cbi5pbnZpc2libGUge1xuICBAaW5jbHVkZSBpbnZpc2libGUoKTtcbn1cblxuLy8gUmVzcG9uc2l2ZSB2aXNpYmlsaXR5IHV0aWxpdGllc1xuXG5AZWFjaCAkYnAgaW4gbWFwLWtleXMoJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgLmhpZGRlbi0jeyRicH0tdXAge1xuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoJGJwKSB7XG4gICAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gICAgfVxuICB9XG4gIC5oaWRkZW4tI3skYnB9LWRvd24ge1xuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bigkYnApIHtcbiAgICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgICB9XG4gIH1cbn1cblxuXG4vLyBQcmludCB1dGlsaXRpZXNcbi8vXG4vLyBNZWRpYSBxdWVyaWVzIGFyZSBwbGFjZWQgb24gdGhlIGluc2lkZSB0byBiZSBtaXhpbi1mcmllbmRseS5cblxuLnZpc2libGUtcHJpbnQtYmxvY2sge1xuICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG5cbiAgQG1lZGlhIHByaW50IHtcbiAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xuICB9XG59XG4udmlzaWJsZS1wcmludC1pbmxpbmUge1xuICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG5cbiAgQG1lZGlhIHByaW50IHtcbiAgICBkaXNwbGF5OiBpbmxpbmUgIWltcG9ydGFudDtcbiAgfVxufVxuLnZpc2libGUtcHJpbnQtaW5saW5lLWJsb2NrIHtcbiAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuXG4gIEBtZWRpYSBwcmludCB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuLmhpZGRlbi1wcmludCB7XG4gIEBtZWRpYSBwcmludCB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG59XG4iLCJAaW1wb3J0IHVybCgnaHR0cHM6Ly9mb250cy5nb29nbGVhcGlzLmNvbS9jc3M/ZmFtaWx5PUxhdG86MTAwLDMwMCw0MDAsNzAwLDkwMCwxMDBpdGFsaWMsMzAwaXRhbGljLDQwMGl0YWxpYyw3MDBpdGFsaWMsOTAwaXRhbGljJyk7XHJcbkBpbXBvcnQgdXJsKCdodHRwczovL2ZvbnRzLmdvb2dsZWFwaXMuY29tL2Nzcz9mYW1pbHk9TWVycml3ZWF0aGVyOjQwMCwzMDAsNzAwLDkwMCwzMDBpdGFsaWMsNDAwaXRhbGljLDcwMGl0YWxpYyw5MDBpdGFsaWMnKTtcclxuQGltcG9ydCB1cmwoJ2h0dHBzOi8vZm9udHMuZ29vZ2xlYXBpcy5jb20vY3NzP2ZhbWlseT1MYStCZWxsZStBdXJvcmUnKTtcclxuXHJcbi8vIE92ZXJ3cml0ZSB0aGVtZSBob3ZlciBjb2xvdXJcclxuLmJ0bjpob3ZlcixcclxuLmJ0bi1sYXJnZTpob3ZlciB7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogJGJyYW5kLWFjY2VudC1kYXJrZXI7XHJcbn0iLCIiLCIuY29tbWVudC1saXN0IHtcclxuICBAZXh0ZW5kIC5saXN0LXVuc3R5bGVkO1xyXG59XHJcbi5jb21tZW50LWxpc3Qgb2wge1xyXG4gIGxpc3Qtc3R5bGU6IG5vbmU7XHJcbn1cclxuLmNvbW1lbnQtZm9ybSBwIHtcclxuICBAZXh0ZW5kIC5mb3JtLWdyb3VwO1xyXG59XHJcbi5jb21tZW50LWZvcm0gaW5wdXRbdHlwZT1cInRleHRcIl0sXHJcbi5jb21tZW50LWZvcm0gaW5wdXRbdHlwZT1cImVtYWlsXCJdLFxyXG4uY29tbWVudC1mb3JtIGlucHV0W3R5cGU9XCJ1cmxcIl0sXHJcbi5jb21tZW50LWZvcm0gdGV4dGFyZWEge1xyXG4gIEBleHRlbmQgLmZvcm0tY29udHJvbDtcclxufVxyXG4uY29tbWVudC1mb3JtIGlucHV0W3R5cGU9XCJzdWJtaXRcIl0ge1xyXG4gIEBleHRlbmQgLmJ0bjtcclxuICBAZXh0ZW5kIC5idG4tc2Vjb25kYXJ5O1xyXG59XHJcbiIsIi8vIFNlYXJjaCBmb3JtXHJcbi5zZWFyY2gtZm9ybSB7XHJcbiAgQGV4dGVuZCAuZm9ybS1pbmxpbmU7XHJcbn1cclxuLnNlYXJjaC1mb3JtIGxhYmVsIHtcclxuICBmb250LXdlaWdodDogbm9ybWFsO1xyXG4gIEBleHRlbmQgLmZvcm0tZ3JvdXA7XHJcbn1cclxuLnNlYXJjaC1mb3JtIC5zZWFyY2gtZmllbGQge1xyXG4gIEBleHRlbmQgLmZvcm0tY29udHJvbDtcclxufVxyXG4uc2VhcmNoLWZvcm0gLnNlYXJjaC1zdWJtaXQge1xyXG4gIEBleHRlbmQgLmJ0bjtcclxuICBAZXh0ZW5kIC5idG4tc2Vjb25kYXJ5O1xyXG59XHJcbiIsIi8vIFdvcmRQcmVzcyBHZW5lcmF0ZWQgQ2xhc3Nlc1xyXG4vLyBodHRwOi8vY29kZXgud29yZHByZXNzLm9yZy9DU1MjV29yZFByZXNzX0dlbmVyYXRlZF9DbGFzc2VzXHJcblxyXG4vLyBNZWRpYSBhbGlnbm1lbnRcclxuLmFsaWdubm9uZSB7XHJcbiAgbWFyZ2luLWxlZnQ6IDA7XHJcbiAgbWFyZ2luLXJpZ2h0OiAwO1xyXG4gIG1heC13aWR0aDogMTAwJTtcclxuICBoZWlnaHQ6IGF1dG87XHJcbn1cclxuLmFsaWduY2VudGVyIHtcclxuICBkaXNwbGF5OiBibG9jaztcclxuICBtYXJnaW46ICgkc3BhY2VyIC8gMikgYXV0bztcclxuICBoZWlnaHQ6IGF1dG87XHJcbn1cclxuLmFsaWdubGVmdCxcclxuLmFsaWducmlnaHQge1xyXG4gIG1hcmdpbi1ib3R0b206ICgkc3BhY2VyIC8gMik7XHJcbiAgaGVpZ2h0OiBhdXRvO1xyXG59XHJcbkBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoc20pIHtcclxuICAvLyBPbmx5IGZsb2F0IGlmIG5vdCBvbiBhbiBleHRyYSBzbWFsbCBkZXZpY2VcclxuICAuYWxpZ25sZWZ0IHtcclxuICAgIGZsb2F0OiBsZWZ0O1xyXG4gICAgbWFyZ2luLXJpZ2h0OiAoJHNwYWNlciAvIDIpO1xyXG4gIH1cclxuICAuYWxpZ25yaWdodCB7XHJcbiAgICBmbG9hdDogcmlnaHQ7XHJcbiAgICBtYXJnaW4tbGVmdDogKCRzcGFjZXIgLyAyKTtcclxuICB9XHJcbn1cclxuXHJcbi8vIENhcHRpb25zXHJcbi53cC1jYXB0aW9uIHtcclxuICBAZXh0ZW5kIC5maWd1cmUtaW1nO1xyXG4gIEBleHRlbmQgLmltZy1mbHVpZDtcclxufVxyXG4ud3AtY2FwdGlvbi10ZXh0IHtcclxuICBAZXh0ZW5kIC5maWd1cmUtY2FwdGlvbjtcclxufVxyXG5cclxuLy8gVGV4dCBtZWFudCBvbmx5IGZvciBzY3JlZW4gcmVhZGVyc1xyXG4uc2NyZWVuLXJlYWRlci10ZXh0IHtcclxuICBAZXh0ZW5kIC5zci1vbmx5O1xyXG4gIEBleHRlbmQgLnNyLW9ubHktZm9jdXNhYmxlO1xyXG59XHJcbiIsIi5iYW5uZXIgLm5hdiBsaSB7XHJcbiAgQGV4dGVuZCAubmF2LWl0ZW07XHJcbn1cclxuLmJhbm5lciAubmF2IGEge1xyXG4gIEBleHRlbmQgLm5hdi1saW5rO1xyXG59XHJcbiIsIiIsIiIsIiIsIiIsImJvZHkjdGlueW1jZSB7XHJcbiAgbWFyZ2luOiAxMnB4ICFpbXBvcnRhbnQ7XHJcbn1cclxuIiwiLm5hdi1pdGVte1xyXG4gIGxpc3Qtc3R5bGUtdHlwZTogbm9uZSAhaW1wb3J0YW50O1xyXG4gIG9wYWNpdHk6IDAuODtcclxuICAmOmZpcnN0LWNoaWxke1xyXG4gICAgbWFyZ2luLXJpZ2h0OjIwcHg7XHJcbiAgfVxyXG4gIGEge1xyXG4gICAgZm9udC1zaXplOiAxNnB4O1xyXG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XHJcbiAgfVxyXG59XHJcblxyXG4uaGVyb19mdWxsc2NyZWVuLmJhY2tncm91bmRfc29saWQuc29saWRfMDJ7XHJcbiAgaGVpZ2h0OjEwMHZoO1xyXG59XHJcblxyXG4ubG9nb19ob21lIHtcclxuICBtYXJnaW4tYm90dG9tOiAwO1xyXG59XHJcblxyXG4uZm9udC1oYW5kd3JpdGV7XHJcbiAgZm9udC13ZWlnaHQ6IDcwMDtcclxuICBmb250LWZhbWlseTogJ0xhIEJlbGxlIEF1cm9yZScsIGN1cnNpdmU7XHJcbiAgbWFyZ2luLWJvdHRvbTogLTE1cHg7XHJcbiAgbWFyZ2luLWxlZnQ6IDIwMHB4O1xyXG4gIHdvcmQtc3BhY2luZzogLTFyZW07XHJcbiAgY29sb3I6ICRicmFuZC1hY2NlbnQ7XHJcbn1cclxuLnNsb2dhbiB7XHJcbiAgbWFyZ2luLXRvcDowO1xyXG59XHJcblxyXG4uZmVhdHVyZV9ib3guZmVhdHVyZV9ib3hfZmluYWwge1xyXG4gIGJvcmRlci1ib3R0b206IG5vbmU7XHJcbn1cclxuXHJcblxyXG5cclxuLnN0cmlrZSB7XHJcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxufVxyXG4uc3RyaWtlOjpiZWZvcmUge1xyXG4gIGNvbnRlbnQ6ICcnO1xyXG4gIHdpZHRoOiAxMDAlO1xyXG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICByaWdodDogMDtcclxuICB0b3A6IDUwJTtcclxufVxyXG4uc3RyaWtlOjpiZWZvcmUge1xyXG4gIGJvcmRlci1ib3R0b206IDRweCBzb2xpZCAkYnJhbmQtYWNjZW50OztcclxuICAtd2Via2l0LXRyYW5zZm9ybTogc2tld1koLTEwZGVnKTtcclxuICB0cmFuc2Zvcm06IHNrZXdZKC0xMGRlZyk7XHJcbn1cclxuXHJcbnAuZGVzY3JpcHRpb24ge1xyXG4gIGZvbnQtc2l6ZTogMS4ycmVtO1xyXG59XHJcblxyXG5wLmxhdW5jaC1kZXNjcmlwdGlvbiB7XHJcbiAgb3BhY2l0eTogMTtcclxuICAubGF1bmNoLXRleHQge1xyXG4gICAgb3BhY2l0eTogMC42NDtcclxuICB9XHJcbn1cclxuXHJcbi5zbWlsZXkge1xyXG4gIG9wYWNpdHk6IDE7XHJcbn1cclxuXHJcbiNtb3JlX2luZm8ge1xyXG4gIHVsIHtcclxuICAgIGZvbnQtc2l6ZTogMS4ycmVtO1xyXG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gICAgb3BhY2l0eTogMC42NDtcclxuICAgIGxpc3Qtc3R5bGUtdHlwZTogY2lyY2xlO1xyXG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgbGkge1xyXG4gICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuLy8gU3R5bGUgZnJvbSBNYWlsZXJMaWdodCBmb3IgU3Vic2NyaWJlIGZvcm0gcG9wdXBcclxuLm1sLWJ1dHRvbi1pZnJhbWUge1xyXG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7XHJcbiAgYm9yZGVyOiAwcHggbm9uZSB0cmFuc3BhcmVudCAhaW1wb3J0YW50O1xyXG4gIG92ZXJmbG93OiBoaWRkZW4gIWltcG9ydGFudDtcclxuICBwb3NpdGlvbjogZml4ZWQgIWltcG9ydGFudDtcclxuICB2aXNpYmlsaXR5OiB2aXNpYmxlICFpbXBvcnRhbnQ7XHJcbiAgbWFyZ2luOiAwcHggIWltcG9ydGFudDtcclxuICBwYWRkaW5nOiAwcHggIWltcG9ydGFudDtcclxuICBsZWZ0OiAwcHggIWltcG9ydGFudDtcclxuICB0b3A6IDBweCAhaW1wb3J0YW50O1xyXG4gIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XHJcbiAgaGVpZ2h0OiAxMDAlICFpbXBvcnRhbnQ7XHJcbiAgei1pbmRleDogOTk5OSAhaW1wb3J0YW50O1xyXG4gIGRpc3BsYXk6IG5vbmU7XHJcbn1cclxuXHJcbiNmb290ZXIuc3Vic2VjdGlvbiB7XHJcbiAgcGFkZGluZy10b3A6IDA7XHJcbn0iLCIvKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG5bU3R5bGVzaGVldF1cclxuSkFNRVMgRnJhbWV3b3JrIC0gUmVzZXQgJiBUeXBvZ3JhcGh5XHJcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xyXG5cclxuLyohIG5vcm1hbGl6ZS5jc3MgdjMuMC4xIHwgTUlUIExpY2Vuc2UgfCBnaXQuaW8vbm9ybWFsaXplICovXHJcbi8qKlxyXG4gKiAxLiBTZXQgZGVmYXVsdCBmb250IGZhbWlseSB0byBzYW5zLXNlcmlmLlxyXG4gKiAyLiBQcmV2ZW50IGlPUyB0ZXh0IHNpemUgYWRqdXN0IGFmdGVyIG9yaWVudGF0aW9uIGNoYW5nZSwgd2l0aG91dCBkaXNhYmxpbmdcclxuICogICAgdXNlciB6b29tLlxyXG4gKi9cclxuaHRtbCB7XHJcbiAgZm9udC1mYW1pbHk6IHNhbnMtc2VyaWY7XHJcbiAgLyogMSAqL1xyXG4gIC1tcy10ZXh0LXNpemUtYWRqdXN0OiAxMDAlO1xyXG4gIC8qIDIgKi9cclxuICAtd2Via2l0LXRleHQtc2l6ZS1hZGp1c3Q6IDEwMCU7XHJcbiAgLyogMiAqLyB9XHJcblxyXG4vKipcclxuICogUmVtb3ZlIGRlZmF1bHQgbWFyZ2luLlxyXG4gKi9cclxuYm9keSB7XHJcbiAgbWFyZ2luOiAwOyB9XHJcblxyXG4vKiBIVE1MNSBkaXNwbGF5IGRlZmluaXRpb25zXHJcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXHJcbi8qKlxyXG4gKiBDb3JyZWN0IGBibG9ja2AgZGlzcGxheSBub3QgZGVmaW5lZCBmb3IgYW55IEhUTUw1IGVsZW1lbnQgaW4gSUUgOC85LlxyXG4gKiBDb3JyZWN0IGBibG9ja2AgZGlzcGxheSBub3QgZGVmaW5lZCBmb3IgYGRldGFpbHNgIG9yIGBzdW1tYXJ5YCBpbiBJRSAxMC8xMSBhbmQgRmlyZWZveC5cclxuICogQ29ycmVjdCBgYmxvY2tgIGRpc3BsYXkgbm90IGRlZmluZWQgZm9yIGBtYWluYCBpbiBJRSAxMS5cclxuICovXHJcbmFydGljbGUsIGFzaWRlLCBkZXRhaWxzLCBmaWdjYXB0aW9uLCBmaWd1cmUsIGZvb3RlciwgaGVhZGVyLCBoZ3JvdXAsIG1haW4sIG5hdiwgc2VjdGlvbiwgc3VtbWFyeSB7XHJcbiAgZGlzcGxheTogYmxvY2s7IH1cclxuXHJcbi8qKlxyXG4gKiAxLiBDb3JyZWN0IGBpbmxpbmUtYmxvY2tgIGRpc3BsYXkgbm90IGRlZmluZWQgaW4gSUUgOC85LlxyXG4gKiAyLiBOb3JtYWxpemUgdmVydGljYWwgYWxpZ25tZW50IG9mIGBwcm9ncmVzc2AgaW4gQ2hyb21lLCBGaXJlZm94LCBhbmQgT3BlcmEuXHJcbiAqL1xyXG5hdWRpbywgY2FudmFzLCBwcm9ncmVzcywgdmlkZW8ge1xyXG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAvKiAxICovXHJcbiAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lO1xyXG4gIC8qIDIgKi8gfVxyXG5cclxuLyoqXHJcbiAqIFByZXZlbnQgbW9kZXJuIGJyb3dzZXJzIGZyb20gZGlzcGxheWluZyBgYXVkaW9gIHdpdGhvdXQgY29udHJvbHMuXHJcbiAqIFJlbW92ZSBleGNlc3MgaGVpZ2h0IGluIGlPUyA1IGRldmljZXMuXHJcbiAqL1xyXG5hdWRpbzpub3QoW2NvbnRyb2xzXSkge1xyXG4gIGRpc3BsYXk6IG5vbmU7XHJcbiAgaGVpZ2h0OiAwOyB9XHJcblxyXG4vKipcclxuICogQWRkcmVzcyBgW2hpZGRlbl1gIHN0eWxpbmcgbm90IHByZXNlbnQgaW4gSUUgOC85LzEwLlxyXG4gKiBIaWRlIHRoZSBgdGVtcGxhdGVgIGVsZW1lbnQgaW4gSUUgOC85LzExLCBTYWZhcmksIGFuZCBGaXJlZm94IDwgMjIuXHJcbiAqL1xyXG5baGlkZGVuXSwgdGVtcGxhdGUge1xyXG4gIGRpc3BsYXk6IG5vbmU7IH1cclxuXHJcbi8qIExpbmtzXHJcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXHJcbi8qKlxyXG4gKiBSZW1vdmUgdGhlIGdyYXkgYmFja2dyb3VuZCBjb2xvciBmcm9tIGFjdGl2ZSBsaW5rcyBpbiBJRSAxMC5cclxuICovXHJcbmEge1xyXG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50OyB9XHJcblxyXG4vKipcclxuICogSW1wcm92ZSByZWFkYWJpbGl0eSB3aGVuIGZvY3VzZWQgYW5kIGFsc28gbW91c2UgaG92ZXJlZCBpbiBhbGwgYnJvd3NlcnMuXHJcbiAqL1xyXG5hOmFjdGl2ZSwgYTpob3ZlciB7XHJcbiAgb3V0bGluZTogMDsgfVxyXG5cclxuLyogVGV4dC1sZXZlbCBzZW1hbnRpY3NcclxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cclxuLyoqXHJcbiAqIEFkZHJlc3Mgc3R5bGluZyBub3QgcHJlc2VudCBpbiBJRSA4LzkvMTAvMTEsIFNhZmFyaSwgYW5kIENocm9tZS5cclxuICovXHJcbmFiYnJbdGl0bGVdIHtcclxuICBib3JkZXItYm90dG9tOiAxcHggZG90dGVkOyB9XHJcblxyXG4vKipcclxuICogQWRkcmVzcyBzdHlsZSBzZXQgdG8gYGJvbGRlcmAgaW4gRmlyZWZveCA0KywgU2FmYXJpLCBhbmQgQ2hyb21lLlxyXG4gKi9cclxuYiwgc3Ryb25nIHtcclxuICBmb250LXdlaWdodDogYm9sZDsgfVxyXG5cclxuLyoqXHJcbiAqIEFkZHJlc3Mgc3R5bGluZyBub3QgcHJlc2VudCBpbiBTYWZhcmkgYW5kIENocm9tZS5cclxuICovXHJcbmRmbiB7XHJcbiAgZm9udC1zdHlsZTogaXRhbGljOyB9XHJcblxyXG4vKipcclxuICogQWRkcmVzcyB2YXJpYWJsZSBgaDFgIGZvbnQtc2l6ZSBhbmQgbWFyZ2luIHdpdGhpbiBgc2VjdGlvbmAgYW5kIGBhcnRpY2xlYFxyXG4gKiBjb250ZXh0cyBpbiBGaXJlZm94IDQrLCBTYWZhcmksIGFuZCBDaHJvbWUuXHJcbiAqL1xyXG5oMSB7XHJcbiAgZm9udC1zaXplOiAyZW07XHJcbiAgbWFyZ2luOiAwLjY3ZW0gMDsgfVxyXG5cclxuLyoqXHJcbiAqIEFkZHJlc3Mgc3R5bGluZyBub3QgcHJlc2VudCBpbiBJRSA4LzkuXHJcbiAqL1xyXG5tYXJrIHtcclxuICBiYWNrZ3JvdW5kOiAjZmYwO1xyXG4gIGNvbG9yOiAjMDAwOyB9XHJcblxyXG4vKipcclxuICogQWRkcmVzcyBpbmNvbnNpc3RlbnQgYW5kIHZhcmlhYmxlIGZvbnQgc2l6ZSBpbiBhbGwgYnJvd3NlcnMuXHJcbiAqL1xyXG5zbWFsbCB7XHJcbiAgZm9udC1zaXplOiA4MCU7IH1cclxuXHJcbi8qKlxyXG4gKiBQcmV2ZW50IGBzdWJgIGFuZCBgc3VwYCBhZmZlY3RpbmcgYGxpbmUtaGVpZ2h0YCBpbiBhbGwgYnJvd3NlcnMuXHJcbiAqL1xyXG5zdWIsIHN1cCB7XHJcbiAgZm9udC1zaXplOiA3NSU7XHJcbiAgbGluZS1oZWlnaHQ6IDA7XHJcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTsgfVxyXG5cclxuc3VwIHtcclxuICB0b3A6IC0wLjVlbTsgfVxyXG5cclxuc3ViIHtcclxuICBib3R0b206IC0wLjI1ZW07IH1cclxuXHJcbi8qIEVtYmVkZGVkIGNvbnRlbnRcclxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cclxuLyoqXHJcbiAqIFJlbW92ZSBib3JkZXIgd2hlbiBpbnNpZGUgYGFgIGVsZW1lbnQgaW4gSUUgOC85LzEwLlxyXG4gKi9cclxuaW1nIHtcclxuICBib3JkZXI6IDA7IH1cclxuXHJcbi8qKlxyXG4gKiBDb3JyZWN0IG92ZXJmbG93IG5vdCBoaWRkZW4gaW4gSUUgOS8xMC8xMS5cclxuICovXHJcbnN2Zzpub3QoOnJvb3QpIHtcclxuICBvdmVyZmxvdzogaGlkZGVuOyB9XHJcblxyXG4vKiBHcm91cGluZyBjb250ZW50XHJcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXHJcbi8qKlxyXG4gKiBBZGRyZXNzIG1hcmdpbiBub3QgcHJlc2VudCBpbiBJRSA4LzkgYW5kIFNhZmFyaS5cclxuICovXHJcbmZpZ3VyZSB7XHJcbiAgbWFyZ2luOiAxZW0gNDBweDsgfVxyXG5cclxuLyoqXHJcbiAqIEFkZHJlc3MgZGlmZmVyZW5jZXMgYmV0d2VlbiBGaXJlZm94IGFuZCBvdGhlciBicm93c2Vycy5cclxuICovXHJcbmhyIHtcclxuICAtbW96LWJveC1zaXppbmc6IGNvbnRlbnQtYm94O1xyXG4gIGJveC1zaXppbmc6IGNvbnRlbnQtYm94O1xyXG4gIGhlaWdodDogMDsgfVxyXG5cclxuLyoqXHJcbiAqIENvbnRhaW4gb3ZlcmZsb3cgaW4gYWxsIGJyb3dzZXJzLlxyXG4gKi9cclxucHJlIHtcclxuICBvdmVyZmxvdzogYXV0bzsgfVxyXG5cclxuLyoqXHJcbiAqIEFkZHJlc3Mgb2RkIGBlbWAtdW5pdCBmb250IHNpemUgcmVuZGVyaW5nIGluIGFsbCBicm93c2Vycy5cclxuICovXHJcbmNvZGUsIGtiZCwgcHJlLCBzYW1wIHtcclxuICBmb250LWZhbWlseTogbW9ub3NwYWNlLCBtb25vc3BhY2U7XHJcbiAgZm9udC1zaXplOiAxZW07IH1cclxuXHJcbi8qIEZvcm1zXHJcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXHJcbi8qKlxyXG4gKiBLbm93biBsaW1pdGF0aW9uOiBieSBkZWZhdWx0LCBDaHJvbWUgYW5kIFNhZmFyaSBvbiBPUyBYIGFsbG93IHZlcnkgbGltaXRlZFxyXG4gKiBzdHlsaW5nIG9mIGBzZWxlY3RgLCB1bmxlc3MgYSBgYm9yZGVyYCBwcm9wZXJ0eSBpcyBzZXQuXHJcbiAqL1xyXG4vKipcclxuICogMS4gQ29ycmVjdCBjb2xvciBub3QgYmVpbmcgaW5oZXJpdGVkLlxyXG4gKiAgICBLbm93biBpc3N1ZTogYWZmZWN0cyBjb2xvciBvZiBkaXNhYmxlZCBlbGVtZW50cy5cclxuICogMi4gQ29ycmVjdCBmb250IHByb3BlcnRpZXMgbm90IGJlaW5nIGluaGVyaXRlZC5cclxuICogMy4gQWRkcmVzcyBtYXJnaW5zIHNldCBkaWZmZXJlbnRseSBpbiBGaXJlZm94IDQrLCBTYWZhcmksIGFuZCBDaHJvbWUuXHJcbiAqL1xyXG5idXR0b24sIGlucHV0LCBvcHRncm91cCwgc2VsZWN0LCB0ZXh0YXJlYSB7XHJcbiAgY29sb3I6IGluaGVyaXQ7XHJcbiAgLyogMSAqL1xyXG4gIGZvbnQ6IGluaGVyaXQ7XHJcbiAgLyogMiAqL1xyXG4gIG1hcmdpbjogMDtcclxuICAvKiAzICovIH1cclxuXHJcbi8qKlxyXG4gKiBBZGRyZXNzIGBvdmVyZmxvd2Agc2V0IHRvIGBoaWRkZW5gIGluIElFIDgvOS8xMC8xMS5cclxuICovXHJcbmJ1dHRvbiB7XHJcbiAgb3ZlcmZsb3c6IHZpc2libGU7IH1cclxuXHJcbi8qKlxyXG4gKiBBZGRyZXNzIGluY29uc2lzdGVudCBgdGV4dC10cmFuc2Zvcm1gIGluaGVyaXRhbmNlIGZvciBgYnV0dG9uYCBhbmQgYHNlbGVjdGAuXHJcbiAqIEFsbCBvdGhlciBmb3JtIGNvbnRyb2wgZWxlbWVudHMgZG8gbm90IGluaGVyaXQgYHRleHQtdHJhbnNmb3JtYCB2YWx1ZXMuXHJcbiAqIENvcnJlY3QgYGJ1dHRvbmAgc3R5bGUgaW5oZXJpdGFuY2UgaW4gRmlyZWZveCwgSUUgOC85LzEwLzExLCBhbmQgT3BlcmEuXHJcbiAqIENvcnJlY3QgYHNlbGVjdGAgc3R5bGUgaW5oZXJpdGFuY2UgaW4gRmlyZWZveC5cclxuICovXHJcbmJ1dHRvbiwgc2VsZWN0IHtcclxuICB0ZXh0LXRyYW5zZm9ybTogbm9uZTsgfVxyXG5cclxuLyoqXHJcbiAqIDEuIEF2b2lkIHRoZSBXZWJLaXQgYnVnIGluIEFuZHJvaWQgNC4wLiogd2hlcmUgKDIpIGRlc3Ryb3lzIG5hdGl2ZSBgYXVkaW9gXHJcbiAqICAgIGFuZCBgdmlkZW9gIGNvbnRyb2xzLlxyXG4gKiAyLiBDb3JyZWN0IGluYWJpbGl0eSB0byBzdHlsZSBjbGlja2FibGUgYGlucHV0YCB0eXBlcyBpbiBpT1MuXHJcbiAqIDMuIEltcHJvdmUgdXNhYmlsaXR5IGFuZCBjb25zaXN0ZW5jeSBvZiBjdXJzb3Igc3R5bGUgYmV0d2VlbiBpbWFnZS10eXBlXHJcbiAqICAgIGBpbnB1dGAgYW5kIG90aGVycy5cclxuICovXHJcbmJ1dHRvbiwgaHRtbCBpbnB1dFt0eXBlPVwiYnV0dG9uXCJdLCBpbnB1dFt0eXBlPVwicmVzZXRcIl0sIGlucHV0W3R5cGU9XCJzdWJtaXRcIl0ge1xyXG4gIC13ZWJraXQtYXBwZWFyYW5jZTogYnV0dG9uO1xyXG4gIC8qIDIgKi9cclxuICBjdXJzb3I6IHBvaW50ZXI7XHJcbiAgLyogMyAqLyB9XHJcblxyXG4vKipcclxuICogUmUtc2V0IGRlZmF1bHQgY3Vyc29yIGZvciBkaXNhYmxlZCBlbGVtZW50cy5cclxuICovXHJcbmJ1dHRvbltkaXNhYmxlZF0sIGh0bWwgaW5wdXRbZGlzYWJsZWRdIHtcclxuICBjdXJzb3I6IGRlZmF1bHQ7IH1cclxuXHJcbi8qKlxyXG4gKiBSZW1vdmUgaW5uZXIgcGFkZGluZyBhbmQgYm9yZGVyIGluIEZpcmVmb3ggNCsuXHJcbiAqL1xyXG5idXR0b246Oi1tb3otZm9jdXMtaW5uZXIsIGlucHV0OjotbW96LWZvY3VzLWlubmVyIHtcclxuICBib3JkZXI6IDA7XHJcbiAgcGFkZGluZzogMDsgfVxyXG5cclxuLyoqXHJcbiAqIEFkZHJlc3MgRmlyZWZveCA0KyBzZXR0aW5nIGBsaW5lLWhlaWdodGAgb24gYGlucHV0YCB1c2luZyBgIWltcG9ydGFudGAgaW5cclxuICogdGhlIFVBIHN0eWxlc2hlZXQuXHJcbiAqL1xyXG5pbnB1dCB7XHJcbiAgbGluZS1oZWlnaHQ6IG5vcm1hbDsgfVxyXG5cclxuLyoqXHJcbiAqIEl0J3MgcmVjb21tZW5kZWQgdGhhdCB5b3UgZG9uJ3QgYXR0ZW1wdCB0byBzdHlsZSB0aGVzZSBlbGVtZW50cy5cclxuICogRmlyZWZveCdzIGltcGxlbWVudGF0aW9uIGRvZXNuJ3QgcmVzcGVjdCBib3gtc2l6aW5nLCBwYWRkaW5nLCBvciB3aWR0aC5cclxuICpcclxuICogMS4gQWRkcmVzcyBib3ggc2l6aW5nIHNldCB0byBgY29udGVudC1ib3hgIGluIElFIDgvOS8xMC5cclxuICogMi4gUmVtb3ZlIGV4Y2VzcyBwYWRkaW5nIGluIElFIDgvOS8xMC5cclxuICovXHJcbmlucHV0W3R5cGU9XCJjaGVja2JveFwiXSwgaW5wdXRbdHlwZT1cInJhZGlvXCJdIHtcclxuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG4gIC8qIDEgKi9cclxuICBwYWRkaW5nOiAwO1xyXG4gIC8qIDIgKi8gfVxyXG5cclxuLyoqXHJcbiAqIEZpeCB0aGUgY3Vyc29yIHN0eWxlIGZvciBDaHJvbWUncyBpbmNyZW1lbnQvZGVjcmVtZW50IGJ1dHRvbnMuIEZvciBjZXJ0YWluXHJcbiAqIGBmb250LXNpemVgIHZhbHVlcyBvZiB0aGUgYGlucHV0YCwgaXQgY2F1c2VzIHRoZSBjdXJzb3Igc3R5bGUgb2YgdGhlXHJcbiAqIGRlY3JlbWVudCBidXR0b24gdG8gY2hhbmdlIGZyb20gYGRlZmF1bHRgIHRvIGB0ZXh0YC5cclxuICovXHJcbmlucHV0W3R5cGU9XCJudW1iZXJcIl06Oi13ZWJraXQtaW5uZXItc3Bpbi1idXR0b24sIGlucHV0W3R5cGU9XCJudW1iZXJcIl06Oi13ZWJraXQtb3V0ZXItc3Bpbi1idXR0b24ge1xyXG4gIGhlaWdodDogYXV0bzsgfVxyXG5cclxuLyoqXHJcbiAqIDEuIEFkZHJlc3MgYGFwcGVhcmFuY2VgIHNldCB0byBgc2VhcmNoZmllbGRgIGluIFNhZmFyaSBhbmQgQ2hyb21lLlxyXG4gKiAyLiBBZGRyZXNzIGBib3gtc2l6aW5nYCBzZXQgdG8gYGJvcmRlci1ib3hgIGluIFNhZmFyaSBhbmQgQ2hyb21lXHJcbiAqICAgIChpbmNsdWRlIGAtbW96YCB0byBmdXR1cmUtcHJvb2YpLlxyXG4gKi9cclxuaW5wdXRbdHlwZT1cInNlYXJjaFwiXSB7XHJcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiB0ZXh0ZmllbGQ7XHJcbiAgLyogMSAqL1xyXG4gIC1tb3otYm94LXNpemluZzogY29udGVudC1ib3g7XHJcbiAgLXdlYmtpdC1ib3gtc2l6aW5nOiBjb250ZW50LWJveDtcclxuICAvKiAyICovXHJcbiAgYm94LXNpemluZzogY29udGVudC1ib3g7IH1cclxuXHJcbi8qKlxyXG4gKiBSZW1vdmUgaW5uZXIgcGFkZGluZyBhbmQgc2VhcmNoIGNhbmNlbCBidXR0b24gaW4gU2FmYXJpIGFuZCBDaHJvbWUgb24gT1MgWC5cclxuICogU2FmYXJpIChidXQgbm90IENocm9tZSkgY2xpcHMgdGhlIGNhbmNlbCBidXR0b24gd2hlbiB0aGUgc2VhcmNoIGlucHV0IGhhc1xyXG4gKiBwYWRkaW5nIChhbmQgYHRleHRmaWVsZGAgYXBwZWFyYW5jZSkuXHJcbiAqL1xyXG5pbnB1dFt0eXBlPVwic2VhcmNoXCJdOjotd2Via2l0LXNlYXJjaC1jYW5jZWwtYnV0dG9uLCBpbnB1dFt0eXBlPVwic2VhcmNoXCJdOjotd2Via2l0LXNlYXJjaC1kZWNvcmF0aW9uIHtcclxuICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7IH1cclxuXHJcbi8qKlxyXG4gKiBEZWZpbmUgY29uc2lzdGVudCBib3JkZXIsIG1hcmdpbiwgYW5kIHBhZGRpbmcuXHJcbiAqL1xyXG5maWVsZHNldCB7XHJcbiAgYm9yZGVyOiAxcHggc29saWQgI2MwYzBjMDtcclxuICBtYXJnaW46IDAgMnB4O1xyXG4gIHBhZGRpbmc6IDAuMzVlbSAwLjYyNWVtIDAuNzVlbTsgfVxyXG5cclxuLyoqXHJcbiAqIDEuIENvcnJlY3QgYGNvbG9yYCBub3QgYmVpbmcgaW5oZXJpdGVkIGluIElFIDgvOS8xMC8xMS5cclxuICogMi4gUmVtb3ZlIHBhZGRpbmcgc28gcGVvcGxlIGFyZW4ndCBjYXVnaHQgb3V0IGlmIHRoZXkgemVybyBvdXQgZmllbGRzZXRzLlxyXG4gKi9cclxubGVnZW5kIHtcclxuICBib3JkZXI6IDA7XHJcbiAgLyogMSAqL1xyXG4gIHBhZGRpbmc6IDA7XHJcbiAgLyogMiAqLyB9XHJcblxyXG4vKipcclxuICogUmVtb3ZlIGRlZmF1bHQgdmVydGljYWwgc2Nyb2xsYmFyIGluIElFIDgvOS8xMC8xMS5cclxuICovXHJcbnRleHRhcmVhIHtcclxuICBvdmVyZmxvdzogYXV0bzsgfVxyXG5cclxuLyoqXHJcbiAqIERvbid0IGluaGVyaXQgdGhlIGBmb250LXdlaWdodGAgKGFwcGxpZWQgYnkgYSBydWxlIGFib3ZlKS5cclxuICogTk9URTogdGhlIGRlZmF1bHQgY2Fubm90IHNhZmVseSBiZSBjaGFuZ2VkIGluIENocm9tZSBhbmQgU2FmYXJpIG9uIE9TIFguXHJcbiAqL1xyXG5vcHRncm91cCB7XHJcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7IH1cclxuXHJcbi8qIFRhYmxlc1xyXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xyXG4vKipcclxuICogUmVtb3ZlIG1vc3Qgc3BhY2luZyBiZXR3ZWVuIHRhYmxlIGNlbGxzLlxyXG4gKi9cclxudGFibGUge1xyXG4gIGJvcmRlci1jb2xsYXBzZTogY29sbGFwc2U7XHJcbiAgYm9yZGVyLXNwYWNpbmc6IDA7IH1cclxuXHJcbnRkLCB0aCB7XHJcbiAgcGFkZGluZzogMDsgfVxyXG5cclxuaHRtbCB7XHJcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDsgfVxyXG5cclxuKiwgKjpiZWZvcmUsICo6YWZ0ZXIge1xyXG4gIGJveC1zaXppbmc6IGluaGVyaXQ7IH1cclxuXHJcbnVsIHtcclxuICBsaXN0LXN0eWxlLXR5cGU6IG5vbmU7XHJcbiAgcGFkZGluZzowOyB9XHJcblxyXG5cclxuLyogVHlwb2dyYXBoeSBcclxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cclxuXHJcbmEge1xyXG4gXHQgdGV4dC1kZWNvcmF0aW9uOiBub25lOyAgXHJcbn1cclxuXHJcbmh0bWwge1xyXG5cdC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkICFpbXBvcnRhbnQ7XHJcblx0dGV4dC1yZW5kZXJpbmc6IG9wdGltaXplTGVnaWJpbGl0eSAhaW1wb3J0YW50O1xyXG4gXHRmb250LXNpemU6IDE0cHg7XHJcbiAgXHRsaW5lLWhlaWdodDogMS43MnJlbTtcclxuIFx0Zm9udC1mYW1pbHk6ICdNZXJyaXdlYXRoZXInLCBzZXJpZjtcclxuICBcdGZvbnQtd2VpZ2h0OiBub3JtYWw7XHJcbn1cclxuXHJcbmgxLCBoMiwgaDMsIGg0LCBoNiwgLmJ0biwgLmJ0bi1sYXJnZSwgLmJ0bi1mbGF0LCAubWVudV9iYXJfbmF2aWdhdGlvbiwgLmNicC1zcG1lbnUgYSB7XHJcblx0Zm9udC1mYW1pbHk6ICdMYXRvJywgc2Fucy1zZXJpZjtcclxufSBcclxuXHJcbkBtZWRpYSAobWF4LXdpZHRoOiA0NzlweCkge2h0bWwgeyBmb250LXNpemU6IDEycHg7IH19XHJcbkBtZWRpYSAobWluLXdpZHRoOiA0ODBweCkgYW5kIChtYXgtd2lkdGg6IDc2N3B4KSB7aHRtbCB7IGZvbnQtc2l6ZTogMTJweDsgfX1cclxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSBhbmQgKG1heC13aWR0aDogOTkxcHgpIHtodG1sIHsgZm9udC1zaXplOiAxM3B4OyB9fVxyXG5AbWVkaWEgKG1pbi13aWR0aDogOTkycHgpIGFuZCAobWF4LXdpZHRoOiAxMTk5cHgpIHtodG1sIHsgZm9udC1zaXplOiAxNHB4OyB9fVxyXG5AbWVkaWEgKG1pbi13aWR0aDogMTIwMHB4KSB7aHRtbCB7IGZvbnQtc2l6ZTogMTdweDsgfX1cclxuXHJcbmJvZHkge1xyXG5cdC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkICFpbXBvcnRhbnQ7XHJcblx0dGV4dC1yZW5kZXJpbmc6IGdlb21ldHJpY1ByZWNpc2lvbiAhaW1wb3J0YW50O1xyXG59XHJcblxyXG5wIHsgXHJcblx0b3BhY2l0eTogMC42NDtcclxuIFx0Zm9udC13ZWlnaHQ6IDMwMDtcclxuXHRmb250LXNpemU6MC45MnJlbTtcclxuXHRsZXR0ZXItc3BhY2luZzogMC4wMnJlbTtcclxuXHRsaW5lLWhlaWdodDogMS43MnJlbTtcclxuXHRtYXJnaW46IDBweCAwcHggMS43MnJlbSAwcHg7XHJcbn1cclxuXHJcbnAgYSB7XHJcblx0Zm9udC13ZWlnaHQ6IDQwMDtcclxuXHRvcGFjaXR5OjEgIWltcG9ydGFudFxyXG59XHJcblxyXG5oMSBhLCBoMiBhLCBoMyBhLCBoNCBhLCBoNSBhLCBoNiBhIHtcclxuXHRmb250LXdlaWdodDogaW5oZXJpdDsgfVxyXG5cclxuaDEge1xyXG4gXHRvcGFjaXR5OiAwLjY0O1xyXG4gXHRmb250LXdlaWdodDogMzAwO1xyXG4gXHRsZXR0ZXItc3BhY2luZzogLTAuMnJlbTtcdFxyXG4gXHRmb250LXNpemU6IDRyZW07XHJcbiBcdGxpbmUtaGVpZ2h0OiA0LjI4cmVtO1xyXG4gXHRtYXJnaW46IDEuNzJyZW0gMHB4IDEuNzJyZW0gMHB4OyBcclxufVxyXG5cclxuaDIge1xyXG5cdG9wYWNpdHk6IDE7XHJcblx0Zm9udC13ZWlnaHQ6IDMwMDtcclxuXHRsZXR0ZXItc3BhY2luZzogMC4wMXJlbTtcclxuXHRmb250LXNpemU6IDMuMjFyZW07XHJcblx0bGluZS1oZWlnaHQ6IDMuNDRyZW07XHJcblx0bWFyZ2luOiAxLjcycmVtIDBweCAxLjcycmVtIDBweDsgXHJcbn1cclxuXHJcbmgzIHtcclxuXHRvcGFjaXR5OiAxO1xyXG5cdGZvbnQtd2VpZ2h0OiAzMDA7XHJcblx0bGV0dGVyLXNwYWNpbmc6IDAuMDFyZW07XHJcblx0Zm9udC1zaXplOiAyLjQycmVtO1xyXG5cdGxpbmUtaGVpZ2h0OiAyLjg2cmVtO1xyXG5cdG1hcmdpbjogMS43MnJlbSAwcHggMS4xNHJlbSAwcHg7IFxyXG59XHJcbiAgXHJcbmg0IHtcclxuXHRvcGFjaXR5OiAwLjY0O1xyXG5cdGZvbnQtd2VpZ2h0OiAzMDA7XHJcblx0Zm9udC1zaXplOiAxLjQycmVtO1xyXG5cdGxldHRlci1zcGFjaW5nOiAwLjAxcmVtO1xyXG5cdGxpbmUtaGVpZ2h0OiAycmVtO1xyXG5cdG1hcmdpbjogMS43MnJlbSAwcHggMS40cmVtIDBweDsgXHJcbn1cclxuICBcclxuaDUge1xyXG5cdG9wYWNpdHk6IDAuNjtcclxuXHRmb250LXdlaWdodDogNDAwO1xyXG5cdGxldHRlci1zcGFjaW5nOiAwLjAycmVtO1xyXG5cdGZvbnQtc2l6ZTogMS4xNHJlbTtcclxuXHRsaW5lLWhlaWdodDogMnJlbTtcclxuXHRtYXJnaW46IDEuNzJyZW0gMHB4IDEuNHJlbSAwcHg7IFxyXG59XHJcbiAgXHJcbmg2IHtcclxuXHRvcGFjaXR5OiAxO1xyXG5cdGZvbnQtd2VpZ2h0OiA5MDA7XHJcblx0dGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcclxuXHRsZXR0ZXItc3BhY2luZzogMC4xcmVtO1xyXG5cdGZvbnQtc2l6ZTogMC45MnJlbTtcclxuXHRsaW5lLWhlaWdodDogMXJlbTtcclxuXHRtYXJnaW46IDBweCAwcHggMHJlbSAwcHg7IFxyXG59ICAgIFxyXG4gIFxyXG5lbSB7XHJcblx0Zm9udC1zdHlsZTogaXRhbGljOyBcclxufVxyXG5cclxuc3Ryb25nIHtcclxuXHRmb250LXdlaWdodDogNTAwOyBcclxufSAgICBcclxuXHJcbnNtYWxsIHtcclxuXHRsZXR0ZXItc3BhY2luZzogMC4wMnJlbTtcclxuXHRmb250LXdlaWdodDogNTAwO1xyXG5cdGZvbnQtc2l6ZTogMC44NTdyZW07XHJcblx0bGluZS1oZWlnaHQ6IDEuNzJyZW07ICBcclxufVxyXG5cclxubmF2IGEge1xyXG5cdGZvbnQtc2l6ZTogMC45MjhyZW07XHJcblx0bGluZS1oZWlnaHQ6IDEuNzJyZW07XHJcblx0bGV0dGVyLXNwYWNpbmc6IDAuMDNyZW07ICBcdFxyXG59ICAiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFFQUE7Ozs7Ozs7cUVBT3FFO0FBRXJFOzs7Ozs7Ozs7Ozs7Ozs7OztxRUFpQnFFO0FBR3JFLDBDQUEwQztBQUMxQywwQ0FBMEM7QUFDMUMsMENBQTBDO0F1Ri9CMUMsT0FBTyxDQUFDLHlIQUFJO0FBQ1osT0FBTyxDQUFDLG1IQUFJO0FBQ1osT0FBTyxDQUFDLDhEQUFJO0F2RitCWixBQUFBLGFBQWEsQ0FBQztFQUFDLFVBQVUsRUFBQyxNQUFNO0NBQUc7O0FBQ25DLEFBQUEsV0FBVyxDQUFDO0VBQUMsVUFBVSxFQUFDLElBQUk7Q0FBRzs7QUFDL0IsQUFBQSxZQUFZLENBQUM7RUFBQyxVQUFVLEVBQUMsS0FBSztDQUFHOztBQUNqQyxBQUFBLFdBQVcsQ0FBQztFQUFDLEtBQUssRUFBQyxJQUFJO0NBQUc7O0FBQzFCLEFBQUEsZUFBZSxDQUFDO0VBQUMsU0FBUyxFQUFFLElBQUk7Q0FBRzs7QUFDbkMsQUFBQSxXQUFXLENBQUM7RUFBQyxhQUFhLEVBQUUsR0FBRztDQUFHOztBQUNsQyxBQUFBLG1CQUFtQixDQUFDO0VBQUMsYUFBYSxFQUFFLE1BQU07Q0FBRzs7QUFHN0MsMENBQTBDO0FBQzFDLDBDQUEwQztBQUMxQywwQ0FBMEM7QUFFMUMsQUFBQSxpQkFBaUIs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SUFBSSxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsV0FBNEI7RUFLdEMsU0FBUyxFQUFFLFdBQTRCO0NEaENoQzs7QUFGRCxBQUFBLE1BQU0sQ0FBYztFQzZCMUIsSUFBSSxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsWUFBNEI7RUFLdEMsU0FBUyxFQUFFLFlBQTRCO0NEaENoQzs7QUFGRCxBQUFBLE1BQU0sQ0FBYztFQzZCMUIsSUFBSSxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsR0FBNEI7RUFLdEMsU0FBUyxFQUFFLEdBQTRCO0NEaENoQzs7QUFGRCxBQUFBLE1BQU0sQ0FBYztFQzZCMUIsSUFBSSxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsWUFBNEI7RUFLdEMsU0FBUyxFQUFFLFlBQTRCO0NEaENoQzs7QUFGRCxBQUFBLE1BQU0sQ0FBYztFQzZCMUIsSUFBSSxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsWUFBNEI7RUFLdEMsU0FBUyxFQUFFLFlBQTRCO0NEaENoQzs7QUFGRCxBQUFBLE1BQU0sQ0FBYztFQzZCMUIsSUFBSSxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsR0FBNEI7RUFLdEMsU0FBUyxFQUFFLEdBQTRCO0NEaENoQzs7QUFGRCxBQUFBLE1BQU0sQ0FBYztFQzZCMUIsSUFBSSxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsWUFBNEI7RUFLdEMsU0FBUyxFQUFFLFlBQTRCO0NEaENoQzs7QUFGRCxBQUFBLE1BQU0sQ0FBYztFQzZCMUIsSUFBSSxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsWUFBNEI7RUFLdEMsU0FBUyxFQUFFLFlBQTRCO0NEaENoQzs7QUFGRCxBQUFBLE1BQU0sQ0FBYztFQzZCMUIsSUFBSSxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsR0FBNEI7RUFLdEMsU0FBUyxFQUFFLEdBQTRCO0NEaENoQzs7QUFGRCxBQUFBLE9BQU8sQ0FBYTtFQzZCMUIsSUFBSSxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsWUFBNEI7RUFLdEMsU0FBUyxFQUFFLFlBQTRCO0NEaENo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 */