/*!************************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[1].oneOf[1].use[1]!./node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[1].oneOf[1].use[2]!./assets/css/variables.css ***!
  \************************************************************************************************************************************************************************************************/


:root {
  /* 🎨 Couleurs principales */
  --color-primary: #007bff;
  --color-secondary: #6c757d;
  --color-accent: #ffc107;

  /* 📐 Tailles */
  --spacing-sm: 0.5rem;
  --spacing-md: 1rem;
  --spacing-lg: 2rem;

  /* 🖋 Typographie */
  --font-family-base: 'Roboto', sans-serif;
  --font-size-base: 1rem;
  --font-size-lg: 1.25rem;

  /* --bs-navbar-color:#ffffff; */

  }
/*!************************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[1].oneOf[1].use[1]!./node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[1].oneOf[1].use[2]!./assets/css/utilities.css ***!
  \************************************************************************************************************************************************************************************************/
i.fa.fa-user {
    /* width: 13px;
    height: 14px; */
  
    width: 100%;
    height: 100%;
  }

  /* Applique les mêmes styles qu'à la classe .fa AJUSTEMENT DE LA VERSION 4.0 A 5*/
.fab {
    font-family: "Font Awesome 5 Free", "FontAwesome", sans-serif;  /* Assure que la police d'icône est correctement définie */
    font-weight: 900;  /* Applique un poids de police similaire à .fa pour avoir la même épaisseur de l'icône */
    font-style: normal;  /* Assure que la police est en style normal (pas en italique) */
    text-decoration: none;  /* Retire toute décoration de texte (utile pour éviter les sous-lignements, etc.) */
}

.segment-three a.svg-i {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 48px;
  height: 48px;
  border-radius: 50%;
  background-color: white;
  transition: background-color 0.3s ease;
  color: #3b5998;
  /* color: white; */
}

.segment-three a.svg-i:hover {
  background-color: #2d4373;
}

.segment-three a .icon {
    width: 48px;
    height: 48px;
}
/*!****************************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[1].oneOf[1].use[1]!./node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[1].oneOf[1].use[2]!./assets/css/html-elements.css ***!
  \****************************************************************************************************************************************************************************************************/
* {
  box-sizing: border-box;
  -moz-box-sizing: border-box;
  /* Firefox */
  margin: 0;
  padding: 0;
  -webkit-tap-highlight-color: transparent;
  zoom: 1;
}
/* Style au niveau général */

::before, ::after {
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
  }
  

html {
    font-size: 16px;
    min-height: 100%;
    /*  overflow-x: hidden !important; */
  }
  
  body {
      background-color: #fff;
      border-top: 2.4px solid #f12c09;
      position: relative;
      /* font-family: "Open Sans", Arial, Helvetica, sans-serif; */
      font-weight: 400;
      font-size: 1.2rem;
    
      /* padding-bottom: 20px; */
      /* overflow-x: hidden; */
  
      padding-bottom: 20px;   
      color: #282828;
    }
    
body {
    font: 100%/150% "Open Sans", Arial, Helvetica, sans-serif;
    background-color: #fff;
    /* color: #939faa; */
    color: #282828;

    /* overflow-x: hidden !important; */
    -webkit-font-smoothing: antialiased;
    -ms-overflow-style: scrollbar;
    /*oveflow-y: scroll;*/
}




    
    a, a:hover {
        text-decoration: none;
    }
  
    p {
        /* color:#999; */
        line-height: 25px;
    }
  
    .last-paragraph p {
      font-size: 18px;
      line-height: 28px;
      font-weight: 400;
    }
  
  
  h1 {
    color: #000000;
    font-weight: 800;
    margin-bottom: 25px;
  }
    
    h2, h3 {
        color:#fff;
    }
    
    h2 {
        font-size: 16px;
    }

    h4 {
        font-family: "Open Sans", Helvetica, Arial, sans-serif;
        font-size: 18px;
        line-height: 20px;
        /* font-weight: ; */
        font-style: normal;
    }
/*!*********************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[1].oneOf[1].use[1]!./node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[1].oneOf[1].use[2]!./assets/css/styles.css ***!
  \*********************************************************************************************************************************************************************************************/
.slogan {
    font-family: 'Trebuchet MS', 'Lucida Sans Unicode', 'Lucida Grande', 'Lucida Sans', Arial, sans-serif;
    /* color: rgb(255, 255, 255); */
    color: rgb(12, 54, 241);
    font-size: 28px;
}

/* CSS for the header */

#greeting-nav {
    background: rgb(251, 253, 253);
}

.site-header {
    position: absolute;
    width: 100%;
    /* background: rgba(0,0,0,.5); */
    z-index: 3;

    background: none;
    /*  height: 125px; */
    max-height: 150px;
    display: block;
    /* overflow: unset; */
}

/* .site-header.style8.headerstyle--default */
.site-header-main-wrapper {
    /* background: rgba(0,0,0,.7); */
    background: rgba(255, 255, 255, 0.9);

}

.site-header-main-wrapper-contact {
    background: rgb(255, 165, 0);
}

/* .site-header.style8.headerstyle--default */
.site-header-bottom-wrapper {
    background: rgba(0, 0, 0, .6);
}

/*   .navbar {
     padding: 0rem 1rem;
   } */

#greeting {
    margin-left: 10px;
}

#theDate {
    margin-right: 10px;
}

#header1 {
    /*     -webkit-box-shadow: 0px 5px 5px 0px rgba(176,31,45,1);
       -moz-box-shadow: 0px 5px 5px 0px rgba(176,31,45,1);
       box-shadow: 0px 5px 5px 0px rgba(176,31,45,1); */
    /* background-color: #B01F2D; */
    /* background-color: #f5f0f1; */
    /* background-color: rgb(222, 222, 222); */


    /*  -webkit-box-shadow: 10px 10px 5px 0px rgba(0,0,0,0.75);
     -moz-box-shadow: 10px 10px 5px 0px rgba(0,0,0,0.75);
     box-shadow: 10px 10px 5px 0px rgba(0,0,0,0.75); */


    display: flex;
    justify-content: space-between;

    padding-left: 2.5rem;
    padding-right: 2.5rem;
}



#header2 {
    /* overflow: hidden; */
    padding-left: 35px;
    /* background-color: #EAE5E5; */
    /* background-color: rgba(223, 234, 223, 1); */
    /* background-color: rgb(39, 34, 34); */

    -webkit-box-shadow: 0px 5px 5px 0px rgba(4, 82, 251, 1);
    -moz-box-shadow: 0px 5px 5px 0px rgba(4, 82, 251, 1);
    box-shadow: 0px 5px 5px 0px rgba(4, 82, 251, 1);
    padding-bottom: 0px;
    margin-bottom: 2px;
}

/* Links inside the navbar */
#header2 a {
    float: left;
    font-size: 16px;
    /* color: white; */
    text-align: center;
    padding: 14px 16px;
    text-decoration: none;
}

#header2 a.navbar-brand {
    font-size: 28px;
}

/* The dropdown container */
#header2 .dropdown {
    float: left;
    /* overflow: hidden; */
}

/* Dropdown button */
#header2 .dropdown .navbar-toggler {
    font-size: 16px;
    border: none;
    outline: none;
    color: white;
    padding: 14px 16px;
    background-color: inherit;
    font-family: inherit;
    /* Important for vertical align on mobile phones */
    margin: 0;
    /* Important for vertical align on mobile phones */
}

#header2 .nav-link:hover {
    /* background-color: rgb(34, 190, 34); */
    /* background: rgba(17, 122, 3, 1); */
    background-color: rgb(176, 31, 45);
    color: rgb(233, 223, 224);
}

#header2 a.active {
    /* background-color: #4CAF50; */
    background-color: rgba(4, 82, 251, 0.75);
    color: white;
}

#profile-pic,
#profile-pic2 {
    /* width: 35px;
    height: 35px; */
    text-align: center;
    vertical-align: middle;
    margin-bottom: 2px;

}

#profile-pic a,
#profile-pic2 a {
    float: none !important;
    padding: 8px !important;
    margin-top: auto;
    margin-bottom: auto;
    font-size: 24px;

}

.navbar-custom1 {
    background-color: #999999;
    background-color: #0000FF;

    margin-bottom: 8px;

    -webkit-box-shadow: 0px 5px 5px 0px rgba(153, 153, 153, 0.25);
    /*    -moz-box-shadow: 0px 5px 5px 0px rgba(153,153,153,0.25);*/
    box-shadow: 0px 5px 5px 0px rgba(153, 153, 153, 0.25);
}

#topsocial-link a {
    /*    background: #494848;*/
    width: 40px;
    height: 40px;
    display: inline-block;
    border-radius: 50%;
}

#topsocial-link a i {
    /*    color: #fff;*/
    font-size: 20px;
    padding: 10px 12px;

}

/* Facebook */
#a-facebook-t {
    background: #3b5998;
}

#a-facebook-t:hover {
    background: #ffffff;
}

#topsocial-link .fa-facebook {
    color: #ffffff;
}

#topsocial-link .fa-facebook:hover {
    color: #3b5998;
}

/* Twitter */
#a-twitter-t {
    background: #00AAEC;
}

#a-twitter-t:hover {
    background: #ffffff;
    ;
}

#topsocial-link .fa-twitter {
    color: #ffffff;
}

#topsocial-link .fa-twitter:hover {
    color: #00AAEC;
}


/* Linkedin */
#a-linkedin-t {
    background: #007AB9;
}

#a-linkedin-t:hover {
    /* background: #007AB9; */
    background: #F1F2F2;
}

#topsocial-link .fa-linkedin {
    color: #F1F2F2;
    ;
}

#topsocial-link .fa-linkedin:hover {
    color: #007AB9;
}


/* Google + */
#a-google-plus-t {
    background: #D62223;
}

#a-google-plus-t:hover {
    background: #FFFFFF;
}

#topsocial-link .fa-google-plus {
    color: #FFFFFF;
}

#topsocial-link .fa-google-plus:hover {
    color: #D62223;
}

/* End of header CSS  */

/* Start CSS for Header panels */

.panels-container {
    position: relative;
    margin: 0px auto 10px;
    padding: 0px;
    /* background-color: green; */
    height: 500px;
    width: 100%;
    overflow: hidden;
}

.panels-container {
    overflow: hidden;
    position: relative;
    z-index: 0;
    min-height: 150px;
}


.panel {
    /* background-color: chocolate; */
    /* padding: 20px; */
    float: left;
    position: relative;
    z-index: 0;

    min-height: 250px;

    flex: 1;
    /* transform: skewX(-10deg); */
    transition: 1s;
}

.panel-inner {
    position: absolute;
    /* border: 3px solid green; */
    /* border: 3px solid rgba(4, 82, 251, 1); */
    height: 100%;
    width: 100%;
    overflow: hidden;
    -webkit-transform: skewX(-10deg);
    -ms-transform: skewX(-10deg);
    transform: skewX(-10deg);
    box-shadow: 0 0 0 5px rgba(255, 255, 255, 0.7);
}

.panel-mainimage-wrapper {
    position: relative;
    margin-left: -50px;
    margin-right: -50px;
    /* transform: skewX(-10deg); */
    -webkit-transform: skewX(10deg);
    -ms-transform: skewX(10deg);
    transform: skewX(10deg);

    /* backface-visibility: hidden;
      -webkit-backface-visibility: hidden; */

    height: 100%;
    box-sizing: border-box;
}

.panel-mainimage {
    position: absolute;
    /* transform: skewX(-10deg); */
    top: -2px;
    left: -2px;
    right: -2px;
    bottom: -2px;
}

img.panel-image {
    position: absolute;
    border: 0;
    border-style: none;
    height: 100%;
    width: 100%;
    vertical-align: middle;
    backface-visibility: hidden;
    -webkit-backface-visibility: hidden;
    -webkit-transition: 0.2s ease-out;
    transition: 0.2s ease-out;
    max-width: 100%;
}


.cover-fit-img {
    -o-object-fit: cover;
    object-fit: cover;
    overflow: hidden;
    /* background-size: cover; */
}

.anim--blur {
    -webkit-filter: blur(9px);
    filter: blur(9px);
    -webkit-transition: opacity 0.15s ease-out;
    transition: opacity 0.15s ease-out;
}

.panel:hover .panel-mainimage-img.anim--blur {
    opacity: 0;
}

.panel:hover {
    flex: 1.2;
    /* background-color: grey; */
}

.panel-0 {
    margin-left: -65px;
}

.panel-3 {
    margin-right: -60px;
}

.panel-caption {
    position: absolute;
    bottom: 90px;
    color: #ffffff;
    z-index: 1;
    width: 100%;
}

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

.panel-caption.text-right {
    padding-right: 50px;
}

.cssp-capt-animated .p-overlay {
    -webkit-transition-delay: 0.1s;
    transition-delay: 0.1s;
}

.p-overlay--gradient {
    opacity: 0.5;
    top: 50%;
    background: -webkit-gradient(linear,
            left top,
            left bottom,
            color-stop(0%, rgba(0, 0, 0, 0)),
            color-stop(100%, rgba(0, 0, 0, 1)));
    background: -webkit-linear-gradient(top,
            rgba(0, 0, 0, 0) 0%,
            rgba(0, 0, 0, 1) 100%);
    background: linear-gradient(to bottom,
            rgba(0, 0, 0, 0) 0%,
            rgba(0, 0, 0, 1) 100%);
}

.p-overlay {
    position: absolute;
    left: 0;
    top: 0;
    right: 0;
    bottom: 0;
    -webkit-transition: opacity 0.15s ease-out;
    transition: opacity 0.15s ease-out;
}

.cssp-capt-animated .panel-text {
    -webkit-transition-delay: 0.2s;
    transition-delay: 0.2s;
}

.panel-text {
    font-size: 16px;
    color: #fff;
    font-weight: 300;
    margin-top: 20px;
    line-height: 1.6;
}

/* .cssp-capt-animated .panel-title {
      -webkit-transition-delay: 0.1s;
      transition-delay: 0.1s;
  } */

.panel-container .panel-title {
    -webkit-transition-delay: 0.1s;
    transition-delay: 0.1s;
}

.ff-alternative,
.kl-font-alt,
.kl-fontafter-alt:after,
.page-title,
.page-subtitle,
.subtitle,
.topnav-item,
.topnav .menu-item>a,
.zn-sidebar-widget-title,
.nivo-caption,
.th-wowslider .ws-title,
.cart-container .cart_list li a:not(.remove) {
    font-family: "Lato", Helvetica, Arial, sans-serif;
}

.captiontitle--wbg,
.captiontitle--dbg {
    padding: 13px 0px 13px 45px;
}

.captiontitle--wbg:before,
.captiontitle--dbg:before {
    content: "";
    position: absolute;
    height: 100%;
    border-radius: 4px;
    padding-right: 35px;
    display: block;
    right: -35px;
    bottom: 0;
    left: 0;
    top: 0;
    z-index: -1;
    -webkit-transform-style: preserve-3d;
    transform-style: preserve-3d;
    -webkit-transform: skew(-10deg) translate3d(0, 0, 0);
    -ms-transform: skew(-10deg) translate3d(0, 0, 0);
    transform: skew(-12deg) translate3d(0, 0, 0);
    background: -webkit-gradient(linear, left top, right top, color-stop(0%, rgba(0, 0, 0, 0)), color-stop(80%, rgba(0, 0, 0, 0.45)));
    background: -webkit-linear-gradient(left, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0.45) 80%);
    background: linear-gradient(to right, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0.45) 80%);
}

.panel-title {
    position: relative;
    font-size: 28px;
    line-height: 1.3;
    font-weight: 600;
    color: #fff;
    margin: 0;
}

.panel-btn-area {
    clear: both;
    float: right;
    margin-top: 30px;
    margin-left: 50px;
}

.panel-container .panel-btn-area {
    -webkit-transition-delay: 0s;
    transition-delay: 0s;
}

.btn.btn-fullcolor.btn-skewed,
.btn.btn-fullcolor.btn-skewed:hover {
    border: 0;
    background: none;
    position: relative;
    z-index: 0;
}

.btn.btn-fullcolor {
    background-color: #00639d;
}

.btn.btn-fullcolor,
.btn.btn-fullcolor:focus {
    background-color: #cd2122;
    color: #fff;
}

.btn.btn-fullwhite,
.btn.btn-fullblack,
.btn.btn-fullcolor,
.btn.btn-default,
.btn.btn-primary,
.btn.btn-success,
.btn.btn-info,
.btn.btn-warning,
.btn.btn-danger,
.btn.btn-link {
    text-shadow: none;
    padding: 10px 20px;
    line-height: 1.6;
    -webkit-box-shadow: none;
    box-shadow: none;
    font-size: 13px;
    font-weight: 700;
    border-style: solid;
    border-radius: 3px;
    -webkit-transition: background-color .15s ease-out;
    transition: background-color .15s ease-out;
}

.btn.btn-fullwhite,
.btn.btn-fullblack,
.btn.btn-fullcolor {
    border-width: 0;
}

.btn.btn-fullcolor,
.btn.btn-fullcolor:focus {
    background-color: #cd2122;
    color: #fff;
}

.btn.btn-danger,
.btn.btn-default,
.btn.btn-fullblack,
.btn.btn-fullcolor,
.btn.btn-fullwhite,
.btn.btn-info,
.btn.btn-link,
.btn.btn-primary,
.btn.btn-success,
.btn.btn-warning {
    text-shadow: none;
    padding: 10px 20px;
    line-height: 1.6;
    box-shadow: none;
    font-size: 13px;
    font-weight: 700;
    border-style: solid;
    border-radius: 3px;
    transition: background-color .15s ease-out;
}

.btn.btn-fullblack,
.btn.btn-fullcolor,
.btn.btn-fullwhite {
    border-width: 0;
}

.btn {
    display: inline-block;
    margin-bottom: 0;
    font-weight: normal;
    text-align: center;
    vertical-align: middle;
    -ms-touch-action: manipulation;
    touch-action: manipulation;
    cursor: pointer;
    background-image: none;
    border: 1px solid transparent;
    white-space: nowrap;
    padding: 6px 12px;
    font-size: 14px;
    line-height: 1.42857143;
    border-radius: 4px;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
}

.btn.btn-fullcolor.btn-skewed:before {
    content: '';
    border-radius: 4px;
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    -webkit-transform: skewX(-8deg);
    transform: skewX(-8deg);
    -webkit-transition: background-color .2s ease-in-out;
    transition: background-color .2s ease-in-out;
    z-index: -1;
}

.btn.btn-fullcolor.btn-skewed:before {
    background-color: #cd2122;
}

.btn.btn-fullcolor.btn-skewed:before {
    content: "";
    border-radius: 4px;
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    transform: skewX(-8deg);
    transition: background-color .2s ease-in-out;
    z-index: -1;
}

.panel-btn-area .btn {
    margin-left: 20px;
    margin-bottom: 10px;
}

.contract-main-title {
    font-size: 2.2222222222rem;
    text-align: center;
    margin-bottom: 16px;
}


/* CSS for action box */
.action_box {
    background-color: #00639d;
    padding: 24px 0;
    color: #fff;
    border-top: 2px solid #fff;
    border-bottom: 1px solid #fff;
    position: relative;
    /* background-color: #CD2122; */
    clear: both;
}

.action_box[data-arrowpos=center]:after,
.action_box[data-arrowpos=center]:before {
    margin-left: -7px;
}

.action_box:before,
.action_box:after {
    content: "";
    position: absolute;
    left: 50%;
    bottom: -14px;
    margin-left: -25%;
    border-radius: 3px;
    border: 8px solid transparent;
    border-top-width: 7px;
    border-top-color: #CD2122;
    border-top-color: #00639d;
}

/* .action_box_inner {
  } */

.action_box_content {
    max-width: 1170px;
    margin: 0 auto;
    padding: 0 15px;
    width: 100%;
}

/* .action_box-content {
    max-width: 1170px;
    margin: 0 auto;
    padding: 0 15px;
    width: 100%;
  } */

.action_box-title {
    margin: 10px 0;
    font-weight: 200;
    font-size: 24px;
    line-height: 1.4;
}

.btn.btn-fullwhite,
.btn.btn-fullblack,
.btn.btn-fullcolor,
.btn.btn-default,
.btn.btn-primary,
.btn.btn-success,
.btn.btn-info,
.btn.btn-warning,
.btn.btn-danger,
.btn.btn-link {
    text-shadow: none;
    padding: 10px 20px;
    line-height: 1.6;
    -webkit-box-shadow: none;
    box-shadow: none;
    font-size: 13px;
    font-weight: 700;
    border-style: solid;
    border-radius: 3px;
    -webkit-transition: background-color .15s ease-out;
    transition: background-color .15s ease-out;
}

.btn.btn-fullwhite

/*,  .btn.btn-fullblack, .btn.btn-fullcolor */
    {
    border-width: 0;
}

.btn.btn-fullwhite {
    background-color: #fff;
    color: #242424 !important;
}

/* .btn.btn-danger, .btn.btn-default, .btn.btn-fullblack, .btn.btn-fullcolor, */
.btn.btn-fullwhite

/* , .btn.btn-info, .btn.btn-link, .btn.btn-primary, .btn.btn-success, .btn.btn-warning */
    {
    text-shadow: none;
    padding: 10px 20px;
    line-height: 1.6;
    box-shadow: none;
    font-size: 13px;
    font-weight: 700;
    border-style: solid;
    border-radius: 3px;
    transition: background-color .15s ease-out;
}

/* .btn.btn-fullblack, .btn.btn-fullcolor,  */
.btn.btn-fullwhite {
    border-width: 0;
}



.btn.btn-fullwhite {
    background-color: #fff;
    color: #242424 !important;
}

.btn.btn-fullwhite.btn-skewed

/* , .btn.btn-fullblack.btn-skewed, .btn.btn-fullcolor.btn-skewed, .btn.btn-fullwhite.btn-skewed:hover, .btn.btn-fullblack.btn-skewed:hover, .btn.btn-fullcolor.btn-skewed:hover */
    {
    border: 0;
    background: none;
    position: relative;
    z-index: 0;
}


.btn.btn-fullwhite.btn-skewed:before {
    background-color: #fff;
}

.btn.btn-fullwhite.btn-skewed:before,
.btn.btn-fullblack.btn-skewed:before,
.btn.btn-fullcolor.btn-skewed:before {
    content: '';
    border-radius: 4px;
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    -webkit-transform: skewX(-8deg);
    transform: skewX(-8deg);
    -webkit-transition: background-color .2s ease-in-out;
    transition: background-color .2s ease-in-out;
    z-index: -1;
}

.btn.btn-fullwhite.btn-skewed:before {
    background-color: #fff;
}

.btn.btn-fullblack.btn-skewed:before,
.btn.btn-fullcolor.btn-skewed:before,
.btn.btn-fullwhite.btn-skewed:before {
    content: "";
    border-radius: 4px;
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    transform: skewX(-8deg);
    transition: background-color .2s ease-in-out;
    z-index: -1;
}

  /* CSS for the footer */
  footer {
    margin-top: 5px;
    background: #222;
   }
   
   
   .footer-top {
     /*background: #111;*/
         background: #0000ff;
         background-color: #00639d;
         padding: 30px 0px;
     }
   
     /* Premier bloc du footer */
   
     .segment-one h3 {
       font-family: Courgette;
       color: #fff;
       letter-spacing: 3px;
       /* margin: 10px 0px; */
       margin-bottom: 15px;
   }


.segment-one p {
    color: #eee;
}

.segment-one ul {
  margin: 0px;
  padding: 0px;
  list-style: none;
}

.segment-one ul li {
  /* border-bottom: 1px solid rgba(255, 255, 255, 0.3); */
  line-height: 35px;
}

.segment-one ul li a {
/*    color: #999;*/
  color: #eee;
  text-decoration: none;
}


  /* Deuxième bloc du footer */
  .segment-two h2 {
    color: #fff;
    font-family: Poppins;
    text-transform: uppercase;
   
  }
  
  .segment-two ul {
    margin: 0px;
    padding: 0px;
    list-style: none;
  }
  
  .segment-two ul li {
    border-bottom: 1px solid rgba(255, 255, 255, 0.3);
    line-height: 30px;
  }
  
  .segment-two ul li a {
  /*    color: #999;*/
    color: #eee;
    text-decoration: none;
  }

  .segment-two h2:before {
    content: '|';
    padding-right: 10px;
  /*    color: #C65039;*/
    color: red;    
  }
  
    /* Troisième bloc du footer */
  
  .segment-three h2 {
    color: #fff;
    font-family: Poppins;
    text-transform: uppercase;
   
  }
  
  .segment-three h2:before {
    content: '|';
    padding-right: 10px;
    color: #C65039;
    
    
  }

  .segment-three a {
    /*    background: #494848;*/
      width: 40px;
      height: 40px;
      display: inline-block;
      border-radius: 50%;
    }
    
    .segment-three a i {
    /*    color: #fff;*/
      font-size: 20px;
      padding: 10px 12px;
      
    }
    
    .segment-three p {
      color: #eee;
    }

  /* Quatrième bloc du footer */

  .segment-four h2 {
    color: #fff;
    font-family: Poppins;
    text-transform: uppercase;
   
  }
  
  .segment-four h2:before {
    content: '|';
    padding-right: 10px;
    color: #C65039;
      
  }
  
  .segment-four form input[type=submit],
  .segment-four form button[type=submit] {
  display: inline-block;
  } 
     
  .segment-four form input[type=submit],
  .segment-four form button[type=submit] {
    background:  #C65039;
    border: none;
    padding: 3px 15px;
    margin-left: -70px;
    text-transform: uppercase;
    /* display: inline-block; */
  }

  /* footer .footer-top .row  */.segment-four form .row {
    display: flex;
    flex-direction: row;
  }
  
  .segment-four form input[type=submit],
  .segment-four form button[type=submit] {
    margin-left: 0;
  }
  
  .segment-four p {
    color: #eee;
  }

 /* Barre de texte en dessous du footer */
 .footer-bottom-text {
    text-align: center;
  /*    background: #000;*/
    /* background: #00008b; */
    background: rgb(39, 34, 34);
    line-height: 75px;
  }
  
  .footer-bottom-text p {
    margin: 0px;
    padding-top: 10px;
     padding-bottom: 5px
    
  }

/* Facebook */
#a-facebook {
    background: #fff;
  }
  
  #a-facebook:hover {
    background: #00008b;
  }
  
  .fa-facebook {
    color: #00008b;
  }
  
  .fa-facebook:hover {
    color: #fff;
  }
  
  /* Twitter */
  #a-twitter {
    background: #fff;
  }
  
  #a-twitter:hover {
    background: #00AAEC;
  }
  
  .fa-twitter {
    color: #00AAEC;
  }
  
  .fa-twitter:hover {
    color: #fff;
  }
  
  /* Linkedin */
  #a-linkedin {
    background: #F1F2F2;
  }
  
  #a-linkedin:hover {
    background: #007AB9;
  }
  
  .fa-linkedin {
    color: #007AB9;
  }
  
  .fa-linkedin:hover {
    color: #F1F2F2;
  }
  
  
  /* Google + */
  #a-google-plus {
    background: #FFFFFF;
  }
  
  #a-google-plus:hover {
    background: #D62223;
  }
  
  .fa-google-plus {
    color: #D62223;
  }
  
  .fa-google-plus:hover {
    color: #FFFFFF;
  }
  
  
  /* Instagram */
  #a-instagram {
    background: #FFFFFF;
  }
  
  #a-instagram:hover {
    background: #DF3069;
  }
  
  .fa-instagram {
    color: #DF3069;
  }
  
  .fa-instagram:hover {
    color: #FFFFFF;
  }
  
  .kl-slideshow, .page-subheader {
    position: relative;
    top: 0;
    z-index: 0;
    width: 100%;
  }
  .page-subheader {
    /* min-height: 300px; */
    height: 300px;
    background-color: #066fd9;
  }
  
  .page-subheader.contact-subheader,
  .page-subheader.small-subheader {
    height: 150px;
  }
  
  #content {
    padding-top: 4px;
    z-index: 1;
  }

/*   .page-subheader.hosting .bgback {
    background-image: url(../images/hosting-banner.jpg);
  }
  
  .page-subheader.dev .bgback {
    background-image: url(../../img/dev-banner1.jpg);
  }
  
  .page-subheader.project .bgback {
    background-image: url(../../img/project-banner.jpg);
  }
  
  .page-subheader.divers .bgback {
    background-image: url(../../img/project-banner.jpg);
  }
  
  .page-subheader.about .bgback {
    background-image: url(../../img/about-banner.jpg);
  } */

  .page-subheader.hosting .bgback,
  .page-subheader.dev .bgback,
  .page-subheader.project .bgback,
  .page-subheader.divers .bgback,
  .page-subheader.about .bgback {
  background-repeat: no-repeat;
    background-attachment: scroll;
    background-position: center center;
    background-size: cover;
  
    position: absolute;
    left: 0;
    top: 0;
    right: 0;
    bottom: 0;
    z-index: 0;
    /* background-size: cover;
    background-position: 50%; */
  }

/* .page-subheader-bg */

.card-img-top {
    text-align: center;
  }
  
  
  #rocket-mission-msvg, 
  #eye-vision-msvg, 
  #activities-bagsvg,
  #vision-msvg
  /* #bodies */ {
    fill: #133bbd;
    width: 75px;
    height: 75px;
    margin-top: 20px;
  }
  
  #rocket-mission-msvg {
    transform: rotateZ(45deg);
    -webkit-transform: rotateZ(45deg);
    -moz-transform: rotateZ(45deg);
    -ms-transform: rotateZ(45deg);
    -o-transform: rotateZ(45deg);
  }

  .svg-fillColor {
    color: #133bbd;
  }
  
  #values-on-hand-msvg,
  #magnifying-glass-msvg,
  #respect-msvg,
  #evolution-state-msvg,
  #specificity-adjust,
  #workteam-relation,
  #innovation-1-msvg {
    /* fill: #bd9e13; */
    fill: #bd1313;
    width: 75px;
    height: 75px;
    margin-top: 20px;
  
  }
  .svg-values-fillColor {
    color: #bd1313;
  }

/*   #webmail-card {
    background-image: linear-gradient(to bottom, rgba(224, 46, 30, 0.5), rgba(0,0,255,0.5)), url('/img/webmail-pro.jpg');
  }
  
  #responsive-website-card {
    background-image: linear-gradient(to bottom, rgba(25, 25, 245, 0.5), rgba(224, 46, 30, 0.5)), url('/img/responsive-website.jpg');  
  } */
  
  #webmail-card, #responsive-website-card {
    width: 100%;
    /* background-color: orange; */
    background-repeat: no-repeat;
    /* background-attachment: fixed; */
    background-position: center; 
    background-size: cover;
  }
  
  .max-width-500 {
  max-width: 500px;
  }
  
  .checkbox-size {
    width: 20px;
  }

  #newsletter_inscription_email, #newsletter_inscription_envoyer {
    min-width: 200px;
    max-width: 100%;
  }


  .dropdown-menu {
    top: 100% !important;   /* aligne sous le bouton */
    left: 0;
    margin-top: 0.5rem;
    z-index: 1050;
  }
  
  /* Optionnel pour éviter que le menu s'affiche bizarrement */
  .nav-item.dropdown {
    position: relative;
  }





/*!**********************************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[1].oneOf[1].use[1]!./node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[1].oneOf[1].use[2]!./assets/css/bootstrap-overrides.css ***!
  \**********************************************************************************************************************************************************************************************************/
.w-90 {
    width: 100%;
  }
  
  .col-sms-1, .col-sms-2, .col-sms-3, .col-sms-4, .col-sms-5, .col-sms-6, .col-sms-7, .col-sms-8, .col-sms-9, .col-sms-10, .col-sms-11, .col-sms-12 {
    position: relative;
    min-height: 1px;
    padding-left: 15px;
    padding-right: 15px; }

.container, .container-fluid .jumbotron {
    box-sizing: border-box;
 }
 
 .jumbotron-bs5 {
   padding: 2rem 1rem;
   margin-bottom: 2rem;
   /* background-color: #c5b41b; */
   border-radius: 0.3rem;
 }

 .container-fluid .jumbotron, .container-fluid .jumbotron-bs5  {
   background-color:orange;
 }


 /* Dropdown content (hidden by default) */
.dropdown-menu {
    margin-top: 0px;
    padding-top: 0px;
    padding-bottom: 0px;
  
    border-top-style:none;
    border-top-left-radius: 0px;
    border-top-right-radius: 0rem;
    border-bottom-left-radius: 0px;
    border-bottom-right-radius: 0rem;
    display: none;
    position: absolute;
    /* background-color: #f9f9f9; */
    background-color: rgba(223, 234, 223, 1);
    min-width: 160px;
    box-shadow: 0px 8px 16px 0px rgba(0,0,0,0.2);
    z-index: 1;
  }
  
  /* Links inside the dropdown */
  .dropdown-menu a {
    float: none;
    color: black;
    padding: 12px 16px;
    text-decoration: none;
    display: block;
    text-align: left;
  }
  
  /* Add a grey background color to dropdown links on hover */
  .dropdown-menu a:hover {
    /* background-color: #ddd; */
    background-color: rgb(176, 31, 45);
    color: rgb(233, 223, 224);
  }
  
  /* Show the dropdown menu on hover */
  .dropdown:hover .dropdown-menu {
    display: block;
  }
  
  .dropdown-menu {
    /* background: rgb(248, 247, 247); */
    /* -webkit-box-shadow: inset 0px 3px 0px 0px rgba(176,31,45,0.75);
  -moz-box-shadow: inset 0px 3px 0px 0px rgba(176,31,45,0.75);
  box-shadow: inset 0px 3px 0px 0px rgba(176,31,45,0.75);
   */
  
    -webkit-box-shadow: 0px 5px 5px 0px rgb(3, 5, 122);
    -moz-box-shadow: 0px 5px 5px 0px rgba(3, 5, 122, 1);
    box-shadow: 0px 5px 5px 0px rgba(3, 5, 122, 1);    
  }
  
  .nav-item.dropdown .dropdown-menu .container {
    background-color: #e0e0ee;
    height: 150px;
    padding-top: -10px;
  }
  
  #navbarsE .navbar-nav {
    margin-left: 2.5rem;
  }
  
  #navbarsE .navbar-nav .nav-link {
    color: rgb(0, 0, 0);
  }
  
  #navbarsE .navbar-nav .nav-link:hover {
    /* border-bottom: 2px solid #fff; */
    border-bottom: 2px solid rgb(224, 248, 4);
    /* color:  whitesmoke; */
    color: hsl(354, 70%, 41%);
  }
  
  #navbarsE .navbar-nav .nav-link.active {
    /* border-bottom: 2px solid #fff; */
    border-bottom: 2px solid rgb(77, 3, 3);
    /* color:  rgb(184, 20, 20); */
    color: rgb(17, 122, 3);
  }

  .active a {
    border-bottom: 2px solid #fff;
  }
  
  .dropdown:hover > .dropdown-menu {
    display: block;
  }
  
  .dropdown-toggle::after {
    display: none !important;
  }

  /* change the brand and text color */
.navbar-custom1 .navbar-brand,
.navbar-custom1 .navbar-text {
  color: rgba(255,255,255,.8);
}
/* change the link color */
/* .navbar-custom1 .navbar-nav .nav-link {
  color: rgba(255,255,255,.5);
} */
#header2 .navbar-nav .nav-link {
  color: rgba(255, 255, 255, 1);
}

/* change the color of active or hovered links */
.navbar-custom1 .nav-item.active .nav-link,
.navbar-custom1 .nav-item:hover .nav-link {
  color: #ffffff;
}

.ml-auto {
    margin-left: auto !important;
  }

  .mr-auto {
    margin-right: auto !important;
  }

  .row {
    width: 100% !important;
  }
  



  /* navbar-brand */
.navbar-brand {
    font-size: 1.25rem; /* Ajustement de la taille du texte */
    /* font-weight: bold;  */ /* Mettre en gras */
    /* color: #333; */ /* Couleur de texte pour un meilleur contraste */
    text-decoration: none;
    padding: 0;
}

/* .container */
.container {
    max-width: 1140px; /* Bootstrap 5 a augmenté la taille maximale des containers */
    padding-right: 15px; /* Pour ne pas avoir trop d'espace à droite */
    padding-left: 15px;  /* Pour ne pas avoir trop d'espace à gauche */
    margin-right: auto;
    margin-left: auto;
}

/* .row */
.row {
    display: flex; /* Pour un meilleur contrôle sur les alignements */
    flex-wrap: wrap; /* S'assurer que les éléments peuvent s'enrouler si nécessaire */
    margin-right: -15px; /* Bootstrap 5 supprime la margin négative, donc ajustement manuel */
    margin-left: -15px; /* Même ici pour garder une symétrie */
}

/* .col */
.col {
    flex: 1 0 0%; /* Flexbox pour les colonnes, ajuste la taille automatiquement */
    padding-right: 15px; /* Consistance avec les autres classes */
    padding-left: 15px;  /* Pour maintenir la grille de Bootstrap */
}

/* Media Queries pour responsive design */
@media (max-width: 768px) {
    .navbar-brand {
        font-size: 1rem; /* Taille de texte plus petite sur mobile */
    }
    .container {
        padding-right: 10px;
        padding-left: 10px;
    }
    .row {
        margin-right: 0;
        margin-left: 0;
    }
    .col {
        padding-right: 10px;
        padding-left: 10px;
    }
}

.navbar-nav {
  --bs-nav-link-color: #fff;
}
/*!*************************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[1].oneOf[1].use[1]!./node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[1].oneOf[1].use[2]!./assets/css/typography.css ***!
  \*************************************************************************************************************************************************************************************************/

.h4-typography {
    font-family: "Open Sans", Helvetica, Arial, sans-serif;
    font-size: 18px;
    line-height: 20px;
    /* font-weight: ; */
    font-style: normal;
}
/*!*************************************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[1].oneOf[1].use[1]!./node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[1].oneOf[1].use[2]!./assets/css/components/HeaderPanel.css ***!
  \*************************************************************************************************************************************************************************************************************/
/* Start CSS for Header panels */

.panels-container {
    position: relative;
    margin: 0px auto 10px;
    padding: 0px;
    /* background-color: green; */
    height: 500px;
    width: 100%;
    overflow: hidden;
  }
  
  .panels-container {
    overflow: hidden;
    position: relative;
    z-index: 0;
    min-height: 150px;
  }
  
  
  .panel {
    /* background-color: chocolate; */
    /* padding: 20px; */
    float: left;
    position: relative;
    z-index: 0;
  
    min-height: 250px;
  
    flex: 1;
    /* transform: skewX(-10deg); */
    transition: 1s;
  }
  
  .panel-inner {
    position: absolute;
    /* border: 3px solid green; */
    /* border: 3px solid rgba(4, 82, 251, 1); */
    height: 100%;
    width: 100%;
    overflow: hidden;
    -webkit-transform: skewX(-10deg);
    -ms-transform: skewX(-10deg);
    transform: skewX(-10deg);
    box-shadow: 0 0 0 5px rgba(255, 255, 255, 0.7);
  }
  
  .panel, .panel-inner {
    backface-visibility: hidden;
    transform: translateZ(0); /* Forcer l'accélération GPU */
  }
  

  .panel-mainimage-wrapper {
    position: relative;
    margin-left: -50px;
    margin-right: -50px;
    /* transform: skewX(-10deg); */
    -webkit-transform: skewX(10deg);
    -ms-transform: skewX(10deg);
    transform: skewX(10deg);
  
    /* backface-visibility: hidden;
      -webkit-backface-visibility: hidden; */
  
    height: 100%;
    box-sizing: border-box;
  }
  
  .panel-mainimage {
    position: absolute;
    /* transform: skewX(-10deg); */
    top: -2px;
    left: -2px;
    right: -2px;
    bottom: -2px;
  }
  
  img.panel-image  {
    position: absolute;
    border: 0;
    border-style: none;
    height: 100%;
    width: 100%;
    vertical-align: middle;
    backface-visibility: hidden;
    -webkit-backface-visibility: hidden;
    -webkit-transition: 0.2s ease-out;
    transition: 0.2s ease-out;
    max-width: 100%;
  }
  
  .cover-fit-img {
    -o-object-fit: cover;
    object-fit: cover;
    overflow: hidden;
    /* background-size: cover; */
  }
  
  .anim--blur {
    -webkit-filter: blur(9px);
    filter: blur(9px);
    -webkit-transition: opacity 0.15s ease-out;
    transition: opacity 0.15s ease-out;
  }
  
  .panel:hover .panel-mainimage-img.anim--blur {
    opacity: 0;
  }
  
  .panel:hover {
    flex: 1.2;
    /* background-color: grey; */
  }
  
  .panel-0 {
    margin-left: -65px;
  }
  
  .panel-3 {
    margin-right: -60px;
  }
  
  .panel-caption {
    position: absolute;
    bottom: 90px;
    color: #ffffff;
    z-index: 1;
    width: 100%;
  }
  
  .text-end {
    text-align: right;
  }
  
  .panel-caption.text-end {
    padding-right: 50px;
  }
  
  .cssp-capt-animated .p-overlay {
    -webkit-transition-delay: 0.1s;
    transition-delay: 0.1s;
  }
  
  .p-overlay--gradient {
    opacity: 0.5;
    top: 50%;
    background: -webkit-gradient(
      linear,
      left top,
      left bottom,
      color-stop(0%, rgba(0, 0, 0, 0)),
      color-stop(100%, rgba(0, 0, 0, 1))
    );
    
    background: -webkit-linear-gradient(
      top,
      rgba(0, 0, 0, 0) 0%,
      rgba(0, 0, 0, 1) 100%
    );
    background: linear-gradient(
      to bottom,
      rgba(0, 0, 0, 0) 0%,
      rgba(0, 0, 0, 1) 100%
    );
  }
  
  .p-overlay {
    position: absolute;
    left: 0;
    top: 0;
    right: 0;
    bottom: 0;
    -webkit-transition: opacity 0.15s ease-out;
    transition: opacity 0.15s ease-out;
  }
  
  .cssp-capt-animated .panel-text {
    -webkit-transition-delay: 0.2s;
    transition-delay: 0.2s;
  }
  .panel-text {
    font-size: 16px;
    color: #fff;
    font-weight: 300;
    margin-top: 20px;
    line-height: 1.6;
  }
  
  /* .cssp-capt-animated .panel-title {
      -webkit-transition-delay: 0.1s;
      transition-delay: 0.1s;
  } */
  
  .panel-container .panel-title {
    -webkit-transition-delay: 0.1s;
    transition-delay: 0.1s;
  }
  
  .ff-alternative, .kl-font-alt, .kl-fontafter-alt:after, .page-title, .page-subtitle, .subtitle, .topnav-item, .topnav .menu-item > a, .zn-sidebar-widget-title, .nivo-caption, .th-wowslider .ws-title, .cart-container .cart_list li a:not(.remove) {
    font-family: "Lato", Helvetica, Arial, sans-serif;
  }
  
  .captiontitle--wbg, .captiontitle--dbg {
    padding: 13px 0px 13px 45px;
  }
  
  .captiontitle--wbg:before, .captiontitle--dbg:before {
    content: "";
    position: absolute;
    height: 100%;
    border-radius: 4px;
    padding-right: 35px;
    display: block;
    right: -35px;
    bottom: 0;
    left: 0;
    top: 0;
    z-index: -1;
    -webkit-transform-style: preserve-3d;
    transform-style: preserve-3d;
    -webkit-transform: skew(-10deg) translate3d(0, 0, 0);
    -ms-transform: skew(-10deg) translate3d(0, 0, 0);
    transform: skew(-12deg) translate3d(0, 0, 0);
    background: -webkit-gradient(linear,left top,right top,color-stop(0%, rgba(0, 0, 0, 0)),color-stop(80%, rgba(0, 0, 0, 0.45)));
    background: -webkit-linear-gradient(left,rgba(0, 0, 0, 0) 0%,rgba(0, 0, 0, 0.45) 80%);
    background: linear-gradient(to right,rgba(0, 0, 0, 0) 0%,rgba(0, 0, 0, 0.45) 80%);
  }
  
  .panel-title {
    position: relative;
    font-size: 28px;
    line-height: 1.3;
    font-weight: 600;
    color: #fff;
    margin: 0;
  }
  
  .panel-btn-area {
    clear: both;
    float: right;
    margin-top: 30px;
    margin-left: 50px;
  }
  
  .panel-container .panel-btn-area {
    -webkit-transition-delay: 0s;
    transition-delay: 0s;
  }
  
  .btn.btn-fullcolor.btn-skewed, .btn.btn-fullcolor.btn-skewed:hover {
    border: 0;
    background: none;
    position: relative;
    z-index: 0;
  }
  
  .btn.btn-fullcolor {
    background-color: #00639d;
  }
  
  .btn.btn-fullcolor, .btn.btn-fullcolor:focus {
    background-color: #cd2122;
    color: #fff;
  }
  
  .btn.btn-fullwhite, .btn.btn-fullblack, .btn.btn-fullcolor, .btn.btn-default, .btn.btn-primary, .btn.btn-success, .btn.btn-info, .btn.btn-warning, .btn.btn-danger, .btn.btn-link {
    text-shadow: none;
    padding: 10px 20px;
    line-height: 1.6;
    -webkit-box-shadow: none;
    box-shadow: none;
    font-size: 13px;
    font-weight: 700;
    border-style: solid;
    border-radius: 3px;
    -webkit-transition: background-color .15s ease-out;
    transition: background-color .15s ease-out;
  }
  .btn.btn-fullwhite, .btn.btn-fullblack, .btn.btn-fullcolor {
    border-width: 0;
  }
  .btn.btn-fullcolor, .btn.btn-fullcolor:focus {
    background-color: #cd2122;
    color: #fff;
  }
  .btn.btn-danger, .btn.btn-default, .btn.btn-fullblack, .btn.btn-fullcolor, .btn.btn-fullwhite, .btn.btn-info, .btn.btn-link, .btn.btn-primary, .btn.btn-success, .btn.btn-warning {
    text-shadow: none;
    padding: 10px 20px;
    line-height: 1.6;
    box-shadow: none;
    font-size: 13px;
    font-weight: 700;
    border-style: solid;
    border-radius: 3px;
    transition: background-color .15s ease-out;
  }
  .btn.btn-fullblack, .btn.btn-fullcolor, .btn.btn-fullwhite {
    border-width: 0;
  }

  .btn {
    display: inline-block;
    margin-bottom: 0;
    font-weight: normal;
    text-align: center;
    vertical-align: middle;
    -ms-touch-action: manipulation;
    touch-action: manipulation;
    cursor: pointer;
    background-image: none;
    border: 1px solid transparent;
    white-space: nowrap;
    padding: 6px 12px;
    font-size: 14px;
    line-height: 1.42857143;
    border-radius: 4px;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
  }
  
  .btn.btn-fullcolor.btn-skewed:before {
    content: '';
    border-radius: 4px;
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    -webkit-transform: skewX(-8deg);
    transform: skewX(-8deg);
    -webkit-transition: background-color .2s ease-in-out;
    transition: background-color .2s ease-in-out;
    z-index: -1;
  }
  .btn.btn-fullcolor.btn-skewed:before {
    background-color: #cd2122;
  }
  .btn.btn-fullcolor.btn-skewed:before {
    content: "";
    border-radius: 4px;
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    transform: skewX(-8deg);
    transition: background-color .2s ease-in-out;
    z-index: -1;
  }
  
  .btn-skewed {
    display: inline-block;
    transform: skew(-10deg);
    padding: 0.5rem 1.2rem;
    font-weight: bold;
    text-align: center;
    color: #fff;
    background-color: #007bff;
    border: none;
    text-decoration: none;
    transition: all 0.3s ease;
}


  .panel-btn-area .btn {
    margin-left: 20px;
    margin-bottom: 10px;
  }
  
  .contract-main-title {
    font-size: 2.2222222222rem;
    text-align: center;
    margin-bottom: 16px;
  }
/*!*************************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[1].oneOf[1].use[1]!./node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[1].oneOf[1].use[2]!./assets/css/responsive.css ***!
  \*************************************************************************************************************************************************************************************************/
/*
 * Title:   Miracle | Responsive Multi-Purpose HTML5 Template - Responsive Style file
 * Author:  http://themeforest.net/user/soaptheme
 */
/* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
[Table of contents]

1. New Grid System
2. Add clearfix in the grid system
3. Styles for devices(>=1200px)
4. Styles for devices(>=992px and <=1199px)
5. Styles for devices(<=1199px)
6. Styles for devices(<=991px )
7. Styles for devices(>=768px and <= 991px)
8. Styles for devices(<=767px )
9. Styles for devices(>=481px and <= 767px)
10. Styles for devices(<=480px )
11. Styles for devices(<=320px )


~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ */
/*
 * Title:   Miracle | Responsive Multi-Purpose HTML5 Template - SCSS Mixin
 * Author:  http://themeforest.net/user/soaptheme
 */
/* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
[Table of contents]

1) BORDER RADIUS
2) OPACITY
3) BACKGROUND GRADIENT
4) BOX SHADOW
5) TEXT SHADOW
6) TRANSITION
7) ANIMATION
8) TRANSFORM
9) DESATURATE
10) RETINA
11) GRADIENT IMAGE

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ */
/* 1) BORDER RADIUS */
/* 2) OPACITY */
/* 3) BACKGROUND GRADIENT */
/* 4) BOX SHADOW */
/* 5) TEXT SHADOW */
/* 6) TRANSITION */
/* 7) ANIMATION */
/* 8) TRANSFORM */
/* 9) DESATURATE */
/* 10) RETINA */
/* 11) GRADIENT IMAGE */
/* 1. New Grid System */

/* Astuce pour une bonne responsive CSS
Lorsque nous utilisons le max, partons des valeurs les plus grandes 
aux valeurs les plus petites => LES DERNIERS STYLES PRIMERONT DONC ! */

/* Astuce pour une bonne responsive CSS
Lorsque nous utilisons le min, partons des valeurs les plus petites 
aux valeurs les plus grandes => LES DERNIERS STYLES PRIMERONT DONC ! */

div#navbarsP.show+div#profile-pic2 {
    margin: auto;
  }
  
      @media (max-width: 382px) {
        #profile-pic2 {
          margin: auto;
        }
      }
  
  
  
  /* Pris avec le CSS des panels */
    @media (max-width: 1440px) {
      .panel .panel-btn-area .btn {
          margin-bottom: 10px;
          display: block;
      }
    
      .panel .panel-title {
        font-size: 18px;
      }
  
      .panel .panel-text {
          font-size: 13px;
      }
  
  }
  
  
  /* 5. Styles for devices(<=1199px) */
  @media (max-width: 1199px) {
    [class^="col-lg-"].pull-left, [class^="col-lg-"].pull-right {
      float: none !important; }
  
    .testimonials.style1.multiple-items .owl-controls .owl-prev {
      left: 15px; }
    .testimonials.style1.multiple-items .owl-controls .owl-next {
      right: 15px; }
  
  /*  .iso-container {
      &.style-masonry {
        &.iso-col-6 .iso-item {
          width: 19.98%;
          &.double-width { width: 39.96%; }
        }
        &.iso-col-5 .iso-item {
          width: 24.98%;
          &.double-width { width: 49.96%; }
        }
      } }
      */
      .iso-container.iso-col-6 .iso-item {
        width: 20%; }
        .iso-container.iso-col-6 .iso-item.double-width {
          width: 40%; }
      .iso-container.iso-col-5 .iso-item {
        width: 25%; }
        .iso-container.iso-col-5 .iso-item.double-width {
          width: 50%; } }
  
  
  
  /* 6. Styles for devices(<=991px ) */
  @media (max-width: 991px) {
    .hidden-mobile {
      display: none !important; }
  
    [class^="col-md-"].pull-left, [class^="col-md-"].pull-right, [class*=" col-md-"].pull-left, [class*=" col-md-"].pull-right {
      float: none !important; }
  
    .container {
      /* width: auto; */
      padding-left: 20px;
      padding-right: 20px; }
  
    .callout-box {
      text-align: center; }
      .callout-box .callout-content, .callout-box .callout-text, .callout-box .callout-action {
        display: block;
        padding: 0; }
      .callout-box.style1 .callout-box-wrapper {
        padding: 20px 0 0; }
      .callout-box.style1 .callout-text:after {
        display: block;
        content: "";
        height: 1px;
        background: rgba(255, 255, 255, 0.1);
        margin: 0 auto 20px;
        width: 300px; }
      .callout-box.style1 .callout-text h2 {
        border-right: none;
        padding-right: 0;
        margin-bottom: 20px;
        font-size: 2.5em; }
      .callout-box.style1 .callout-stripe-container {
        padding: 0; }
      .callout-box.style1 .callout-stripe {
        position: static;
        padding: 15px 20px; }
        .callout-box.style1 .callout-stripe img {
          display: block;
          margin: 0 auto 5px; }
        .callout-box.style1 .callout-stripe:after {
          display: none; }
      .callout-box.style2, .callout-box.style3 {
        text-align: center; }
        .callout-box.style2 .callout-action, .callout-box.style3 .callout-action {
          text-align: center;
          margin-top: 30px; }
  
    #header {
      background: #0f2541;
      height: 75px; }
      #header .logo {
        margin: 0 !important; }
        #header .logo a {
          color: #fff !important; }
      #header .branding {
        text-align: left !important; }
      #header .header-top-nav > li {
        margin: 0; }
        #header .header-top-nav > li > a {
          line-height: 75px;
          padding: 0 5px; }
          #header .header-top-nav > li > a .fa {
            color: #455b79;
            border-color: #455b79;
            -moz-transition: all 0.3s ease 0s;
            -o-transition: all 0.3s ease 0s;
            -webkit-transition: all 0.3s ease 0s;
            -ms-transition: all 0.3s ease 0s;
            transition: all 0.3s ease 0s;
  }
        #header .header-top-nav > li:hover .fa {
          color: #fff;
          border-color: #fff; }
        #header .header-top-nav > li:last-child > a {
          padding-right: 0; }
     /* #header .header-top-nav .mini-cart {
        .cart-content { background: rgba(11, 28, 50, 0.9) !important; } }
        */
  
        #header .header-top-nav .mini-cart:hover > a {
          background: #0b1c32 !important; }
      #header .header-top-nav .mini-search .main-nav-search-form {
        width: 245px; }
        #header .header-top-nav .mini-search .main-nav-search-form input[type=text] {
          border-color: #455b79;
          background: #0f2541;
          color: #455b79; }
        #header .header-top-nav .mini-search .main-nav-search-form form button .fa {
          color: #455b79; }
        #header .header-top-nav .mini-search .main-nav-search-form form button:hover .fa {
          color: #fff; }
  
    .page-title-container .banner {
      margin-top: 75px; }
  
    .coming-soon-page .clock {
      font-size: 120px; }
  
  /*  .iso-container {
      &.style-masonry {
        &.iso-col-6 .iso-item {
          width: 24.98%;
          &.double-width { width: 49.96%; }
        }
        &.iso-col-5 .iso-item, &.iso-col-4 .iso-item {
          width: 33.31%;
          &.double-width { width: 66.62%; }
        }
      } }
      */
      .iso-container.iso-col-6 .iso-item {
        width: 25%; }
        .iso-container.iso-col-6 .iso-item.double-width {
          width: 50%; }
      .iso-container.iso-col-5 .iso-item, .iso-container.iso-col-4 .iso-item {
        width: 33.3333%; }
        .iso-container.iso-col-5 .iso-item.double-width, .iso-container.iso-col-4 .iso-item.double-width {
          width: 66.6666%; }
  
    .responsive-section .callout-image-container .callout-image img {
      margin-top: 30px; }
  
    .soap-gallery.frame-holder {
      width: 720px;
      margin: 0 auto;
      padding: 45px 0 50px; }
      .soap-gallery.frame-holder .owl-carousel {
        width: 464px; }
      .soap-gallery.frame-holder.effect-shine .owl-carousel:before {
        right: -25px;
        top: -25px;
        max-height: 100%;
        width: 250px; }
  
    .forcefullwidth_wrapper_tp_banner {
      padding-top: 74px !important; }
  
    .image-wrap-with-shadow:before {
      display: none; }
  
    .add-circle-box-line > .col-sm-6:nth-child(2n) {
      border-right: none; }
  
    .woocommerce .single-product-details .single-variation-wrap {
      display: block;
      margin-bottom: 0; }
      .woocommerce .single-product-details .single-variation-wrap .qty-wrap, .woocommerce .single-product-details .single-variation-wrap .variation-action {
        display: block;
        text-align: left;
        margin-bottom: 30px; }
    .woocommerce .single-product-details .social-wrap {
      display: block; }
      .woocommerce .single-product-details .social-wrap label, .woocommerce .single-product-details .social-wrap .social-icons {
        display: block;
        text-align: left; }
      .woocommerce .single-product-details .social-wrap label {
        margin-bottom: 5px; } }
  
  
  /* 8. Styles for devices(<=767px ) */
  @media (max-width: 767px) {
    #footer .back-to-top {
      left: 50%;
      margin-left: -25px; }
  
    .same-height > * {
      height: auto !important; }
  
    [class^="col-sm-"].pull-left, [class^="col-sm-"].pull-right, [class*=" col-sm-"].pull-left, [class*=" col-sm-"].pull-right {
      float: none !important; }
  
    .callout-box.style1 .callout-box-wrapper {
      padding-top: 80px; }
    .callout-box.style1 .callout-text:after {
      margin: 0 auto 30px;
      width: 220px; }
    .callout-box.style1 .callout-text h2 {
      margin-bottom: 30px;
      font-size: 2em; }
    .callout-box.style1 .callout-text h3 {
      margin-bottom: 25px;
      font-size: 1.6666em; }
    .callout-box.style1 .callout-action {
      margin-bottom: 20px; }
    .callout-box.style3 .callout-text * {
      font-size: 1.8em; }
  
    #footer .footer-wrapper .container > .row > div {
      padding-top: 40px;
      padding-bottom: 40px; }
      #footer .footer-wrapper .container > .row > div + div {
        padding-top: 0; }
      #footer .footer-wrapper .container > .row > div:last-child {
        padding-top: 40px; }
  
    .soap-gallery-thumb-wrapper, .post-slider ~ .soap-gallery-thumb-wrapper {
      padding: 12px 0 2px 10px; }
      .soap-gallery-thumb-wrapper > a, .post-slider ~ .soap-gallery-thumb-wrapper > a {
        width: 60px;
        height: 60px;
        margin-right: 10px;
        margin-bottom: 10px; }
  
    .animated {
      visibility: visible; }
  
    .process-builder .process-item {
      float: none;
      width: auto !important; }
    .process-builder.style-simple .process-icon:before, .process-builder.style-simple .process-icon:after {
      display: none; }
  
    .post-slider.style2 .slide-text, .post-slider.style5 .slide-text {
      display: none; }
  
  
   /*  .post-slider.style2 .owl-prev, .post-slider.style2 .owl-next, .post-slider.style2:hover .owl-prev, .post-slider.style2:hover .owl-next {
      margin-top: -13px;
      top: 50%;
      filter: alpha(opacity=100);
      -ms-filter:;
      "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)";
      -moz-opacity: 1;
      -khtml-opacity: 1;
      opacity: 1;
      bottom: auto;
      -webkit-filter:;
  } */
  
    .progress-bar-container.skill-meter {
      display: block; }
  
    .progress-bar.skill-meter {
      display: block;
      height: auto;
      margin-bottom: 20px;
      padding: 0; }
      .progress-bar.skill-meter .progress-label, .progress-bar.skill-meter .progress-wrap {
        display: block;
        height: 39px;
        line-height: 39px; }
      .progress-bar.skill-meter .progress {
        padding-left: 1px; }
  
    .testimonials.style2 .container {
      padding-left: 0;
      padding-right: 0; }
    .testimonials.style2 .sc-content-wrapper .sc-content {
      display: block; }
      .testimonials.style2 .sc-content-wrapper .sc-content h2, .testimonials.style2 .sc-content-wrapper .sc-content p {
        display: block;
        padding: 0; }
      .testimonials.style2 .sc-content-wrapper .sc-content h2 {
        margin-bottom: 20px; }
      .testimonials.style2 .sc-content-wrapper .sc-content p {
        font-size: 1.8em;
        border-left: none; }
  
    .contact-address.style2 {
      display: block;
      margin-bottom: 50px; }
      .contact-address.style2 li {
        display: block;
        width: 100%;
        margin-bottom: 30px; }
  
    .error404 .error-message-404 span {
      font-size: 200px; }
  
    .coming-soon-page .clock {
      font-size: 84px; }
  
   /* .iso-container {
      &.style-masonry {
        &.iso-col-3 .iso-item, &.iso-col-4 .iso-item, &.iso-col-5 .iso-item {
          width: 49.98%;
          &.double-width { width: 100%; }
        }
        &.iso-col-6 .iso-item {
          width: 33.31%;
          &.double-width { width: 66.62%; }
        }
      } }
      */
      .iso-container.iso-col-3 .iso-item, .iso-container.iso-col-4 .iso-item, .iso-container.iso-col-5 .iso-item {
        width: 50%; }
        .iso-container.iso-col-3 .iso-item.double-width, .iso-container.iso-col-4 .iso-item.double-width, .iso-container.iso-col-5 .iso-item.double-width {
          width: 100%; }
      .iso-container.iso-col-6 .iso-item {
        width: 33.3333%; }
        .iso-container.iso-col-6 .iso-item.double-width {
          width: 66.6666%; }
  
    .blog-posts.layout-timeline.layout-fullwidth {
      padding-left: 40px; }
      .blog-posts.layout-timeline.layout-fullwidth .iso-container {
        background-position: left top; }
        .blog-posts.layout-timeline.layout-fullwidth .iso-container .iso-item:nth-child(2) {
          padding-top: 15px; }
      .blog-posts.layout-timeline.layout-fullwidth .load-more {
        margin-left: -50px; }
    .blog-posts.layout-timeline .iso-col-2 .iso-item {
      width: 100%; }
  
    .page-title-container .banner .caption .caption-lg {
      font-size: 5em; }
    .page-title-container .banner .caption .caption-sm {
      font-size: 1em; }
    .page-title-container .style6 .caption .caption-xl {
      font-size: 6em; }
    .page-title-container .style6 .caption .caption-lg {
      font-size: 5em; }
    .page-title-container .style6 .caption .caption-md {
      font-size: 1.3333em; }
  
    .blog-posts .post-full .post-content {
      min-height: 1px !important; }
  
    .single-post .about-author {
      display: block; }
      .single-post .about-author .author-img, .single-post .about-author .about-author-content {
        display: block; }
      .single-post .about-author .about-author-content {
        padding: 20px 0 0; }
        .single-post .about-author .about-author-content .social-icons {
          float: none; }
  
    .progress-bar-container.style-vertical {
      height: 400px;
      margin-left: -5px;
      margin-right: -5px; }
      .progress-bar-container.style-vertical .progress-bar-wrapper {
        border-spacing: 5px 0; }
      .progress-bar-container.style-vertical .progress-bar .progress-label, .progress-bar-container.style-vertical .progress-bar .progress-percent {
        font-size: 1em; }
  
    .tab-container.style1 .tabs, .tab-container.style2 .tabs {
      float: none;
      display: block; }
      .tab-container.style1 .tabs li, .tab-container.style2 .tabs li {
        float: none;
        display: block;
        width: auto; }
  /*  .tab-container.vertical-tab, .tab-container.vertical-tab-1 {
      .tab-content { padding-top: 30px; } } 
      */
      .tab-container.vertical-tab .tabs, .tab-container.vertical-tab-1 .tabs {
        float: none; }
    .tab-container.transparent-tab .tabs {
      float: none;
      display: block; }
      .tab-container.transparent-tab .tabs li {
        float: none;
        display: block;
        width: auto; }
  
    .st-table.block-sms {
      display: block; }
      .st-table.block-sms .st-td {
        display: block; }
  
    .image-banner .caption-wrapper {
      position: static; }
      .image-banner .caption-wrapper.position-left, .image-banner .caption-wrapper.position-right {
        position: absolute; }
        .image-banner .caption-wrapper.position-left h2, .image-banner .caption-wrapper.position-right h2 {
          font-size: 5em; }
    .image-banner .image-container.style-abs {
      position: static; }
      .image-banner .image-container.style-abs.position-right, .image-banner .image-container.style-abs.position-left {
        max-width: 100%; }
  
    .soap-gallery.frame-holder {
      width: 450px;
      margin: 0 auto;
      padding: 28px 0 31px; }
      .soap-gallery.frame-holder .owl-carousel {
        width: 290px; }
      .soap-gallery.frame-holder.effect-shine .owl-carousel:before {
        right: -16px;
        top: -16px;
        max-height: 100%;
        width: 160px; }
      .soap-gallery.frame-holder .owl-buttons .owl-prev {
        left: -80px; }
      .soap-gallery.frame-holder .owl-buttons .owl-next {
        right: -80px; }
  
    #footer .copyright-area {
      display: block; }
      #footer .copyright-area .secondary-menu, #footer .copyright-area .copyright {
        display: block; }
      #footer .copyright-area .secondary-menu {
        margin-bottom: 10px;
        text-align: center; }
        #footer .copyright-area .secondary-menu .nav {
          display: inline-block; }
      #footer .copyright-area .copyright {
        text-align: center; }
  
    .ads-carousel .image-banner .caption-wrapper {
      max-width: 60%;
      padding-left: 10px; }
  
    .ads-carousel .captions .title {
      font-size: 2em; }
  
    .add-circle-box-line > .col-sm-6 {
      border-right: none; }
    .add-circle-box-line > .col-sms-6:nth-child(2n) {
      border-right: none; }
  
    .woocommerce-tabs.tab-container {
      display: block;
      width: auto; }
      .woocommerce-tabs.tab-container ul.tabs, .woocommerce-tabs.tab-container .panel.active {
        display: block; }
  
    .product-wrapper .post-filters .filter-title {
      float: none; }
  
    .woocommerce .qty-wrap .input-text {
      width: 50px; }
  
    .dashboard table.my-wishlist tbody td {
      padding-left: 5px;
      padding-right: 5px; }
  
    .dashboard table.shop_table th, .dashboard table.shop_table td {
      padding-left: 5px; }
  
    .dashboard table.my_product_reviews tbody td {
      padding: 10px; } 
    
      .sm-mb-30 {
        margin-bottom: 30px;
    }
    
    .footer-top {
        padding: 50px 0px;
    }
  
            .panel {
              margin-left: 0px;
              float: none;
            }
  
            .panels-container {
              height: 100%;
              /* margin-top: 160px; */
              margin-top: 8px;
            }
  
            .align-self-end {
              align-self:none;
            }
  
  /*           .navbar-nav {
              display: block;
            }
   */
            .panel-inner {
              -webkit-transform: none;
              -ms-transform: none;
              transform: none;
              -moz-transform: none;
              -o-transform: none;
  }
            .panel-0, .panel-1, .panel-2, .panel-3 {
              margin-top: 1.23em;
            } 
  
            .site-header-main-wrapper {
              background: rgba(255, 255, 255, 1);
            }
           
            .site-header {
              max-height: 1500px;
            }
  
  /*           #navbarsP {
              max-height: 200px;
              z-index: 100;
              position: absolute;
            } */
  
            /* .panel-caption {
              margin-top: -1.23em;
            } */
  #header1 .slogan {
    display: none!important;
  }
  
  #topsocial-link a {
    margin-left: 90%;
  }
  
  
  #header2.navbar .navbar-collapse.show ul li a {
      display: block;
      margin: 0;
      padding: 3px 0;
      width: 100%;
  }
  
  
  .dropdown-menu {
   /*  background-color: rgb(231, 7, 7);
    padding: 3px 0px;
    padding-top: 10px; */
    padding: 0;
  }
  
  
  
  
    }
  
  
  @media (max-width: 500px) {
  
  #header1 .navbar-brand,
  #topsocial-link {
    display: block;
    align-content: center;
    text-align: center;
    margin-right: 0px;
  }
  
  #topsocial-link a {
    margin-left: 0;
  }
  }
  
  /* 10. Styles for devices(<=480px ) */
  @media (max-width: 480px) {
    .hidden-xs {
      display: none !important; }
  
    .coming-soon-page .clock {
      font-size: 52px; }
  
  /*  .iso-container {
      &.style-masonry {
        &.iso-col-2 .iso-item, &.iso-col-3 .iso-item, &.iso-col-4 .iso-item, &.iso-col-5 .iso-item { width: 100%; }
        &.iso-col-6 .iso-item {
          width: 49.98%;
          &.double-width { width: 100%; }
        }
      } } 
      */
      .iso-container.iso-col-2 .iso-item, .iso-container.iso-col-3 .iso-item, .iso-container.iso-col-4 .iso-item, .iso-container.iso-col-5 .iso-item {
        width: 100%; }
      .iso-container.iso-col-6 .iso-item {
        width: 50%; }
        .iso-container.iso-col-6 .iso-item.double-width {
          width: 100%; }
  
    .st-table.block-xs {
      display: block; }
      .st-table.block-xs .st-td {
        display: block; }
  
    ul.products.layout-list .product-image, ul.products.layout-list .product-meta-wrap {
      float: none;
      width: auto; }
    ul.products.layout-list .product-image {
      border-right-width: 2px; }
  
    .image-banner .caption-wrapper.position-left h2, .image-banner .caption-wrapper.position-right h2 {
      font-size: 3em; }
    .image-banner .caption-wrapper.position-left .captions, .image-banner .caption-wrapper.position-right .captions {
      width: 96%; }
    .image-banner .caption-wrapper.position-left .action, .image-banner .caption-wrapper.position-right .action {
      font-size: 0.9167em; }
  
    .add-circle-box-line > .col-sms-6, .add-circle-box-line .col-sm-6 {
      border-right: none; }
  
    .woocommerce table.shop_table tbody td img {
      display: none; }
    .woocommerce table.shop_table tbody .product-quantity .qty {
      width: 40px; }
    .woocommerce table.shop_table tbody .actions {
      text-align: left; }
      .woocommerce table.shop_table tbody .actions .coupon {
        float: none; }
    .woocommerce table.shop_table .coupon .input-text, .woocommerce table.shop_table .btn {
      width: 100%; }
  
    .soap-gallery.frame-holder {
      width: 300px;
      margin: 0 auto;
      padding: 19px 0 21px; }
      .soap-gallery.frame-holder .owl-carousel {
        width: 193px; }
      .soap-gallery.frame-holder.effect-shine .owl-carousel:before {
        right: -11px;
        top: -11px;
        max-height: 100%;
        width: 107px; }
      .soap-gallery.frame-holder .owl-buttons .owl-prev {
        left: -80px; }
      .soap-gallery.frame-holder .owl-buttons .owl-next {
        right: -80px; }
  
    .commentlist .comment .author-img {
      float: none;
      margin-bottom: 15px; }
    .commentlist .comment .comment-content {
      padding-left: 0; } }
  
  
  @media  (max-width: 391px) {
    #greeting-nav {
      justify-content: center!important;
                }
      #profile-pic {
      display: block!important;
    }
  }
  
    @media (max-width: 347px) {
    #header1 .row .col {
      margin-left: auto;
      margin-right: auto;
      padding-left: auto;
      padding-right: auto;
    }
    #header1 div {
      margin-left: 0;
    }
  
    #header2 {
      padding-left: auto;
      padding-right: auto;
      text-align: center;
    }
  
    #header2 button {
      margin-left: auto;
      margin-right: auto;
    }
  
              .panels-container {
              height: 100%;
              margin-top: 240px;
            }
  }
  
  
  @media (max-width: 364px) {
  .panels-container {
      height: 100%;
      /* margin-top: 200px; */
      margin-top: 8px;                        
            }
  
    .segment-four form .row {
      display: flex;
      flex-direction: column;
  }
  
  
  }
  
  /* 11. Styles for devices(<=320px ) */
  @media (max-width: 320px) {
    .page-loading-wrapper .progress-bar {
      width: 250px; }
  
  /*  .iso-container {
      &.style-masonry {
        &.iso-col-6 .iso-item, &.iso-col-5 .iso-item { width: 100%; }
      } }
      */
      .iso-container.iso-col-6 .iso-item, .iso-container.iso-col-5 .iso-item {
        width: 100%; } }
  
  
  /* FIN DU TRAVAIL AVEC LES BORNES SUPERIEURS */
  
  
  /* DEBUT DU TRAVAIL AVEC LES BORNES INFERIEURES */
  @media (min-width: 481px) {
    /* add clearfix in the grid system */
    .row.add-clearfix > .col-sms-2:nth-child(2n+1) {
      clear: none; }
    .row.add-clearfix > .col-sms-2:nth-child(3n+1) {
      clear: none; }
    .row.add-clearfix > .col-sms-2:nth-child(4n+1) {
      clear: none; }
    .row.add-clearfix > .col-sms-2:nth-child(6n+1) {
      clear: both; }
  
    .row.add-clearfix > .col-sms-3:nth-child(2n+1) {
      clear: none; }
    .row.add-clearfix > .col-sms-3:nth-child(3n+1) {
      clear: none; }
    .row.add-clearfix > .col-sms-3:nth-child(4n+1) {
      clear: both; }
  
    .row.add-clearfix > .col-sms-4:nth-child(2n+1) {
      clear: none; }
    .row.add-clearfix > .col-sms-4:nth-child(3n+1) {
      clear: both; }
  
    .row.add-clearfix > .col-sms-6:nth-child(2n+1) {
      clear: both; } }
  
  @media (min-width: 768px) {
    /* add clearfix in the grid system */
    .row.add-clearfix > .col-sm-2:nth-child(2n+1) {
      clear: none; }
    .row.add-clearfix > .col-sm-2:nth-child(3n+1) {
      clear: none; }
    .row.add-clearfix > .col-sm-2:nth-child(4n+1) {
      clear: none; }
    .row.add-clearfix > .col-sm-2:nth-child(6n+1) {
      clear: both; }
  
    .row.add-clearfix > .col-sm-3:nth-child(2n+1) {
      clear: none; }
    .row.add-clearfix > .col-sm-3:nth-child(3n+1) {
      clear: none; }
    .row.add-clearfix > .col-sm-3:nth-child(4n+1) {
      clear: both; }
  
    .row.add-clearfix > .col-sm-4:nth-child(2n+1) {
      clear: none; }
    .row.add-clearfix > .col-sm-4:nth-child(3n+1) {
      clear: both; }
  
    .row.add-clearfix > .col-sm-6:nth-child(2n+1) {
      clear: both; } 
    
  /*   .navbar-expand-md .navbar-collapse {
      display: -ms-flexbox !important;
      display: flex !important;
      -ms-flex-preferred-size: auto;
      flex-basis: auto;
  } */
  
  .action_box-title {
      margin-bottom: 15px;
  }
  
    }
  
  @media (min-width: 992px) {
    .mobile-menu {
      display: none !important; }
  
    .visible-mobile {
      display: none !important; }
  
    /* add clearfix in the grid system */
    .row.add-clearfix > .col-md-2:nth-child(2n+1) {
      clear: none; }
    .row.add-clearfix > .col-md-2:nth-child(3n+1) {
      clear: none; }
    .row.add-clearfix > .col-md-2:nth-child(4n+1) {
      clear: none; }
    .row.add-clearfix > .col-md-2:nth-child(6n+1) {
      clear: both; }
  
    .row.add-clearfix > .col-md-3:nth-child(2n+1) {
      clear: none; }
    .row.add-clearfix > .col-md-3:nth-child(3n+1) {
      clear: none; }
    .row.add-clearfix > .col-md-3:nth-child(4n+1) {
      clear: both; }
  
    .row.add-clearfix > .col-md-4:nth-child(2n+1) {
      clear: none; }
    .row.add-clearfix > .col-md-4:nth-child(3n+1) {
      clear: both; }
  
    .row.add-clearfix > .col-md-6:nth-child(2n+1) {
      clear: both; } }
  
  @media (min-width: 1200px) {
    /* add clearfix in the grid system */
    .row.add-clearfix > .col-lg-2:nth-child(2n+1) {
      clear: none; }
    .row.add-clearfix > .col-lg-2:nth-child(3n+1) {
      clear: none; }
    .row.add-clearfix > .col-lg-2:nth-child(4n+1) {
      clear: none; }
    .row.add-clearfix > .col-lg-2:nth-child(6n+1) {
      clear: both; }
  
    .row.add-clearfix > .col-lg-3:nth-child(2n+1) {
      clear: none; }
    .row.add-clearfix > .col-lg-3:nth-child(3n+1) {
      clear: none; }
    .row.add-clearfix > .col-lg-3:nth-child(4n+1) {
      clear: both; }
  
    .row.add-clearfix > .col-lg-4:nth-child(2n+1) {
      clear: none; }
    .row.add-clearfix > .col-lg-4:nth-child(3n+1) {
      clear: both; }
  
    .row.add-clearfix > .col-lg-6:nth-child(2n+1) {
      clear: both; } 
    
  .action_box-content {
      display: table;
  } 
  
  .action_box-text {
      display: table-cell;
  }
  
  .action_box-buttons {
      text-align: right;
      display: table-cell;
      vertical-align: middle;
      padding-left: 30px;
  }
    }
  
  /* 3. Styles for devices(>=1200px) */
  /* @media (min-width: 1200px) {
    .container {
      padding-left: 0;
      padding-right: 0; } } */
  /* FIN DU TRAVAIL AVEC LES BORNES INFERIEURES */
  
  
  /* DEBUT DU TRAVAIL AVEC LES INTERVALLES */
  @media (min-width: 481px) and (max-width: 767px) {
    .col-sms-1, .col-sms-2, .col-sms-3, .col-sms-4, .col-sms-5, .col-sms-6, .col-sms-7, .col-sms-8, .col-sms-9, .col-sms-10, .col-sms-11, .col-sms-12 {
      float: left; }
  
    .col-sms-12 {width: 100%; }
  
    .col-sms-11 {width: 91.66666667%; }
  
    .col-sms-10 {width: 83.33333333%; }
  
    .col-sms-9 {width: 75%; }
  
    .col-sms-8 {width: 66.66666667%; }
  
    .col-sms-7 {width: 58.33333333%; }
  
    .col-sms-6 {width: 50%; }
  
    .col-sms-5 {width: 41.66666667%; }
  
    .col-sms-4 {width: 33.33333333%; }
  
    .col-sms-3 {width: 25%; }
  
    .col-sms-2 {width: 16.66666667%; }
  
    .col-sms-1 {width: 8.33333333%; }
  
    .col-sms-pull-12 {right: 100%; }
  
    .col-sms-pull-11 {right: 91.66666667%; }
  
    .col-sms-pull-10 {right: 83.33333333%; }
  
    .col-sms-pull-9 {right: 75%; }
  
    .col-sms-pull-8 {right: 66.66666667%; }
  
    .col-sms-pull-7 {right: 58.33333333%; }
  
    .col-sms-pull-6 {right: 50%; }
  
    .col-sms-pull-5 {right: 41.66666667%; }
  
    .col-sms-pull-4 {right: 33.33333333%; }
  
    .col-sms-pull-3 {right: 25%; }
  
    .col-sms-pull-2 {right: 16.66666667%; }
  
    .col-sms-pull-1 {right: 8.33333333%; }
  
    .col-sms-pull-0 {right: 0%; }
  
    .col-sms-push-12 {left: 100%; }
  
    .col-sms-push-11 {left: 91.66666667%; }
  
    .col-sms-push-10 {left: 83.33333333%; }
  
    .col-sms-push-9 {left: 75%; }
  
    .col-sms-push-8 {left: 66.66666667%; }
  
    .col-sms-push-7 {left: 58.33333333%; }
  
    .col-sms-push-6 {left: 50%; }
  
    .col-sms-push-5 {left: 41.66666667%; }
  
    .col-sms-push-4 {left: 33.33333333%; }
  
    .col-sms-push-3 {left: 25%; }
  
    .col-sms-push-2 {left: 16.66666667%; }
  
    .col-sms-push-1 {left: 8.33333333%; }
  
    .col-sms-push-0 {left: 0%; }
  
    .col-sms-offset-12 {margin-left: 100%; }
  
    .col-sms-offset-11 {margin-left: 91.66666667%; }
  
    .col-sms-offset-10 {margin-left: 83.33333333%; }
  
    .col-sms-offset-9 {margin-left: 75%; }
  
    .col-sms-offset-8 {margin-left: 66.66666667%; }
  
    .col-sms-offset-7 {margin-left: 58.33333333%; }
  
    .col-sms-offset-6 {margin-left: 50%; }
  
    .col-sms-offset-5 {margin-left: 41.66666667%; }
  
    .col-sms-offset-4 {margin-left: 33.33333333%; }
  
    .col-sms-offset-3 {margin-left: 25%; }
  
    .col-sms-offset-2 {margin-left: 16.66666667%; }
  
    .col-sms-offset-1 {margin-left: 8.33333333%; }
  
    .col-sms-offset-0 {margin-left: 0%; } 
    
  }

    /* 2. Add clearfix in the grid system */
    .row.add-clearfix > .col-xs-2:nth-child(6n+1) {clear: both; }
    
    .row.add-clearfix > .col-xs-3:nth-child(4n+1) {clear: both; }
    
    .row.add-clearfix > .col-xs-4:nth-child(3n+1) {clear: both; }
    
    .row.add-clearfix > .col-xs-6:nth-child(2n+1) {clear: both; }
  
  /* 9. Styles for devices(>=481px and <= 767px) */
  @media (min-width: 481px) and (max-width: 767px) {
    .colors-section .logo-icon {max-width: 70%; }
  
    .hidden-sms {display: none !important; }
  
    .hidden-xs {display: block !important; } 
  }
  
  /* Pris avec le CSS des footer */
  @media only screen and (min-width: 768px) and (max-width: 991px) {
    .md-mb-30 {margin-bottom: 30px; }   
  }
  
  /* 4. Styles for devices(>=992px and <=1199px) */
  @media (min-width: 992px) and (max-width: 1199px) {
    .container {padding-left: 0; padding-right: 0;} 
  }
  
    @media (max-width: 1440px) and (min-width: 1200px) {
    .panel-btn-area .btn {white-space: normal;  }
  
    .panel-btn-area {float: none; max-width: 100%;  }
  
    .panel-title {word-break: break-word; }
  }
  /* FIN DU TRAVAIL AVEC LES INTERVALLES */
/*!******************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[1].oneOf[1].use[1]!./node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[1].oneOf[1].use[2]!./assets/css/app.css ***!
  \******************************************************************************************************************************************************************************************/
/* ------------------------------------------
   🌐 Global variables & utilities
------------------------------------------- */

/* ------------------------------------------
   🧱 Base elements & components
------------------------------------------- */

/* ------------------------------------------
   🎨 Overrides & typography
------------------------------------------- */ 

/* ------------------------------------------
   📱 Responsive adjustments
------------------------------------------- */


/* @import './overrides.css'; */

/* @import './animations.css'; */ /* Importation à la fin */
/*!*******************************************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[1].oneOf[1].use[1]!./node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[1].oneOf[1].use[2]!./assets/js/components/GreetingNav.module.css ***!
  \*******************************************************************************************************************************************************************************************************************/
.GreetingNav-module__greetingNav__JR9G0 {
    background: rgb(23, 184, 184);
}

.GreetingNav-module__greeting__AwQZ5 {
    margin-left: 10px;
}

.GreetingNav-module__theDate__cp3v9 {
    margin-right: 10px;
}
/*!**************************************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[1].oneOf[1].use[1]!./node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[1].oneOf[1].use[2]!./assets/js/components/Header.module.css ***!
  \**************************************************************************************************************************************************************************************************************/
.Header-module__header1__UJSkd {
    display: flex;
    justify-content: space-between;

    padding-left: 2.5rem;
    padding-right: 2.5rem;
}

.Header-module__site-header-main-wrapper__Vs_uc {
    /* background: rgba(0,0,0,.7); */
    background: rgba(255, 255, 255, 0.9);

}

.Header-module__slogan___MjDV {
    font-family: 'Trebuchet MS', 'Lucida Sans Unicode', 'Lucida Grande', 'Lucida Sans', Arial, sans-serif;
    /* color: rgb(255, 255, 255); */
    color: rgb(12, 54, 241);
    font-size: 28px;
}

.Header-module__topsocial-link__tVSUt a {
    /*    background: #494848;*/
    width: 40px;
    height: 40px;
    display: inline-block;
    border-radius: 50%;
}

.Header-module__topsocial-link__tVSUt a i {
    /*    color: #fff;*/
    font-size: 20px;
    padding: 10px 12px;

}

/* Facebook */
.Header-module__a-facebook-t__Ok__s {
    background: #3b5998;
}

.Header-module__a-facebook-t__Ok__s:hover {
    background: #ffffff;
}

.Header-module__topsocial-link__tVSUt .Header-module__fa-facebook__aYgKB {
    color: #ffffff;
}

.Header-module__topsocial-link__tVSUt .Header-module__fa-facebook__aYgKB:hover {
    color: #3b5998;
}
/*!************************************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[1].oneOf[1].use[1]!./node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[1].oneOf[1].use[2]!./assets/js/components/SkillsRange.css ***!
  \************************************************************************************************************************************************************************************************************/
.heading-box {
    text-align: center;
    float: none;
    margin: 0 auto 40px;
}

.heading-box .box-title {
    font-size: 2.5em;
    margin-bottom: 0;
}

.heading-box h2 {
    margin: 0 0 20px;
    font-weight: 300;
    color: #1b4268;
    line-height: 1.25em;
    font-family: inherit;

}

.heading-box .desc-lg {
    font-size: 1.6667em;
}

.heading-box [class^="desc-"] {
    font-weight: 300;
    margin-top: 0;
}




/* Icon box (The firsts with top icon) */

.icon-box {
    margin-bottom: 20px;
}

.icon-box.box {
    margin-bottom: 30px;
}

.icon-box.box-lg {
    margin-bottom: 40px;
}

.icon-box.block {
    margin-bottom: 60px;
}

.icon-box .box-content p {
    line-height: 1.8461em;
}

.icon-box .box-content>*:last-child {
    margin-bottom: 0;
}


.icon-box[class*=" style-boxed-"].style-boxed-1,
.icon-box[class*=" style-boxed-"].style-boxed-3 {
    text-align: center;
    position: relative;
    border: 1px solid #edf6ff;
}

.icon-box[class*=" style-boxed-"].style-boxed-1 .icon-container,
.icon-box[class*=" style-boxed-"].style-boxed-3 .icon-container {
    font-size: 30px;
}


/* Round the icon-content and its backgroung-color */
.icon-box[class*=" style-boxed-"].style-boxed-1 .icon-container i,
.icon-box[class*=" style-boxed-"].style-boxed-3 .icon-container i {
    width: 3.5em;
    height: 3.5em;
    text-align: center;
    line-height: 3.5em;
    -webkit-border-radius: 50% 50% 50% 50%;
    -moz-border-radius: 50% 50% 50% 50%;
    -ms-border-radius: 50% 50% 50% 50%;
    border-radius: 50% 50% 50% 50%;
    background: #ff6600;
    color: #fff;
    position: relative;
    cursor: default;
}


.icon-box[class*=" style-boxed-"].style-boxed-1 .icon-container i:before,
.icon-box[class*=" style-boxed-"].style-boxed-3 .icon-container i:before {
    position: relative;
    z-index: 1;
}


.icon-box[class*=" style-boxed-"].style-boxed-1 .icon-container i:after,
.icon-box[class*=" style-boxed-"].style-boxed-3 .icon-container i:after {
    content: "";
    display: block;
    position: absolute;
    left: 0;
    top: 0;
    width: 3.5em;
    height: 1.75em;
    -webkit-border-radius: 1.75em 1.75em 0 0;
    -moz-border-radius: 1.75em 1.75em 0 0;
    -ms-border-radius: 1.75em 1.75em 0 0;
    border-radius: 1.75em 1.75em 0 0;
    background: #ff7d26;
    -webkit-transform: rotate(45deg);
    -moz-transform: rotate(45deg);
    -ms-transform: rotate(45deg);
    -o-transform: rotate(45deg);
    transform: rotate(45deg);
    -webkit-transform-origin: 50% 100%;
    -moz-transform-origin: 50% 100%;
    -ms-transform-origin: 50% 100%;
    -o-transform-origin: 50% 100%;
    transform-origin: 50% 100%;
}

/* .icon-box[class*=" style-boxed-"].style-boxed-1 .icon-container i,
                                  .icon-box[class*=" style-boxed-"].style-boxed-1 .icon-container i:after,
                                  .icon-box[class*=" style-boxed-"].style-boxed-3 .icon-container i,
                                  .icon-box[class*=" style-boxed-"].style-boxed-3 .icon-container i:after {
                                      @include transition(all, 0.3s, ease);
                                  } */

/* blue background-color for the middle area (left bottom) */
.icon-box[class*=" style-boxed-"].style-boxed-1.icon-color-blue .icon-container i,
.icon-box[class*=" style-boxed-"].style-boxed-3.icon-color-blue .icon-container i {
    background-color: #1b4268;
}

.icon-box[class*=" style-boxed-"].style-boxed-1.icon-color-blue .icon-container i:after,
.icon-box[class*=" style-boxed-"].style-boxed-3.icon-color-blue .icon-container i:after {
    background: #22486d;
}

.icon-box[class*=" style-boxed-"].style-boxed-1 {
    padding: 72px 30px 30px;
    margin-top: 52px;
}

/* Display the icon at an absolute position, on the top ... */
.icon-box[class*=" style-boxed-"].style-boxed-1 .icon-container {
    position: absolute;
    left: 50%;
    top: -1.75em;
    margin-left: -1.75em;
}


.icon-box[class*=" style-boxed-"].style-boxed-1 .icon-container:before {
    content: "";
    display: block;
    position: absolute;
    left: -0.45em;
    top: -0.45em;
    width: 4.4em;
    height: 2.2em;
    border: 1px solid #edf6ff;
    border-bottom: none;
    -webkit-border-radius: 2.2em 2.2em 0 0;
    -moz-border-radius: 2.2em 2.2em 0 0;
    -ms-border-radius: 2.2em 2.2em 0 0;
    border-radius: 2.2em 2.2em 0 0;
    background: #fff;
}

/* A red backgroud-color for the hover of the icon-box container */
.icon-box[class*=" style-boxed-"].style-boxed-1:hover .icon-container i {
    background: #ff6600;
}

/* A red backgroud-color for the hover of the icon-box container (the bottom left) */
.icon-box[class*=" style-boxed-"].style-boxed-1:hover .icon-container i:after {
    background: #ff7d26;
}


/* Icon box (The seconds with top icon) */
.icon-box[class*=" style-boxed-"].style-boxed-4 {
    border: 2px solid #edf6ff;
    text-align: center;
}

.icon-box[class*=" style-boxed-"].style-boxed-4 .icon-container {
    padding: 35px 0;
    color: #ff6600;
}

.icon-box[class*=" style-boxed-"].style-boxed-4 .icon-container i {
    font-size: 30px;
}

.icon-box[class*=" style-boxed-"].style-boxed-4 .box-content {
    padding: 30px;
    background: #edf6ff;
}
/*!*******************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[1].oneOf[1].use[1]!./node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[1].oneOf[1].use[2]!./assets/css/home.css ***!
  \*******************************************************************************************************************************************************************************************/


/*# sourceMappingURL=data:application/json;charset=utf-8;base64,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Qjs7O0FBR0E7SUFDSSxXQUFXO0lBQ1gsY0FBYztJQUNkLGtCQUFrQjtJQUNsQixhQUFhO0lBQ2IsWUFBWTtJQUNaLFlBQVk7SUFDWixhQUFhO0lBQ2IseUJBQXlCO0lBQ3pCLG1CQUFtQjtJQUNuQixzQ0FBc0M7SUFDdEMsbUNBQW1DO0lBQ25DLGtDQUFrQztJQUNsQyw4QkFBOEI7SUFDOUIsZ0JBQWdCO0FBQ3BCOztBQUVBLGtFQUFrRTtBQUNsRTtJQUNJLG1CQUFtQjtBQUN2Qjs7QUFFQSxvRkFBb0Y7QUFDcEY7SUFDSSxtQkFBbUI7QUFDdkI7OztBQUdBLHlDQUF5QztBQUN6QztJQUNJLHlCQUF5QjtJQUN6QixrQkFBa0I7QUFDdEI7O0FBRUE7SUFDSSxlQUFlO0lBQ2YsY0FBYztBQUNsQjs7QUFFQTtJQUNJLGVBQWU7QUFDbkI7O0FBRUE7SUFDSSxhQUFhO0lBQ2IsbUJBQW1CO0FBQ3ZCLEMiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vLi9hc3NldHMvY3NzL3ZhcmlhYmxlcy5jc3MiLCJ3ZWJwYWNrOi8vLy4vYXNzZXRzL2Nzcy91dGlsaXRpZXMuY3NzIiwid2VicGFjazovLy8uL2Fzc2V0cy9jc3MvaHRtbC1lbGVtZW50cy5jc3MiLCJ3ZWJwYWNrOi8vLy4vYXNzZXRzL2Nzcy9zdHlsZXMuY3NzIiwid2VicGFjazovLy8uL2Fzc2V0cy9jc3MvYm9vdHN0cmFwLW92ZXJyaWRlcy5jc3MiLCJ3ZWJwYWNrOi8vLy4vYXNzZXRzL2Nzcy90eXBvZ3JhcGh5LmNzcyIsIndlYnBhY2s6Ly8vLi9hc3NldHMvY3NzL2NvbXBvbmVudHMvSGVhZGVyUGFuZWwuY3NzIiwid2VicGFjazovLy8uL2Fzc2V0cy9jc3MvcmVzcG9uc2l2ZS5jc3MiLCJ3ZWJwYWNrOi8vLy4vYXNzZXRzL2Nzcy9hcHAuY3NzIiwid2VicGFjazovLy8uL2Fzc2V0cy9qcy9jb21wb25lbnRzL0dyZWV0aW5nTmF2Lm1vZHVsZS5jc3MiLCJ3ZWJwYWNrOi8vLy4vYXNzZXRzL2pzL2NvbXBvbmVudHMvSGVhZGVyLm1vZHVsZS5jc3MiLCJ3ZWJwYWNrOi8vLy4vYXNzZXRzL2pzL2NvbXBvbmVudHMvU2tpbGxzUmFuZ2UuY3NzIl0sInNvdXJjZXNDb250ZW50IjpbIlxyXG5cclxuOnJvb3Qge1xyXG4gIC8qIPCfjqggQ291bGV1cnMgcHJpbmNpcGFsZXMgKi9cclxuICAtLWNvbG9yLXByaW1hcnk6ICMwMDdiZmY7XHJcbiAgLS1jb2xvci1zZWNvbmRhcnk6ICM2Yzc1N2Q7XHJcbiAgLS1jb2xvci1hY2NlbnQ6ICNmZmMxMDc7XHJcblxyXG4gIC8qIPCfk5AgVGFpbGxlcyAqL1xyXG4gIC0tc3BhY2luZy1zbTogMC41cmVtO1xyXG4gIC0tc3BhY2luZy1tZDogMXJlbTtcclxuICAtLXNwYWNpbmctbGc6IDJyZW07XHJcblxyXG4gIC8qIPCflosgVHlwb2dyYXBoaWUgKi9cclxuICAtLWZvbnQtZmFtaWx5LWJhc2U6ICdSb2JvdG8nLCBzYW5zLXNlcmlmO1xyXG4gIC0tZm9udC1zaXplLWJhc2U6IDFyZW07XHJcbiAgLS1mb250LXNpemUtbGc6IDEuMjVyZW07XHJcblxyXG4gIC8qIC0tYnMtbmF2YmFyLWNvbG9yOiNmZmZmZmY7ICovXHJcblxyXG4gIH0iLCJpLmZhLmZhLXVzZXIge1xyXG4gICAgLyogd2lkdGg6IDEzcHg7XHJcbiAgICBoZWlnaHQ6IDE0cHg7ICovXHJcbiAgXHJcbiAgICB3aWR0aDogMTAwJTtcclxuICAgIGhlaWdodDogMTAwJTtcclxuICB9XHJcblxyXG4gIC8qIEFwcGxpcXVlIGxlcyBtw6ptZXMgc3R5bGVzIHF1J8OgIGxhIGNsYXNzZSAuZmEgQUpVU1RFTUVOVCBERSBMQSBWRVJTSU9OIDQuMCBBIDUqL1xyXG4uZmFiIHtcclxuICAgIGZvbnQtZmFtaWx5OiBcIkZvbnQgQXdlc29tZSA1IEZyZWVcIiwgXCJGb250QXdlc29tZVwiLCBzYW5zLXNlcmlmOyAgLyogQXNzdXJlIHF1ZSBsYSBwb2xpY2UgZCdpY8O0bmUgZXN0IGNvcnJlY3RlbWVudCBkw6lmaW5pZSAqL1xyXG4gICAgZm9udC13ZWlnaHQ6IDkwMDsgIC8qIEFwcGxpcXVlIHVuIHBvaWRzIGRlIHBvbGljZSBzaW1pbGFpcmUgw6AgLmZhIHBvdXIgYXZvaXIgbGEgbcOqbWUgw6lwYWlzc2V1ciBkZSBsJ2ljw7RuZSAqL1xyXG4gICAgZm9udC1zdHlsZTogbm9ybWFsOyAgLyogQXNzdXJlIHF1ZSBsYSBwb2xpY2UgZXN0IGVuIHN0eWxlIG5vcm1hbCAocGFzIGVuIGl0YWxpcXVlKSAqL1xyXG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lOyAgLyogUmV0aXJlIHRvdXRlIGTDqWNvcmF0aW9uIGRlIHRleHRlICh1dGlsZSBwb3VyIMOpdml0ZXIgbGVzIHNvdXMtbGlnbmVtZW50cywgZXRjLikgKi9cclxufVxyXG5cclxuLnNlZ21lbnQtdGhyZWUgYS5zdmctaSB7XHJcbiAgZGlzcGxheTogaW5saW5lLWZsZXg7XHJcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuICB3aWR0aDogNDhweDtcclxuICBoZWlnaHQ6IDQ4cHg7XHJcbiAgYm9yZGVyLXJhZGl1czogNTAlO1xyXG4gIGJhY2tncm91bmQtY29sb3I6IHdoaXRlO1xyXG4gIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMC4zcyBlYXNlO1xyXG4gIGNvbG9yOiAjM2I1OTk4O1xyXG4gIC8qIGNvbG9yOiB3aGl0ZTsgKi9cclxufVxyXG5cclxuLnNlZ21lbnQtdGhyZWUgYS5zdmctaTpob3ZlciB7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogIzJkNDM3MztcclxufVxyXG5cclxuLnNlZ21lbnQtdGhyZWUgYSAuaWNvbiB7XHJcbiAgICB3aWR0aDogNDhweDtcclxuICAgIGhlaWdodDogNDhweDtcclxufSIsIioge1xyXG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcbiAgLW1vei1ib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG4gIC8qIEZpcmVmb3ggKi9cclxuICBtYXJnaW46IDA7XHJcbiAgcGFkZGluZzogMDtcclxuICAtd2Via2l0LXRhcC1oaWdobGlnaHQtY29sb3I6IHRyYW5zcGFyZW50O1xyXG4gIHpvb206IDE7XHJcbn1cclxuLyogU3R5bGUgYXUgbml2ZWF1IGfDqW7DqXJhbCAqL1xyXG5cclxuOjpiZWZvcmUsIDo6YWZ0ZXIge1xyXG4gICAgLXdlYmtpdC1ib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG4gICAgLW1vei1ib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcclxuICB9XHJcbiAgXHJcblxyXG5odG1sIHtcclxuICAgIGZvbnQtc2l6ZTogMTZweDtcclxuICAgIG1pbi1oZWlnaHQ6IDEwMCU7XHJcbiAgICAvKiAgb3ZlcmZsb3cteDogaGlkZGVuICFpbXBvcnRhbnQ7ICovXHJcbiAgfVxyXG4gIFxyXG4gIGJvZHkge1xyXG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xyXG4gICAgICBib3JkZXItdG9wOiAyLjRweCBzb2xpZCAjZjEyYzA5O1xyXG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgIC8qIGZvbnQtZmFtaWx5OiBcIk9wZW4gU2Fuc1wiLCBBcmlhbCwgSGVsdmV0aWNhLCBzYW5zLXNlcmlmOyAqL1xyXG4gICAgICBmb250LXdlaWdodDogNDAwO1xyXG4gICAgICBmb250LXNpemU6IDEuMnJlbTtcclxuICAgIFxyXG4gICAgICAvKiBwYWRkaW5nLWJvdHRvbTogMjBweDsgKi9cclxuICAgICAgLyogb3ZlcmZsb3cteDogaGlkZGVuOyAqL1xyXG4gIFxyXG4gICAgICBwYWRkaW5nLWJvdHRvbTogMjBweDsgICBcclxuICAgICAgY29sb3I6ICMyODI4Mjg7XHJcbiAgICB9XHJcbiAgICBcclxuYm9keSB7XHJcbiAgICBmb250OiAxMDAlLzE1MCUgXCJPcGVuIFNhbnNcIiwgQXJpYWwsIEhlbHZldGljYSwgc2Fucy1zZXJpZjtcclxuICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XHJcbiAgICAvKiBjb2xvcjogIzkzOWZhYTsgKi9cclxuICAgIGNvbG9yOiAjMjgyODI4O1xyXG5cclxuICAgIC8qIG92ZXJmbG93LXg6IGhpZGRlbiAhaW1wb3J0YW50OyAqL1xyXG4gICAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XHJcbiAgICAtbXMtb3ZlcmZsb3ctc3R5bGU6IHNjcm9sbGJhcjtcclxuICAgIC8qb3ZlZmxvdy15OiBzY3JvbGw7Ki9cclxufVxyXG5cclxuXHJcblxyXG5cclxuICAgIFxyXG4gICAgYSwgYTpob3ZlciB7XHJcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xyXG4gICAgfVxyXG4gIFxyXG4gICAgcCB7XHJcbiAgICAgICAgLyogY29sb3I6Izk5OTsgKi9cclxuICAgICAgICBsaW5lLWhlaWdodDogMjVweDtcclxuICAgIH1cclxuICBcclxuICAgIC5sYXN0LXBhcmFncmFwaCBwIHtcclxuICAgICAgZm9udC1zaXplOiAxOHB4O1xyXG4gICAgICBsaW5lLWhlaWdodDogMjhweDtcclxuICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcclxuICAgIH1cclxuICBcclxuICBcclxuICBoMSB7XHJcbiAgICBjb2xvcjogIzAwMDAwMDtcclxuICAgIGZvbnQtd2VpZ2h0OiA4MDA7XHJcbiAgICBtYXJnaW4tYm90dG9tOiAyNXB4O1xyXG4gIH1cclxuICAgIFxyXG4gICAgaDIsIGgzIHtcclxuICAgICAgICBjb2xvcjojZmZmO1xyXG4gICAgfVxyXG4gICAgXHJcbiAgICBoMiB7XHJcbiAgICAgICAgZm9udC1zaXplOiAxNnB4O1xyXG4gICAgfVxyXG5cclxuICAgIGg0IHtcclxuICAgICAgICBmb250LWZhbWlseTogXCJPcGVuIFNhbnNcIiwgSGVsdmV0aWNhLCBBcmlhbCwgc2Fucy1zZXJpZjtcclxuICAgICAgICBmb250LXNpemU6IDE4cHg7XHJcbiAgICAgICAgbGluZS1oZWlnaHQ6IDIwcHg7XHJcbiAgICAgICAgLyogZm9udC13ZWlnaHQ6IDsgKi9cclxuICAgICAgICBmb250LXN0eWxlOiBub3JtYWw7XHJcbiAgICB9IiwiLnNsb2dhbiB7XHJcbiAgICBmb250LWZhbWlseTogJ1RyZWJ1Y2hldCBNUycsICdMdWNpZGEgU2FucyBVbmljb2RlJywgJ0x1Y2lkYSBHcmFuZGUnLCAnTHVjaWRhIFNhbnMnLCBBcmlhbCwgc2Fucy1zZXJpZjtcclxuICAgIC8qIGNvbG9yOiByZ2IoMjU1LCAyNTUsIDI1NSk7ICovXHJcbiAgICBjb2xvcjogcmdiKDEyLCA1NCwgMjQxKTtcclxuICAgIGZvbnQtc2l6ZTogMjhweDtcclxufVxyXG5cclxuLyogQ1NTIGZvciB0aGUgaGVhZGVyICovXHJcblxyXG4jZ3JlZXRpbmctbmF2IHtcclxuICAgIGJhY2tncm91bmQ6IHJnYigyNTEsIDI1MywgMjUzKTtcclxufVxyXG5cclxuLnNpdGUtaGVhZGVyIHtcclxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgLyogYmFja2dyb3VuZDogcmdiYSgwLDAsMCwuNSk7ICovXHJcbiAgICB6LWluZGV4OiAzO1xyXG5cclxuICAgIGJhY2tncm91bmQ6IG5vbmU7XHJcbiAgICAvKiAgaGVpZ2h0OiAxMjVweDsgKi9cclxuICAgIG1heC1oZWlnaHQ6IDE1MHB4O1xyXG4gICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAvKiBvdmVyZmxvdzogdW5zZXQ7ICovXHJcbn1cclxuXHJcbi8qIC5zaXRlLWhlYWRlci5zdHlsZTguaGVhZGVyc3R5bGUtLWRlZmF1bHQgKi9cclxuLnNpdGUtaGVhZGVyLW1haW4td3JhcHBlciB7XHJcbiAgICAvKiBiYWNrZ3JvdW5kOiByZ2JhKDAsMCwwLC43KTsgKi9cclxuICAgIGJhY2tncm91bmQ6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC45KTtcclxuXHJcbn1cclxuXHJcbi5zaXRlLWhlYWRlci1tYWluLXdyYXBwZXItY29udGFjdCB7XHJcbiAgICBiYWNrZ3JvdW5kOiByZ2IoMjU1LCAxNjUsIDApO1xyXG59XHJcblxyXG4vKiAuc2l0ZS1oZWFkZXIuc3R5bGU4LmhlYWRlcnN0eWxlLS1kZWZhdWx0ICovXHJcbi5zaXRlLWhlYWRlci1ib3R0b20td3JhcHBlciB7XHJcbiAgICBiYWNrZ3JvdW5kOiByZ2JhKDAsIDAsIDAsIC42KTtcclxufVxyXG5cclxuLyogICAubmF2YmFyIHtcclxuICAgICBwYWRkaW5nOiAwcmVtIDFyZW07XHJcbiAgIH0gKi9cclxuXHJcbiNncmVldGluZyB7XHJcbiAgICBtYXJnaW4tbGVmdDogMTBweDtcclxufVxyXG5cclxuI3RoZURhdGUge1xyXG4gICAgbWFyZ2luLXJpZ2h0OiAxMHB4O1xyXG59XHJcblxyXG4jaGVhZGVyMSB7XHJcbiAgICAvKiAgICAgLXdlYmtpdC1ib3gtc2hhZG93OiAwcHggNXB4IDVweCAwcHggcmdiYSgxNzYsMzEsNDUsMSk7XHJcbiAgICAgICAtbW96LWJveC1zaGFkb3c6IDBweCA1cHggNXB4IDBweCByZ2JhKDE3NiwzMSw0NSwxKTtcclxuICAgICAgIGJveC1zaGFkb3c6IDBweCA1cHggNXB4IDBweCByZ2JhKDE3NiwzMSw0NSwxKTsgKi9cclxuICAgIC8qIGJhY2tncm91bmQtY29sb3I6ICNCMDFGMkQ7ICovXHJcbiAgICAvKiBiYWNrZ3JvdW5kLWNvbG9yOiAjZjVmMGYxOyAqL1xyXG4gICAgLyogYmFja2dyb3VuZC1jb2xvcjogcmdiKDIyMiwgMjIyLCAyMjIpOyAqL1xyXG5cclxuXHJcbiAgICAvKiAgLXdlYmtpdC1ib3gtc2hhZG93OiAxMHB4IDEwcHggNXB4IDBweCByZ2JhKDAsMCwwLDAuNzUpO1xyXG4gICAgIC1tb3otYm94LXNoYWRvdzogMTBweCAxMHB4IDVweCAwcHggcmdiYSgwLDAsMCwwLjc1KTtcclxuICAgICBib3gtc2hhZG93OiAxMHB4IDEwcHggNXB4IDBweCByZ2JhKDAsMCwwLDAuNzUpOyAqL1xyXG5cclxuXHJcbiAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xyXG5cclxuICAgIHBhZGRpbmctbGVmdDogMi41cmVtO1xyXG4gICAgcGFkZGluZy1yaWdodDogMi41cmVtO1xyXG59XHJcblxyXG5cclxuXHJcbiNoZWFkZXIyIHtcclxuICAgIC8qIG92ZXJmbG93OiBoaWRkZW47ICovXHJcbiAgICBwYWRkaW5nLWxlZnQ6IDM1cHg7XHJcbiAgICAvKiBiYWNrZ3JvdW5kLWNvbG9yOiAjRUFFNUU1OyAqL1xyXG4gICAgLyogYmFja2dyb3VuZC1jb2xvcjogcmdiYSgyMjMsIDIzNCwgMjIzLCAxKTsgKi9cclxuICAgIC8qIGJhY2tncm91bmQtY29sb3I6IHJnYigzOSwgMzQsIDM0KTsgKi9cclxuXHJcbiAgICAtd2Via2l0LWJveC1zaGFkb3c6IDBweCA1cHggNXB4IDBweCByZ2JhKDQsIDgyLCAyNTEsIDEpO1xyXG4gICAgLW1vei1ib3gtc2hhZG93OiAwcHggNXB4IDVweCAwcHggcmdiYSg0LCA4MiwgMjUxLCAxKTtcclxuICAgIGJveC1zaGFkb3c6IDBweCA1cHggNXB4IDBweCByZ2JhKDQsIDgyLCAyNTEsIDEpO1xyXG4gICAgcGFkZGluZy1ib3R0b206IDBweDtcclxuICAgIG1hcmdpbi1ib3R0b206IDJweDtcclxufVxyXG5cclxuLyogTGlua3MgaW5zaWRlIHRoZSBuYXZiYXIgKi9cclxuI2hlYWRlcjIgYSB7XHJcbiAgICBmbG9hdDogbGVmdDtcclxuICAgIGZvbnQtc2l6ZTogMTZweDtcclxuICAgIC8qIGNvbG9yOiB3aGl0ZTsgKi9cclxuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgIHBhZGRpbmc6IDE0cHggMTZweDtcclxuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcclxufVxyXG5cclxuI2hlYWRlcjIgYS5uYXZiYXItYnJhbmQge1xyXG4gICAgZm9udC1zaXplOiAyOHB4O1xyXG59XHJcblxyXG4vKiBUaGUgZHJvcGRvd24gY29udGFpbmVyICovXHJcbiNoZWFkZXIyIC5kcm9wZG93biB7XHJcbiAgICBmbG9hdDogbGVmdDtcclxuICAgIC8qIG92ZXJmbG93OiBoaWRkZW47ICovXHJcbn1cclxuXHJcbi8qIERyb3Bkb3duIGJ1dHRvbiAqL1xyXG4jaGVhZGVyMiAuZHJvcGRvd24gLm5hdmJhci10b2dnbGVyIHtcclxuICAgIGZvbnQtc2l6ZTogMTZweDtcclxuICAgIGJvcmRlcjogbm9uZTtcclxuICAgIG91dGxpbmU6IG5vbmU7XHJcbiAgICBjb2xvcjogd2hpdGU7XHJcbiAgICBwYWRkaW5nOiAxNHB4IDE2cHg7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiBpbmhlcml0O1xyXG4gICAgZm9udC1mYW1pbHk6IGluaGVyaXQ7XHJcbiAgICAvKiBJbXBvcnRhbnQgZm9yIHZlcnRpY2FsIGFsaWduIG9uIG1vYmlsZSBwaG9uZXMgKi9cclxuICAgIG1hcmdpbjogMDtcclxuICAgIC8qIEltcG9ydGFudCBmb3IgdmVydGljYWwgYWxpZ24gb24gbW9iaWxlIHBob25lcyAqL1xyXG59XHJcblxyXG4jaGVhZGVyMiAubmF2LWxpbms6aG92ZXIge1xyXG4gICAgLyogYmFja2dyb3VuZC1jb2xvcjogcmdiKDM0LCAxOTAsIDM0KTsgKi9cclxuICAgIC8qIGJhY2tncm91bmQ6IHJnYmEoMTcsIDEyMiwgMywgMSk7ICovXHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2IoMTc2LCAzMSwgNDUpO1xyXG4gICAgY29sb3I6IHJnYigyMzMsIDIyMywgMjI0KTtcclxufVxyXG5cclxuI2hlYWRlcjIgYS5hY3RpdmUge1xyXG4gICAgLyogYmFja2dyb3VuZC1jb2xvcjogIzRDQUY1MDsgKi9cclxuICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoNCwgODIsIDI1MSwgMC43NSk7XHJcbiAgICBjb2xvcjogd2hpdGU7XHJcbn1cclxuXHJcbiNwcm9maWxlLXBpYyxcclxuI3Byb2ZpbGUtcGljMiB7XHJcbiAgICAvKiB3aWR0aDogMzVweDtcclxuICAgIGhlaWdodDogMzVweDsgKi9cclxuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XHJcbiAgICBtYXJnaW4tYm90dG9tOiAycHg7XHJcblxyXG59XHJcblxyXG4jcHJvZmlsZS1waWMgYSxcclxuI3Byb2ZpbGUtcGljMiBhIHtcclxuICAgIGZsb2F0OiBub25lICFpbXBvcnRhbnQ7XHJcbiAgICBwYWRkaW5nOiA4cHggIWltcG9ydGFudDtcclxuICAgIG1hcmdpbi10b3A6IGF1dG87XHJcbiAgICBtYXJnaW4tYm90dG9tOiBhdXRvO1xyXG4gICAgZm9udC1zaXplOiAyNHB4O1xyXG5cclxufVxyXG5cclxuLm5hdmJhci1jdXN0b20xIHtcclxuICAgIGJhY2tncm91bmQtY29sb3I6ICM5OTk5OTk7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDAwMEZGO1xyXG5cclxuICAgIG1hcmdpbi1ib3R0b206IDhweDtcclxuXHJcbiAgICAtd2Via2l0LWJveC1zaGFkb3c6IDBweCA1cHggNXB4IDBweCByZ2JhKDE1MywgMTUzLCAxNTMsIDAuMjUpO1xyXG4gICAgLyogICAgLW1vei1ib3gtc2hhZG93OiAwcHggNXB4IDVweCAwcHggcmdiYSgxNTMsMTUzLDE1MywwLjI1KTsqL1xyXG4gICAgYm94LXNoYWRvdzogMHB4IDVweCA1cHggMHB4IHJnYmEoMTUzLCAxNTMsIDE1MywgMC4yNSk7XHJcbn1cclxuXHJcbiN0b3Bzb2NpYWwtbGluayBhIHtcclxuICAgIC8qICAgIGJhY2tncm91bmQ6ICM0OTQ4NDg7Ki9cclxuICAgIHdpZHRoOiA0MHB4O1xyXG4gICAgaGVpZ2h0OiA0MHB4O1xyXG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gICAgYm9yZGVyLXJhZGl1czogNTAlO1xyXG59XHJcblxyXG4jdG9wc29jaWFsLWxpbmsgYSBpIHtcclxuICAgIC8qICAgIGNvbG9yOiAjZmZmOyovXHJcbiAgICBmb250LXNpemU6IDIwcHg7XHJcbiAgICBwYWRkaW5nOiAxMHB4IDEycHg7XHJcblxyXG59XHJcblxyXG4vKiBGYWNlYm9vayAqL1xyXG4jYS1mYWNlYm9vay10IHtcclxuICAgIGJhY2tncm91bmQ6ICMzYjU5OTg7XHJcbn1cclxuXHJcbiNhLWZhY2Vib29rLXQ6aG92ZXIge1xyXG4gICAgYmFja2dyb3VuZDogI2ZmZmZmZjtcclxufVxyXG5cclxuI3RvcHNvY2lhbC1saW5rIC5mYS1mYWNlYm9vayB7XHJcbiAgICBjb2xvcjogI2ZmZmZmZjtcclxufVxyXG5cclxuI3RvcHNvY2lhbC1saW5rIC5mYS1mYWNlYm9vazpob3ZlciB7XHJcbiAgICBjb2xvcjogIzNiNTk5ODtcclxufVxyXG5cclxuLyogVHdpdHRlciAqL1xyXG4jYS10d2l0dGVyLXQge1xyXG4gICAgYmFja2dyb3VuZDogIzAwQUFFQztcclxufVxyXG5cclxuI2EtdHdpdHRlci10OmhvdmVyIHtcclxuICAgIGJhY2tncm91bmQ6ICNmZmZmZmY7XHJcbiAgICA7XHJcbn1cclxuXHJcbiN0b3Bzb2NpYWwtbGluayAuZmEtdHdpdHRlciB7XHJcbiAgICBjb2xvcjogI2ZmZmZmZjtcclxufVxyXG5cclxuI3RvcHNvY2lhbC1saW5rIC5mYS10d2l0dGVyOmhvdmVyIHtcclxuICAgIGNvbG9yOiAjMDBBQUVDO1xyXG59XHJcblxyXG5cclxuLyogTGlua2VkaW4gKi9cclxuI2EtbGlua2VkaW4tdCB7XHJcbiAgICBiYWNrZ3JvdW5kOiAjMDA3QUI5O1xyXG59XHJcblxyXG4jYS1saW5rZWRpbi10OmhvdmVyIHtcclxuICAgIC8qIGJhY2tncm91bmQ6ICMwMDdBQjk7ICovXHJcbiAgICBiYWNrZ3JvdW5kOiAjRjFGMkYyO1xyXG59XHJcblxyXG4jdG9wc29jaWFsLWxpbmsgLmZhLWxpbmtlZGluIHtcclxuICAgIGNvbG9yOiAjRjFGMkYyO1xyXG4gICAgO1xyXG59XHJcblxyXG4jdG9wc29jaWFsLWxpbmsgLmZhLWxpbmtlZGluOmhvdmVyIHtcclxuICAgIGNvbG9yOiAjMDA3QUI5O1xyXG59XHJcblxyXG5cclxuLyogR29vZ2xlICsgKi9cclxuI2EtZ29vZ2xlLXBsdXMtdCB7XHJcbiAgICBiYWNrZ3JvdW5kOiAjRDYyMjIzO1xyXG59XHJcblxyXG4jYS1nb29nbGUtcGx1cy10OmhvdmVyIHtcclxuICAgIGJhY2tncm91bmQ6ICNGRkZGRkY7XHJcbn1cclxuXHJcbiN0b3Bzb2NpYWwtbGluayAuZmEtZ29vZ2xlLXBsdXMge1xyXG4gICAgY29sb3I6ICNGRkZGRkY7XHJcbn1cclxuXHJcbiN0b3Bzb2NpYWwtbGluayAuZmEtZ29vZ2xlLXBsdXM6aG92ZXIge1xyXG4gICAgY29sb3I6ICNENjIyMjM7XHJcbn1cclxuXHJcbi8qIEVuZCBvZiBoZWFkZXIgQ1NTICAqL1xyXG5cclxuLyogU3RhcnQgQ1NTIGZvciBIZWFkZXIgcGFuZWxzICovXHJcblxyXG4ucGFuZWxzLWNvbnRhaW5lciB7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICBtYXJnaW46IDBweCBhdXRvIDEwcHg7XHJcbiAgICBwYWRkaW5nOiAwcHg7XHJcbiAgICAvKiBiYWNrZ3JvdW5kLWNvbG9yOiBncmVlbjsgKi9cclxuICAgIGhlaWdodDogNTAwcHg7XHJcbiAgICB3aWR0aDogMTAwJTtcclxuICAgIG92ZXJmbG93OiBoaWRkZW47XHJcbn1cclxuXHJcbi5wYW5lbHMtY29udGFpbmVyIHtcclxuICAgIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICB6LWluZGV4OiAwO1xyXG4gICAgbWluLWhlaWdodDogMTUwcHg7XHJcbn1cclxuXHJcblxyXG4ucGFuZWwge1xyXG4gICAgLyogYmFja2dyb3VuZC1jb2xvcjogY2hvY29sYXRlOyAqL1xyXG4gICAgLyogcGFkZGluZzogMjBweDsgKi9cclxuICAgIGZsb2F0OiBsZWZ0O1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgei1pbmRleDogMDtcclxuXHJcbiAgICBtaW4taGVpZ2h0OiAyNTBweDtcclxuXHJcbiAgICBmbGV4OiAxO1xyXG4gICAgLyogdHJhbnNmb3JtOiBza2V3WCgtMTBkZWcpOyAqL1xyXG4gICAgdHJhbnNpdGlvbjogMXM7XHJcbn1cclxuXHJcbi5wYW5lbC1pbm5lciB7XHJcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAvKiBib3JkZXI6IDNweCBzb2xpZCBncmVlbjsgKi9cclxuICAgIC8qIGJvcmRlcjogM3B4IHNvbGlkIHJnYmEoNCwgODIsIDI1MSwgMSk7ICovXHJcbiAgICBoZWlnaHQ6IDEwMCU7XHJcbiAgICB3aWR0aDogMTAwJTtcclxuICAgIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2tld1goLTEwZGVnKTtcclxuICAgIC1tcy10cmFuc2Zvcm06IHNrZXdYKC0xMGRlZyk7XHJcbiAgICB0cmFuc2Zvcm06IHNrZXdYKC0xMGRlZyk7XHJcbiAgICBib3gtc2hhZG93OiAwIDAgMCA1cHggcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjcpO1xyXG59XHJcblxyXG4ucGFuZWwtbWFpbmltYWdlLXdyYXBwZXIge1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgbWFyZ2luLWxlZnQ6IC01MHB4O1xyXG4gICAgbWFyZ2luLXJpZ2h0OiAtNTBweDtcclxuICAgIC8qIHRyYW5zZm9ybTogc2tld1goLTEwZGVnKTsgKi9cclxuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBza2V3WCgxMGRlZyk7XHJcbiAgICAtbXMtdHJhbnNmb3JtOiBza2V3WCgxMGRlZyk7XHJcbiAgICB0cmFuc2Zvcm06IHNrZXdYKDEwZGVnKTtcclxuXHJcbiAgICAvKiBiYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XHJcbiAgICAgIC13ZWJraXQtYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuOyAqL1xyXG5cclxuICAgIGhlaWdodDogMTAwJTtcclxuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcbn1cclxuXHJcbi5wYW5lbC1tYWluaW1hZ2Uge1xyXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgLyogdHJhbnNmb3JtOiBza2V3WCgtMTBkZWcpOyAqL1xyXG4gICAgdG9wOiAtMnB4O1xyXG4gICAgbGVmdDogLTJweDtcclxuICAgIHJpZ2h0OiAtMnB4O1xyXG4gICAgYm90dG9tOiAtMnB4O1xyXG59XHJcblxyXG5pbWcucGFuZWwtaW1hZ2Uge1xyXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgYm9yZGVyOiAwO1xyXG4gICAgYm9yZGVyLXN0eWxlOiBub25lO1xyXG4gICAgaGVpZ2h0OiAxMDAlO1xyXG4gICAgd2lkdGg6IDEwMCU7XHJcbiAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xyXG4gICAgYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xyXG4gICAgLXdlYmtpdC1iYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XHJcbiAgICAtd2Via2l0LXRyYW5zaXRpb246IDAuMnMgZWFzZS1vdXQ7XHJcbiAgICB0cmFuc2l0aW9uOiAwLjJzIGVhc2Utb3V0O1xyXG4gICAgbWF4LXdpZHRoOiAxMDAlO1xyXG59XHJcblxyXG5cclxuLmNvdmVyLWZpdC1pbWcge1xyXG4gICAgLW8tb2JqZWN0LWZpdDogY292ZXI7XHJcbiAgICBvYmplY3QtZml0OiBjb3ZlcjtcclxuICAgIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgICAvKiBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyOyAqL1xyXG59XHJcblxyXG4uYW5pbS0tYmx1ciB7XHJcbiAgICAtd2Via2l0LWZpbHRlcjogYmx1cig5cHgpO1xyXG4gICAgZmlsdGVyOiBibHVyKDlweCk7XHJcbiAgICAtd2Via2l0LXRyYW5zaXRpb246IG9wYWNpdHkgMC4xNXMgZWFzZS1vdXQ7XHJcbiAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuMTVzIGVhc2Utb3V0O1xyXG59XHJcblxyXG4ucGFuZWw6aG92ZXIgLnBhbmVsLW1haW5pbWFnZS1pbWcuYW5pbS0tYmx1ciB7XHJcbiAgICBvcGFjaXR5OiAwO1xyXG59XHJcblxyXG4ucGFuZWw6aG92ZXIge1xyXG4gICAgZmxleDogMS4yO1xyXG4gICAgLyogYmFja2dyb3VuZC1jb2xvcjogZ3JleTsgKi9cclxufVxyXG5cclxuLnBhbmVsLTAge1xyXG4gICAgbWFyZ2luLWxlZnQ6IC02NXB4O1xyXG59XHJcblxyXG4ucGFuZWwtMyB7XHJcbiAgICBtYXJnaW4tcmlnaHQ6IC02MHB4O1xyXG59XHJcblxyXG4ucGFuZWwtY2FwdGlvbiB7XHJcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICBib3R0b206IDkwcHg7XHJcbiAgICBjb2xvcjogI2ZmZmZmZjtcclxuICAgIHotaW5kZXg6IDE7XHJcbiAgICB3aWR0aDogMTAwJTtcclxufVxyXG5cclxuLnRleHQtcmlnaHQge1xyXG4gICAgdGV4dC1hbGlnbjogcmlnaHQ7XHJcbn1cclxuXHJcbi5wYW5lbC1jYXB0aW9uLnRleHQtcmlnaHQge1xyXG4gICAgcGFkZGluZy1yaWdodDogNTBweDtcclxufVxyXG5cclxuLmNzc3AtY2FwdC1hbmltYXRlZCAucC1vdmVybGF5IHtcclxuICAgIC13ZWJraXQtdHJhbnNpdGlvbi1kZWxheTogMC4xcztcclxuICAgIHRyYW5zaXRpb24tZGVsYXk6IDAuMXM7XHJcbn1cclxuXHJcbi5wLW92ZXJsYXktLWdyYWRpZW50IHtcclxuICAgIG9wYWNpdHk6IDAuNTtcclxuICAgIHRvcDogNTAlO1xyXG4gICAgYmFja2dyb3VuZDogLXdlYmtpdC1ncmFkaWVudChsaW5lYXIsXHJcbiAgICAgICAgICAgIGxlZnQgdG9wLFxyXG4gICAgICAgICAgICBsZWZ0IGJvdHRvbSxcclxuICAgICAgICAgICAgY29sb3Itc3RvcCgwJSwgcmdiYSgwLCAwLCAwLCAwKSksXHJcbiAgICAgICAgICAgIGNvbG9yLXN0b3AoMTAwJSwgcmdiYSgwLCAwLCAwLCAxKSkpO1xyXG4gICAgYmFja2dyb3VuZDogLXdlYmtpdC1saW5lYXItZ3JhZGllbnQodG9wLFxyXG4gICAgICAgICAgICByZ2JhKDAsIDAsIDAsIDApIDAlLFxyXG4gICAgICAgICAgICByZ2JhKDAsIDAsIDAsIDEpIDEwMCUpO1xyXG4gICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KHRvIGJvdHRvbSxcclxuICAgICAgICAgICAgcmdiYSgwLCAwLCAwLCAwKSAwJSxcclxuICAgICAgICAgICAgcmdiYSgwLCAwLCAwLCAxKSAxMDAlKTtcclxufVxyXG5cclxuLnAtb3ZlcmxheSB7XHJcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICBsZWZ0OiAwO1xyXG4gICAgdG9wOiAwO1xyXG4gICAgcmlnaHQ6IDA7XHJcbiAgICBib3R0b206IDA7XHJcbiAgICAtd2Via2l0LXRyYW5zaXRpb246IG9wYWNpdHkgMC4xNXMgZWFzZS1vdXQ7XHJcbiAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuMTVzIGVhc2Utb3V0O1xyXG59XHJcblxyXG4uY3NzcC1jYXB0LWFuaW1hdGVkIC5wYW5lbC10ZXh0IHtcclxuICAgIC13ZWJraXQtdHJhbnNpdGlvbi1kZWxheTogMC4ycztcclxuICAgIHRyYW5zaXRpb24tZGVsYXk6IDAuMnM7XHJcbn1cclxuXHJcbi5wYW5lbC10ZXh0IHtcclxuICAgIGZvbnQtc2l6ZTogMTZweDtcclxuICAgIGNvbG9yOiAjZmZmO1xyXG4gICAgZm9udC13ZWlnaHQ6IDMwMDtcclxuICAgIG1hcmdpbi10b3A6IDIwcHg7XHJcbiAgICBsaW5lLWhlaWdodDogMS42O1xyXG59XHJcblxyXG4vKiAuY3NzcC1jYXB0LWFuaW1hdGVkIC5wYW5lbC10aXRsZSB7XHJcbiAgICAgIC13ZWJraXQtdHJhbnNpdGlvbi1kZWxheTogMC4xcztcclxuICAgICAgdHJhbnNpdGlvbi1kZWxheTogMC4xcztcclxuICB9ICovXHJcblxyXG4ucGFuZWwtY29udGFpbmVyIC5wYW5lbC10aXRsZSB7XHJcbiAgICAtd2Via2l0LXRyYW5zaXRpb24tZGVsYXk6IDAuMXM7XHJcbiAgICB0cmFuc2l0aW9uLWRlbGF5OiAwLjFzO1xyXG59XHJcblxyXG4uZmYtYWx0ZXJuYXRpdmUsXHJcbi5rbC1mb250LWFsdCxcclxuLmtsLWZvbnRhZnRlci1hbHQ6YWZ0ZXIsXHJcbi5wYWdlLXRpdGxlLFxyXG4ucGFnZS1zdWJ0aXRsZSxcclxuLnN1YnRpdGxlLFxyXG4udG9wbmF2LWl0ZW0sXHJcbi50b3BuYXYgLm1lbnUtaXRlbT5hLFxyXG4uem4tc2lkZWJhci13aWRnZXQtdGl0bGUsXHJcbi5uaXZvLWNhcHRpb24sXHJcbi50aC13b3dzbGlkZXIgLndzLXRpdGxlLFxyXG4uY2FydC1jb250YWluZXIgLmNhcnRfbGlzdCBsaSBhOm5vdCgucmVtb3ZlKSB7XHJcbiAgICBmb250LWZhbWlseTogXCJMYXRvXCIsIEhlbHZldGljYSwgQXJpYWwsIHNhbnMtc2VyaWY7XHJcbn1cclxuXHJcbi5jYXB0aW9udGl0bGUtLXdiZyxcclxuLmNhcHRpb250aXRsZS0tZGJnIHtcclxuICAgIHBhZGRpbmc6IDEzcHggMHB4IDEzcHggNDVweDtcclxufVxyXG5cclxuLmNhcHRpb250aXRsZS0td2JnOmJlZm9yZSxcclxuLmNhcHRpb250aXRsZS0tZGJnOmJlZm9yZSB7XHJcbiAgICBjb250ZW50OiBcIlwiO1xyXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgaGVpZ2h0OiAxMDAlO1xyXG4gICAgYm9yZGVyLXJhZGl1czogNHB4O1xyXG4gICAgcGFkZGluZy1yaWdodDogMzVweDtcclxuICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgcmlnaHQ6IC0zNXB4O1xyXG4gICAgYm90dG9tOiAwO1xyXG4gICAgbGVmdDogMDtcclxuICAgIHRvcDogMDtcclxuICAgIHotaW5kZXg6IC0xO1xyXG4gICAgLXdlYmtpdC10cmFuc2Zvcm0tc3R5bGU6IHByZXNlcnZlLTNkO1xyXG4gICAgdHJhbnNmb3JtLXN0eWxlOiBwcmVzZXJ2ZS0zZDtcclxuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBza2V3KC0xMGRlZykgdHJhbnNsYXRlM2QoMCwgMCwgMCk7XHJcbiAgICAtbXMtdHJhbnNmb3JtOiBza2V3KC0xMGRlZykgdHJhbnNsYXRlM2QoMCwgMCwgMCk7XHJcbiAgICB0cmFuc2Zvcm06IHNrZXcoLTEyZGVnKSB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcclxuICAgIGJhY2tncm91bmQ6IC13ZWJraXQtZ3JhZGllbnQobGluZWFyLCBsZWZ0IHRvcCwgcmlnaHQgdG9wLCBjb2xvci1zdG9wKDAlLCByZ2JhKDAsIDAsIDAsIDApKSwgY29sb3Itc3RvcCg4MCUsIHJnYmEoMCwgMCwgMCwgMC40NSkpKTtcclxuICAgIGJhY2tncm91bmQ6IC13ZWJraXQtbGluZWFyLWdyYWRpZW50KGxlZnQsIHJnYmEoMCwgMCwgMCwgMCkgMCUsIHJnYmEoMCwgMCwgMCwgMC40NSkgODAlKTtcclxuICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCh0byByaWdodCwgcmdiYSgwLCAwLCAwLCAwKSAwJSwgcmdiYSgwLCAwLCAwLCAwLjQ1KSA4MCUpO1xyXG59XHJcblxyXG4ucGFuZWwtdGl0bGUge1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgZm9udC1zaXplOiAyOHB4O1xyXG4gICAgbGluZS1oZWlnaHQ6IDEuMztcclxuICAgIGZvbnQtd2VpZ2h0OiA2MDA7XHJcbiAgICBjb2xvcjogI2ZmZjtcclxuICAgIG1hcmdpbjogMDtcclxufVxyXG5cclxuLnBhbmVsLWJ0bi1hcmVhIHtcclxuICAgIGNsZWFyOiBib3RoO1xyXG4gICAgZmxvYXQ6IHJpZ2h0O1xyXG4gICAgbWFyZ2luLXRvcDogMzBweDtcclxuICAgIG1hcmdpbi1sZWZ0OiA1MHB4O1xyXG59XHJcblxyXG4ucGFuZWwtY29udGFpbmVyIC5wYW5lbC1idG4tYXJlYSB7XHJcbiAgICAtd2Via2l0LXRyYW5zaXRpb24tZGVsYXk6IDBzO1xyXG4gICAgdHJhbnNpdGlvbi1kZWxheTogMHM7XHJcbn1cclxuXHJcbi5idG4uYnRuLWZ1bGxjb2xvci5idG4tc2tld2VkLFxyXG4uYnRuLmJ0bi1mdWxsY29sb3IuYnRuLXNrZXdlZDpob3ZlciB7XHJcbiAgICBib3JkZXI6IDA7XHJcbiAgICBiYWNrZ3JvdW5kOiBub25lO1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgei1pbmRleDogMDtcclxufVxyXG5cclxuLmJ0bi5idG4tZnVsbGNvbG9yIHtcclxuICAgIGJhY2tncm91bmQtY29sb3I6ICMwMDYzOWQ7XHJcbn1cclxuXHJcbi5idG4uYnRuLWZ1bGxjb2xvcixcclxuLmJ0bi5idG4tZnVsbGNvbG9yOmZvY3VzIHtcclxuICAgIGJhY2tncm91bmQtY29sb3I6ICNjZDIxMjI7XHJcbiAgICBjb2xvcjogI2ZmZjtcclxufVxyXG5cclxuLmJ0bi5idG4tZnVsbHdoaXRlLFxyXG4uYnRuLmJ0bi1mdWxsYmxhY2ssXHJcbi5idG4uYnRuLWZ1bGxjb2xvcixcclxuLmJ0bi5idG4tZGVmYXVsdCxcclxuLmJ0bi5idG4tcHJpbWFyeSxcclxuLmJ0bi5idG4tc3VjY2VzcyxcclxuLmJ0bi5idG4taW5mbyxcclxuLmJ0bi5idG4td2FybmluZyxcclxuLmJ0bi5idG4tZGFuZ2VyLFxyXG4uYnRuLmJ0bi1saW5rIHtcclxuICAgIHRleHQtc2hhZG93OiBub25lO1xyXG4gICAgcGFkZGluZzogMTBweCAyMHB4O1xyXG4gICAgbGluZS1oZWlnaHQ6IDEuNjtcclxuICAgIC13ZWJraXQtYm94LXNoYWRvdzogbm9uZTtcclxuICAgIGJveC1zaGFkb3c6IG5vbmU7XHJcbiAgICBmb250LXNpemU6IDEzcHg7XHJcbiAgICBmb250LXdlaWdodDogNzAwO1xyXG4gICAgYm9yZGVyLXN0eWxlOiBzb2xpZDtcclxuICAgIGJvcmRlci1yYWRpdXM6IDNweDtcclxuICAgIC13ZWJraXQtdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAuMTVzIGVhc2Utb3V0O1xyXG4gICAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAuMTVzIGVhc2Utb3V0O1xyXG59XHJcblxyXG4uYnRuLmJ0bi1mdWxsd2hpdGUsXHJcbi5idG4uYnRuLWZ1bGxibGFjayxcclxuLmJ0bi5idG4tZnVsbGNvbG9yIHtcclxuICAgIGJvcmRlci13aWR0aDogMDtcclxufVxyXG5cclxuLmJ0bi5idG4tZnVsbGNvbG9yLFxyXG4uYnRuLmJ0bi1mdWxsY29sb3I6Zm9jdXMge1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2NkMjEyMjtcclxuICAgIGNvbG9yOiAjZmZmO1xyXG59XHJcblxyXG4uYnRuLmJ0bi1kYW5nZXIsXHJcbi5idG4uYnRuLWRlZmF1bHQsXHJcbi5idG4uYnRuLWZ1bGxibGFjayxcclxuLmJ0bi5idG4tZnVsbGNvbG9yLFxyXG4uYnRuLmJ0bi1mdWxsd2hpdGUsXHJcbi5idG4uYnRuLWluZm8sXHJcbi5idG4uYnRuLWxpbmssXHJcbi5idG4uYnRuLXByaW1hcnksXHJcbi5idG4uYnRuLXN1Y2Nlc3MsXHJcbi5idG4uYnRuLXdhcm5pbmcge1xyXG4gICAgdGV4dC1zaGFkb3c6IG5vbmU7XHJcbiAgICBwYWRkaW5nOiAxMHB4IDIwcHg7XHJcbiAgICBsaW5lLWhlaWdodDogMS42O1xyXG4gICAgYm94LXNoYWRvdzogbm9uZTtcclxuICAgIGZvbnQtc2l6ZTogMTNweDtcclxuICAgIGZvbnQtd2VpZ2h0OiA3MDA7XHJcbiAgICBib3JkZXItc3R5bGU6IHNvbGlkO1xyXG4gICAgYm9yZGVyLXJhZGl1czogM3B4O1xyXG4gICAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAuMTVzIGVhc2Utb3V0O1xyXG59XHJcblxyXG4uYnRuLmJ0bi1mdWxsYmxhY2ssXHJcbi5idG4uYnRuLWZ1bGxjb2xvcixcclxuLmJ0bi5idG4tZnVsbHdoaXRlIHtcclxuICAgIGJvcmRlci13aWR0aDogMDtcclxufVxyXG5cclxuLmJ0biB7XHJcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xyXG4gICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcclxuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XHJcbiAgICAtbXMtdG91Y2gtYWN0aW9uOiBtYW5pcHVsYXRpb247XHJcbiAgICB0b3VjaC1hY3Rpb246IG1hbmlwdWxhdGlvbjtcclxuICAgIGN1cnNvcjogcG9pbnRlcjtcclxuICAgIGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7XHJcbiAgICBib3JkZXI6IDFweCBzb2xpZCB0cmFuc3BhcmVudDtcclxuICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XHJcbiAgICBwYWRkaW5nOiA2cHggMTJweDtcclxuICAgIGZvbnQtc2l6ZTogMTRweDtcclxuICAgIGxpbmUtaGVpZ2h0OiAxLjQyODU3MTQzO1xyXG4gICAgYm9yZGVyLXJhZGl1czogNHB4O1xyXG4gICAgLXdlYmtpdC11c2VyLXNlbGVjdDogbm9uZTtcclxuICAgIC1tb3otdXNlci1zZWxlY3Q6IG5vbmU7XHJcbiAgICAtbXMtdXNlci1zZWxlY3Q6IG5vbmU7XHJcbiAgICB1c2VyLXNlbGVjdDogbm9uZTtcclxufVxyXG5cclxuLmJ0bi5idG4tZnVsbGNvbG9yLmJ0bi1za2V3ZWQ6YmVmb3JlIHtcclxuICAgIGNvbnRlbnQ6ICcnO1xyXG4gICAgYm9yZGVyLXJhZGl1czogNHB4O1xyXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgdG9wOiAwO1xyXG4gICAgbGVmdDogMDtcclxuICAgIHJpZ2h0OiAwO1xyXG4gICAgYm90dG9tOiAwO1xyXG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNrZXdYKC04ZGVnKTtcclxuICAgIHRyYW5zZm9ybTogc2tld1goLThkZWcpO1xyXG4gICAgLXdlYmtpdC10cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIC4ycyBlYXNlLWluLW91dDtcclxuICAgIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgLjJzIGVhc2UtaW4tb3V0O1xyXG4gICAgei1pbmRleDogLTE7XHJcbn1cclxuXHJcbi5idG4uYnRuLWZ1bGxjb2xvci5idG4tc2tld2VkOmJlZm9yZSB7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjY2QyMTIyO1xyXG59XHJcblxyXG4uYnRuLmJ0bi1mdWxsY29sb3IuYnRuLXNrZXdlZDpiZWZvcmUge1xyXG4gICAgY29udGVudDogXCJcIjtcclxuICAgIGJvcmRlci1yYWRpdXM6IDRweDtcclxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgIHRvcDogMDtcclxuICAgIGxlZnQ6IDA7XHJcbiAgICByaWdodDogMDtcclxuICAgIGJvdHRvbTogMDtcclxuICAgIHRyYW5zZm9ybTogc2tld1goLThkZWcpO1xyXG4gICAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAuMnMgZWFzZS1pbi1vdXQ7XHJcbiAgICB6LWluZGV4OiAtMTtcclxufVxyXG5cclxuLnBhbmVsLWJ0bi1hcmVhIC5idG4ge1xyXG4gICAgbWFyZ2luLWxlZnQ6IDIwcHg7XHJcbiAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xyXG59XHJcblxyXG4uY29udHJhY3QtbWFpbi10aXRsZSB7XHJcbiAgICBmb250LXNpemU6IDIuMjIyMjIyMjIyMnJlbTtcclxuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgIG1hcmdpbi1ib3R0b206IDE2cHg7XHJcbn1cclxuXHJcblxyXG4vKiBDU1MgZm9yIGFjdGlvbiBib3ggKi9cclxuLmFjdGlvbl9ib3gge1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzAwNjM5ZDtcclxuICAgIHBhZGRpbmc6IDI0cHggMDtcclxuICAgIGNvbG9yOiAjZmZmO1xyXG4gICAgYm9yZGVyLXRvcDogMnB4IHNvbGlkICNmZmY7XHJcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2ZmZjtcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgIC8qIGJhY2tncm91bmQtY29sb3I6ICNDRDIxMjI7ICovXHJcbiAgICBjbGVhcjogYm90aDtcclxufVxyXG5cclxuLmFjdGlvbl9ib3hbZGF0YS1hcnJvd3Bvcz1jZW50ZXJdOmFmdGVyLFxyXG4uYWN0aW9uX2JveFtkYXRhLWFycm93cG9zPWNlbnRlcl06YmVmb3JlIHtcclxuICAgIG1hcmdpbi1sZWZ0OiAtN3B4O1xyXG59XHJcblxyXG4uYWN0aW9uX2JveDpiZWZvcmUsXHJcbi5hY3Rpb25fYm94OmFmdGVyIHtcclxuICAgIGNvbnRlbnQ6IFwiXCI7XHJcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICBsZWZ0OiA1MCU7XHJcbiAgICBib3R0b206IC0xNHB4O1xyXG4gICAgbWFyZ2luLWxlZnQ6IC0yNSU7XHJcbiAgICBib3JkZXItcmFkaXVzOiAzcHg7XHJcbiAgICBib3JkZXI6IDhweCBzb2xpZCB0cmFuc3BhcmVudDtcclxuICAgIGJvcmRlci10b3Atd2lkdGg6IDdweDtcclxuICAgIGJvcmRlci10b3AtY29sb3I6ICNDRDIxMjI7XHJcbiAgICBib3JkZXItdG9wLWNvbG9yOiAjMDA2MzlkO1xyXG59XHJcblxyXG4vKiAuYWN0aW9uX2JveF9pbm5lciB7XHJcbiAgfSAqL1xyXG5cclxuLmFjdGlvbl9ib3hfY29udGVudCB7XHJcbiAgICBtYXgtd2lkdGg6IDExNzBweDtcclxuICAgIG1hcmdpbjogMCBhdXRvO1xyXG4gICAgcGFkZGluZzogMCAxNXB4O1xyXG4gICAgd2lkdGg6IDEwMCU7XHJcbn1cclxuXHJcbi8qIC5hY3Rpb25fYm94LWNvbnRlbnQge1xyXG4gICAgbWF4LXdpZHRoOiAxMTcwcHg7XHJcbiAgICBtYXJnaW46IDAgYXV0bztcclxuICAgIHBhZGRpbmc6IDAgMTVweDtcclxuICAgIHdpZHRoOiAxMDAlO1xyXG4gIH0gKi9cclxuXHJcbi5hY3Rpb25fYm94LXRpdGxlIHtcclxuICAgIG1hcmdpbjogMTBweCAwO1xyXG4gICAgZm9udC13ZWlnaHQ6IDIwMDtcclxuICAgIGZvbnQtc2l6ZTogMjRweDtcclxuICAgIGxpbmUtaGVpZ2h0OiAxLjQ7XHJcbn1cclxuXHJcbi5idG4uYnRuLWZ1bGx3aGl0ZSxcclxuLmJ0bi5idG4tZnVsbGJsYWNrLFxyXG4uYnRuLmJ0bi1mdWxsY29sb3IsXHJcbi5idG4uYnRuLWRlZmF1bHQsXHJcbi5idG4uYnRuLXByaW1hcnksXHJcbi5idG4uYnRuLXN1Y2Nlc3MsXHJcbi5idG4uYnRuLWluZm8sXHJcbi5idG4uYnRuLXdhcm5pbmcsXHJcbi5idG4uYnRuLWRhbmdlcixcclxuLmJ0bi5idG4tbGluayB7XHJcbiAgICB0ZXh0LXNoYWRvdzogbm9uZTtcclxuICAgIHBhZGRpbmc6IDEwcHggMjBweDtcclxuICAgIGxpbmUtaGVpZ2h0OiAxLjY7XHJcbiAgICAtd2Via2l0LWJveC1zaGFkb3c6IG5vbmU7XHJcbiAgICBib3gtc2hhZG93OiBub25lO1xyXG4gICAgZm9udC1zaXplOiAxM3B4O1xyXG4gICAgZm9udC13ZWlnaHQ6IDcwMDtcclxuICAgIGJvcmRlci1zdHlsZTogc29saWQ7XHJcbiAgICBib3JkZXItcmFkaXVzOiAzcHg7XHJcbiAgICAtd2Via2l0LXRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgLjE1cyBlYXNlLW91dDtcclxuICAgIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgLjE1cyBlYXNlLW91dDtcclxufVxyXG5cclxuLmJ0bi5idG4tZnVsbHdoaXRlXHJcblxyXG4vKiwgIC5idG4uYnRuLWZ1bGxibGFjaywgLmJ0bi5idG4tZnVsbGNvbG9yICovXHJcbiAgICB7XHJcbiAgICBib3JkZXItd2lkdGg6IDA7XHJcbn1cclxuXHJcbi5idG4uYnRuLWZ1bGx3aGl0ZSB7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xyXG4gICAgY29sb3I6ICMyNDI0MjQgIWltcG9ydGFudDtcclxufVxyXG5cclxuLyogLmJ0bi5idG4tZGFuZ2VyLCAuYnRuLmJ0bi1kZWZhdWx0LCAuYnRuLmJ0bi1mdWxsYmxhY2ssIC5idG4uYnRuLWZ1bGxjb2xvciwgKi9cclxuLmJ0bi5idG4tZnVsbHdoaXRlXHJcblxyXG4vKiAsIC5idG4uYnRuLWluZm8sIC5idG4uYnRuLWxpbmssIC5idG4uYnRuLXByaW1hcnksIC5idG4uYnRuLXN1Y2Nlc3MsIC5idG4uYnRuLXdhcm5pbmcgKi9cclxuICAgIHtcclxuICAgIHRleHQtc2hhZG93OiBub25lO1xyXG4gICAgcGFkZGluZzogMTBweCAyMHB4O1xyXG4gICAgbGluZS1oZWlnaHQ6IDEuNjtcclxuICAgIGJveC1zaGFkb3c6IG5vbmU7XHJcbiAgICBmb250LXNpemU6IDEzcHg7XHJcbiAgICBmb250LXdlaWdodDogNzAwO1xyXG4gICAgYm9yZGVyLXN0eWxlOiBzb2xpZDtcclxuICAgIGJvcmRlci1yYWRpdXM6IDNweDtcclxuICAgIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgLjE1cyBlYXNlLW91dDtcclxufVxyXG5cclxuLyogLmJ0bi5idG4tZnVsbGJsYWNrLCAuYnRuLmJ0bi1mdWxsY29sb3IsICAqL1xyXG4uYnRuLmJ0bi1mdWxsd2hpdGUge1xyXG4gICAgYm9yZGVyLXdpZHRoOiAwO1xyXG59XHJcblxyXG5cclxuXHJcbi5idG4uYnRuLWZ1bGx3aGl0ZSB7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xyXG4gICAgY29sb3I6ICMyNDI0MjQgIWltcG9ydGFudDtcclxufVxyXG5cclxuLmJ0bi5idG4tZnVsbHdoaXRlLmJ0bi1za2V3ZWRcclxuXHJcbi8qICwgLmJ0bi5idG4tZnVsbGJsYWNrLmJ0bi1za2V3ZWQsIC5idG4uYnRuLWZ1bGxjb2xvci5idG4tc2tld2VkLCAuYnRuLmJ0bi1mdWxsd2hpdGUuYnRuLXNrZXdlZDpob3ZlciwgLmJ0bi5idG4tZnVsbGJsYWNrLmJ0bi1za2V3ZWQ6aG92ZXIsIC5idG4uYnRuLWZ1bGxjb2xvci5idG4tc2tld2VkOmhvdmVyICovXHJcbiAgICB7XHJcbiAgICBib3JkZXI6IDA7XHJcbiAgICBiYWNrZ3JvdW5kOiBub25lO1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgei1pbmRleDogMDtcclxufVxyXG5cclxuXHJcbi5idG4uYnRuLWZ1bGx3aGl0ZS5idG4tc2tld2VkOmJlZm9yZSB7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xyXG59XHJcblxyXG4uYnRuLmJ0bi1mdWxsd2hpdGUuYnRuLXNrZXdlZDpiZWZvcmUsXHJcbi5idG4uYnRuLWZ1bGxibGFjay5idG4tc2tld2VkOmJlZm9yZSxcclxuLmJ0bi5idG4tZnVsbGNvbG9yLmJ0bi1za2V3ZWQ6YmVmb3JlIHtcclxuICAgIGNvbnRlbnQ6ICcnO1xyXG4gICAgYm9yZGVyLXJhZGl1czogNHB4O1xyXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgdG9wOiAwO1xyXG4gICAgbGVmdDogMDtcclxuICAgIHJpZ2h0OiAwO1xyXG4gICAgYm90dG9tOiAwO1xyXG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNrZXdYKC04ZGVnKTtcclxuICAgIHRyYW5zZm9ybTogc2tld1goLThkZWcpO1xyXG4gICAgLXdlYmtpdC10cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIC4ycyBlYXNlLWluLW91dDtcclxuICAgIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgLjJzIGVhc2UtaW4tb3V0O1xyXG4gICAgei1pbmRleDogLTE7XHJcbn1cclxuXHJcbi5idG4uYnRuLWZ1bGx3aGl0ZS5idG4tc2tld2VkOmJlZm9yZSB7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xyXG59XHJcblxyXG4uYnRuLmJ0bi1mdWxsYmxhY2suYnRuLXNrZXdlZDpiZWZvcmUsXHJcbi5idG4uYnRuLWZ1bGxjb2xvci5idG4tc2tld2VkOmJlZm9yZSxcclxuLmJ0bi5idG4tZnVsbHdoaXRlLmJ0bi1za2V3ZWQ6YmVmb3JlIHtcclxuICAgIGNvbnRlbnQ6IFwiXCI7XHJcbiAgICBib3JkZXItcmFkaXVzOiA0cHg7XHJcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICB0b3A6IDA7XHJcbiAgICBsZWZ0OiAwO1xyXG4gICAgcmlnaHQ6IDA7XHJcbiAgICBib3R0b206IDA7XHJcbiAgICB0cmFuc2Zvcm06IHNrZXdYKC04ZGVnKTtcclxuICAgIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgLjJzIGVhc2UtaW4tb3V0O1xyXG4gICAgei1pbmRleDogLTE7XHJcbn1cclxuXHJcbiAgLyogQ1NTIGZvciB0aGUgZm9vdGVyICovXHJcbiAgZm9vdGVyIHtcclxuICAgIG1hcmdpbi10b3A6IDVweDtcclxuICAgIGJhY2tncm91bmQ6ICMyMjI7XHJcbiAgIH1cclxuICAgXHJcbiAgIFxyXG4gICAuZm9vdGVyLXRvcCB7XHJcbiAgICAgLypiYWNrZ3JvdW5kOiAjMTExOyovXHJcbiAgICAgICAgIGJhY2tncm91bmQ6ICMwMDAwZmY7XHJcbiAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICMwMDYzOWQ7XHJcbiAgICAgICAgIHBhZGRpbmc6IDMwcHggMHB4O1xyXG4gICAgIH1cclxuICAgXHJcbiAgICAgLyogUHJlbWllciBibG9jIGR1IGZvb3RlciAqL1xyXG4gICBcclxuICAgICAuc2VnbWVudC1vbmUgaDMge1xyXG4gICAgICAgZm9udC1mYW1pbHk6IENvdXJnZXR0ZTtcclxuICAgICAgIGNvbG9yOiAjZmZmO1xyXG4gICAgICAgbGV0dGVyLXNwYWNpbmc6IDNweDtcclxuICAgICAgIC8qIG1hcmdpbjogMTBweCAwcHg7ICovXHJcbiAgICAgICBtYXJnaW4tYm90dG9tOiAxNXB4O1xyXG4gICB9XHJcblxyXG5cclxuLnNlZ21lbnQtb25lIHAge1xyXG4gICAgY29sb3I6ICNlZWU7XHJcbn1cclxuXHJcbi5zZWdtZW50LW9uZSB1bCB7XHJcbiAgbWFyZ2luOiAwcHg7XHJcbiAgcGFkZGluZzogMHB4O1xyXG4gIGxpc3Qtc3R5bGU6IG5vbmU7XHJcbn1cclxuXHJcbi5zZWdtZW50LW9uZSB1bCBsaSB7XHJcbiAgLyogYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4zKTsgKi9cclxuICBsaW5lLWhlaWdodDogMzVweDtcclxufVxyXG5cclxuLnNlZ21lbnQtb25lIHVsIGxpIGEge1xyXG4vKiAgICBjb2xvcjogIzk5OTsqL1xyXG4gIGNvbG9yOiAjZWVlO1xyXG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcclxufVxyXG5cclxuXHJcbiAgLyogRGV1eGnDqG1lIGJsb2MgZHUgZm9vdGVyICovXHJcbiAgLnNlZ21lbnQtdHdvIGgyIHtcclxuICAgIGNvbG9yOiAjZmZmO1xyXG4gICAgZm9udC1mYW1pbHk6IFBvcHBpbnM7XHJcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xyXG4gICBcclxuICB9XHJcbiAgXHJcbiAgLnNlZ21lbnQtdHdvIHVsIHtcclxuICAgIG1hcmdpbjogMHB4O1xyXG4gICAgcGFkZGluZzogMHB4O1xyXG4gICAgbGlzdC1zdHlsZTogbm9uZTtcclxuICB9XHJcbiAgXHJcbiAgLnNlZ21lbnQtdHdvIHVsIGxpIHtcclxuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMyk7XHJcbiAgICBsaW5lLWhlaWdodDogMzBweDtcclxuICB9XHJcbiAgXHJcbiAgLnNlZ21lbnQtdHdvIHVsIGxpIGEge1xyXG4gIC8qICAgIGNvbG9yOiAjOTk5OyovXHJcbiAgICBjb2xvcjogI2VlZTtcclxuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcclxuICB9XHJcblxyXG4gIC5zZWdtZW50LXR3byBoMjpiZWZvcmUge1xyXG4gICAgY29udGVudDogJ3wnO1xyXG4gICAgcGFkZGluZy1yaWdodDogMTBweDtcclxuICAvKiAgICBjb2xvcjogI0M2NTAzOTsqL1xyXG4gICAgY29sb3I6IHJlZDsgICAgXHJcbiAgfVxyXG4gIFxyXG4gICAgLyogVHJvaXNpw6htZSBibG9jIGR1IGZvb3RlciAqL1xyXG4gIFxyXG4gIC5zZWdtZW50LXRocmVlIGgyIHtcclxuICAgIGNvbG9yOiAjZmZmO1xyXG4gICAgZm9udC1mYW1pbHk6IFBvcHBpbnM7XHJcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xyXG4gICBcclxuICB9XHJcbiAgXHJcbiAgLnNlZ21lbnQtdGhyZWUgaDI6YmVmb3JlIHtcclxuICAgIGNvbnRlbnQ6ICd8JztcclxuICAgIHBhZGRpbmctcmlnaHQ6IDEwcHg7XHJcbiAgICBjb2xvcjogI0M2NTAzOTtcclxuICAgIFxyXG4gICAgXHJcbiAgfVxyXG5cclxuICAuc2VnbWVudC10aHJlZSBhIHtcclxuICAgIC8qICAgIGJhY2tncm91bmQ6ICM0OTQ4NDg7Ki9cclxuICAgICAgd2lkdGg6IDQwcHg7XHJcbiAgICAgIGhlaWdodDogNDBweDtcclxuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gICAgICBib3JkZXItcmFkaXVzOiA1MCU7XHJcbiAgICB9XHJcbiAgICBcclxuICAgIC5zZWdtZW50LXRocmVlIGEgaSB7XHJcbiAgICAvKiAgICBjb2xvcjogI2ZmZjsqL1xyXG4gICAgICBmb250LXNpemU6IDIwcHg7XHJcbiAgICAgIHBhZGRpbmc6IDEwcHggMTJweDtcclxuICAgICAgXHJcbiAgICB9XHJcbiAgICBcclxuICAgIC5zZWdtZW50LXRocmVlIHAge1xyXG4gICAgICBjb2xvcjogI2VlZTtcclxuICAgIH1cclxuXHJcbiAgLyogUXVhdHJpw6htZSBibG9jIGR1IGZvb3RlciAqL1xyXG5cclxuICAuc2VnbWVudC1mb3VyIGgyIHtcclxuICAgIGNvbG9yOiAjZmZmO1xyXG4gICAgZm9udC1mYW1pbHk6IFBvcHBpbnM7XHJcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xyXG4gICBcclxuICB9XHJcbiAgXHJcbiAgLnNlZ21lbnQtZm91ciBoMjpiZWZvcmUge1xyXG4gICAgY29udGVudDogJ3wnO1xyXG4gICAgcGFkZGluZy1yaWdodDogMTBweDtcclxuICAgIGNvbG9yOiAjQzY1MDM5O1xyXG4gICAgICBcclxuICB9XHJcbiAgXHJcbiAgLnNlZ21lbnQtZm91ciBmb3JtIGlucHV0W3R5cGU9c3VibWl0XSxcclxuICAuc2VnbWVudC1mb3VyIGZvcm0gYnV0dG9uW3R5cGU9c3VibWl0XSB7XHJcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gIH0gXHJcbiAgICAgXHJcbiAgLnNlZ21lbnQtZm91ciBmb3JtIGlucHV0W3R5cGU9c3VibWl0XSxcclxuICAuc2VnbWVudC1mb3VyIGZvcm0gYnV0dG9uW3R5cGU9c3VibWl0XSB7XHJcbiAgICBiYWNrZ3JvdW5kOiAgI0M2NTAzOTtcclxuICAgIGJvcmRlcjogbm9uZTtcclxuICAgIHBhZGRpbmc6IDNweCAxNXB4O1xyXG4gICAgbWFyZ2luLWxlZnQ6IC03MHB4O1xyXG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcclxuICAgIC8qIGRpc3BsYXk6IGlubGluZS1ibG9jazsgKi9cclxuICB9XHJcblxyXG4gIC8qIGZvb3RlciAuZm9vdGVyLXRvcCAucm93ICAqLy5zZWdtZW50LWZvdXIgZm9ybSAucm93IHtcclxuICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xyXG4gIH1cclxuICBcclxuICAuc2VnbWVudC1mb3VyIGZvcm0gaW5wdXRbdHlwZT1zdWJtaXRdLFxyXG4gIC5zZWdtZW50LWZvdXIgZm9ybSBidXR0b25bdHlwZT1zdWJtaXRdIHtcclxuICAgIG1hcmdpbi1sZWZ0OiAwO1xyXG4gIH1cclxuICBcclxuICAuc2VnbWVudC1mb3VyIHAge1xyXG4gICAgY29sb3I6ICNlZWU7XHJcbiAgfVxyXG5cclxuIC8qIEJhcnJlIGRlIHRleHRlIGVuIGRlc3NvdXMgZHUgZm9vdGVyICovXHJcbiAuZm9vdGVyLWJvdHRvbS10ZXh0IHtcclxuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAvKiAgICBiYWNrZ3JvdW5kOiAjMDAwOyovXHJcbiAgICAvKiBiYWNrZ3JvdW5kOiAjMDAwMDhiOyAqL1xyXG4gICAgYmFja2dyb3VuZDogcmdiKDM5LCAzNCwgMzQpO1xyXG4gICAgbGluZS1oZWlnaHQ6IDc1cHg7XHJcbiAgfVxyXG4gIFxyXG4gIC5mb290ZXItYm90dG9tLXRleHQgcCB7XHJcbiAgICBtYXJnaW46IDBweDtcclxuICAgIHBhZGRpbmctdG9wOiAxMHB4O1xyXG4gICAgIHBhZGRpbmctYm90dG9tOiA1cHhcclxuICAgIFxyXG4gIH1cclxuXHJcbi8qIEZhY2Vib29rICovXHJcbiNhLWZhY2Vib29rIHtcclxuICAgIGJhY2tncm91bmQ6ICNmZmY7XHJcbiAgfVxyXG4gIFxyXG4gICNhLWZhY2Vib29rOmhvdmVyIHtcclxuICAgIGJhY2tncm91bmQ6ICMwMDAwOGI7XHJcbiAgfVxyXG4gIFxyXG4gIC5mYS1mYWNlYm9vayB7XHJcbiAgICBjb2xvcjogIzAwMDA4YjtcclxuICB9XHJcbiAgXHJcbiAgLmZhLWZhY2Vib29rOmhvdmVyIHtcclxuICAgIGNvbG9yOiAjZmZmO1xyXG4gIH1cclxuICBcclxuICAvKiBUd2l0dGVyICovXHJcbiAgI2EtdHdpdHRlciB7XHJcbiAgICBiYWNrZ3JvdW5kOiAjZmZmO1xyXG4gIH1cclxuICBcclxuICAjYS10d2l0dGVyOmhvdmVyIHtcclxuICAgIGJhY2tncm91bmQ6ICMwMEFBRUM7XHJcbiAgfVxyXG4gIFxyXG4gIC5mYS10d2l0dGVyIHtcclxuICAgIGNvbG9yOiAjMDBBQUVDO1xyXG4gIH1cclxuICBcclxuICAuZmEtdHdpdHRlcjpob3ZlciB7XHJcbiAgICBjb2xvcjogI2ZmZjtcclxuICB9XHJcbiAgXHJcbiAgLyogTGlua2VkaW4gKi9cclxuICAjYS1saW5rZWRpbiB7XHJcbiAgICBiYWNrZ3JvdW5kOiAjRjFGMkYyO1xyXG4gIH1cclxuICBcclxuICAjYS1saW5rZWRpbjpob3ZlciB7XHJcbiAgICBiYWNrZ3JvdW5kOiAjMDA3QUI5O1xyXG4gIH1cclxuICBcclxuICAuZmEtbGlua2VkaW4ge1xyXG4gICAgY29sb3I6ICMwMDdBQjk7XHJcbiAgfVxyXG4gIFxyXG4gIC5mYS1saW5rZWRpbjpob3ZlciB7XHJcbiAgICBjb2xvcjogI0YxRjJGMjtcclxuICB9XHJcbiAgXHJcbiAgXHJcbiAgLyogR29vZ2xlICsgKi9cclxuICAjYS1nb29nbGUtcGx1cyB7XHJcbiAgICBiYWNrZ3JvdW5kOiAjRkZGRkZGO1xyXG4gIH1cclxuICBcclxuICAjYS1nb29nbGUtcGx1czpob3ZlciB7XHJcbiAgICBiYWNrZ3JvdW5kOiAjRDYyMjIzO1xyXG4gIH1cclxuICBcclxuICAuZmEtZ29vZ2xlLXBsdXMge1xyXG4gICAgY29sb3I6ICNENjIyMjM7XHJcbiAgfVxyXG4gIFxyXG4gIC5mYS1nb29nbGUtcGx1czpob3ZlciB7XHJcbiAgICBjb2xvcjogI0ZGRkZGRjtcclxuICB9XHJcbiAgXHJcbiAgXHJcbiAgLyogSW5zdGFncmFtICovXHJcbiAgI2EtaW5zdGFncmFtIHtcclxuICAgIGJhY2tncm91bmQ6ICNGRkZGRkY7XHJcbiAgfVxyXG4gIFxyXG4gICNhLWluc3RhZ3JhbTpob3ZlciB7XHJcbiAgICBiYWNrZ3JvdW5kOiAjREYzMDY5O1xyXG4gIH1cclxuICBcclxuICAuZmEtaW5zdGFncmFtIHtcclxuICAgIGNvbG9yOiAjREYzMDY5O1xyXG4gIH1cclxuICBcclxuICAuZmEtaW5zdGFncmFtOmhvdmVyIHtcclxuICAgIGNvbG9yOiAjRkZGRkZGO1xyXG4gIH1cclxuICBcclxuICAua2wtc2xpZGVzaG93LCAucGFnZS1zdWJoZWFkZXIge1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgdG9wOiAwO1xyXG4gICAgei1pbmRleDogMDtcclxuICAgIHdpZHRoOiAxMDAlO1xyXG4gIH1cclxuICAucGFnZS1zdWJoZWFkZXIge1xyXG4gICAgLyogbWluLWhlaWdodDogMzAwcHg7ICovXHJcbiAgICBoZWlnaHQ6IDMwMHB4O1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzA2NmZkOTtcclxuICB9XHJcbiAgXHJcbiAgLnBhZ2Utc3ViaGVhZGVyLmNvbnRhY3Qtc3ViaGVhZGVyLFxyXG4gIC5wYWdlLXN1YmhlYWRlci5zbWFsbC1zdWJoZWFkZXIge1xyXG4gICAgaGVpZ2h0OiAxNTBweDtcclxuICB9XHJcbiAgXHJcbiAgI2NvbnRlbnQge1xyXG4gICAgcGFkZGluZy10b3A6IDRweDtcclxuICAgIHotaW5kZXg6IDE7XHJcbiAgfVxyXG5cclxuLyogICAucGFnZS1zdWJoZWFkZXIuaG9zdGluZyAuYmdiYWNrIHtcclxuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCguLi9pbWFnZXMvaG9zdGluZy1iYW5uZXIuanBnKTtcclxuICB9XHJcbiAgXHJcbiAgLnBhZ2Utc3ViaGVhZGVyLmRldiAuYmdiYWNrIHtcclxuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCguLi8uLi9pbWcvZGV2LWJhbm5lcjEuanBnKTtcclxuICB9XHJcbiAgXHJcbiAgLnBhZ2Utc3ViaGVhZGVyLnByb2plY3QgLmJnYmFjayB7XHJcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoLi4vLi4vaW1nL3Byb2plY3QtYmFubmVyLmpwZyk7XHJcbiAgfVxyXG4gIFxyXG4gIC5wYWdlLXN1YmhlYWRlci5kaXZlcnMgLmJnYmFjayB7XHJcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoLi4vLi4vaW1nL3Byb2plY3QtYmFubmVyLmpwZyk7XHJcbiAgfVxyXG4gIFxyXG4gIC5wYWdlLXN1YmhlYWRlci5hYm91dCAuYmdiYWNrIHtcclxuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCguLi8uLi9pbWcvYWJvdXQtYmFubmVyLmpwZyk7XHJcbiAgfSAqL1xyXG5cclxuICAucGFnZS1zdWJoZWFkZXIuaG9zdGluZyAuYmdiYWNrLFxyXG4gIC5wYWdlLXN1YmhlYWRlci5kZXYgLmJnYmFjayxcclxuICAucGFnZS1zdWJoZWFkZXIucHJvamVjdCAuYmdiYWNrLFxyXG4gIC5wYWdlLXN1YmhlYWRlci5kaXZlcnMgLmJnYmFjayxcclxuICAucGFnZS1zdWJoZWFkZXIuYWJvdXQgLmJnYmFjayB7XHJcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcclxuICAgIGJhY2tncm91bmQtYXR0YWNobWVudDogc2Nyb2xsO1xyXG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyIGNlbnRlcjtcclxuICAgIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XHJcbiAgXHJcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICBsZWZ0OiAwO1xyXG4gICAgdG9wOiAwO1xyXG4gICAgcmlnaHQ6IDA7XHJcbiAgICBib3R0b206IDA7XHJcbiAgICB6LWluZGV4OiAwO1xyXG4gICAgLyogYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcclxuICAgIGJhY2tncm91bmQtcG9zaXRpb246IDUwJTsgKi9cclxuICB9XHJcblxyXG4vKiAucGFnZS1zdWJoZWFkZXItYmcgKi9cclxuXHJcbi5jYXJkLWltZy10b3Age1xyXG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gIH1cclxuICBcclxuICBcclxuICAjcm9ja2V0LW1pc3Npb24tbXN2ZywgXHJcbiAgI2V5ZS12aXNpb24tbXN2ZywgXHJcbiAgI2FjdGl2aXRpZXMtYmFnc3ZnLFxyXG4gICN2aXNpb24tbXN2Z1xyXG4gIC8qICNib2RpZXMgKi8ge1xyXG4gICAgZmlsbDogIzEzM2JiZDtcclxuICAgIHdpZHRoOiA3NXB4O1xyXG4gICAgaGVpZ2h0OiA3NXB4O1xyXG4gICAgbWFyZ2luLXRvcDogMjBweDtcclxuICB9XHJcbiAgXHJcbiAgI3JvY2tldC1taXNzaW9uLW1zdmcge1xyXG4gICAgdHJhbnNmb3JtOiByb3RhdGVaKDQ1ZGVnKTtcclxuICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGVaKDQ1ZGVnKTtcclxuICAgIC1tb3otdHJhbnNmb3JtOiByb3RhdGVaKDQ1ZGVnKTtcclxuICAgIC1tcy10cmFuc2Zvcm06IHJvdGF0ZVooNDVkZWcpO1xyXG4gICAgLW8tdHJhbnNmb3JtOiByb3RhdGVaKDQ1ZGVnKTtcclxuICB9XHJcblxyXG4gIC5zdmctZmlsbENvbG9yIHtcclxuICAgIGNvbG9yOiAjMTMzYmJkO1xyXG4gIH1cclxuICBcclxuICAjdmFsdWVzLW9uLWhhbmQtbXN2ZyxcclxuICAjbWFnbmlmeWluZy1nbGFzcy1tc3ZnLFxyXG4gICNyZXNwZWN0LW1zdmcsXHJcbiAgI2V2b2x1dGlvbi1zdGF0ZS1tc3ZnLFxyXG4gICNzcGVjaWZpY2l0eS1hZGp1c3QsXHJcbiAgI3dvcmt0ZWFtLXJlbGF0aW9uLFxyXG4gICNpbm5vdmF0aW9uLTEtbXN2ZyB7XHJcbiAgICAvKiBmaWxsOiAjYmQ5ZTEzOyAqL1xyXG4gICAgZmlsbDogI2JkMTMxMztcclxuICAgIHdpZHRoOiA3NXB4O1xyXG4gICAgaGVpZ2h0OiA3NXB4O1xyXG4gICAgbWFyZ2luLXRvcDogMjBweDtcclxuICBcclxuICB9XHJcbiAgLnN2Zy12YWx1ZXMtZmlsbENvbG9yIHtcclxuICAgIGNvbG9yOiAjYmQxMzEzO1xyXG4gIH1cclxuXHJcbi8qICAgI3dlYm1haWwtY2FyZCB7XHJcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQodG8gYm90dG9tLCByZ2JhKDIyNCwgNDYsIDMwLCAwLjUpLCByZ2JhKDAsMCwyNTUsMC41KSksIHVybCgnL2ltZy93ZWJtYWlsLXByby5qcGcnKTtcclxuICB9XHJcbiAgXHJcbiAgI3Jlc3BvbnNpdmUtd2Vic2l0ZS1jYXJkIHtcclxuICAgIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCh0byBib3R0b20sIHJnYmEoMjUsIDI1LCAyNDUsIDAuNSksIHJnYmEoMjI0LCA0NiwgMzAsIDAuNSkpLCB1cmwoJy9pbWcvcmVzcG9uc2l2ZS13ZWJzaXRlLmpwZycpOyAgXHJcbiAgfSAqL1xyXG4gIFxyXG4gICN3ZWJtYWlsLWNhcmQsICNyZXNwb25zaXZlLXdlYnNpdGUtY2FyZCB7XHJcbiAgICB3aWR0aDogMTAwJTtcclxuICAgIC8qIGJhY2tncm91bmQtY29sb3I6IG9yYW5nZTsgKi9cclxuICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XHJcbiAgICAvKiBiYWNrZ3JvdW5kLWF0dGFjaG1lbnQ6IGZpeGVkOyAqL1xyXG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyOyBcclxuICAgIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XHJcbiAgfVxyXG4gIFxyXG4gIC5tYXgtd2lkdGgtNTAwIHtcclxuICBtYXgtd2lkdGg6IDUwMHB4O1xyXG4gIH1cclxuICBcclxuICAuY2hlY2tib3gtc2l6ZSB7XHJcbiAgICB3aWR0aDogMjBweDtcclxuICB9XHJcblxyXG4gICNuZXdzbGV0dGVyX2luc2NyaXB0aW9uX2VtYWlsLCAjbmV3c2xldHRlcl9pbnNjcmlwdGlvbl9lbnZveWVyIHtcclxuICAgIG1pbi13aWR0aDogMjAwcHg7XHJcbiAgICBtYXgtd2lkdGg6IDEwMCU7XHJcbiAgfVxyXG5cclxuXHJcbiAgLmRyb3Bkb3duLW1lbnUge1xyXG4gICAgdG9wOiAxMDAlICFpbXBvcnRhbnQ7ICAgLyogYWxpZ25lIHNvdXMgbGUgYm91dG9uICovXHJcbiAgICBsZWZ0OiAwO1xyXG4gICAgbWFyZ2luLXRvcDogMC41cmVtO1xyXG4gICAgei1pbmRleDogMTA1MDtcclxuICB9XHJcbiAgXHJcbiAgLyogT3B0aW9ubmVsIHBvdXIgw6l2aXRlciBxdWUgbGUgbWVudSBzJ2FmZmljaGUgYml6YXJyZW1lbnQgKi9cclxuICAubmF2LWl0ZW0uZHJvcGRvd24ge1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gIH1cclxuXHJcblxyXG5cclxuXHJcbiIsIi53LTkwIHtcclxuICAgIHdpZHRoOiAxMDAlO1xyXG4gIH1cclxuICBcclxuICAuY29sLXNtcy0xLCAuY29sLXNtcy0yLCAuY29sLXNtcy0zLCAuY29sLXNtcy00LCAuY29sLXNtcy01LCAuY29sLXNtcy02LCAuY29sLXNtcy03LCAuY29sLXNtcy04LCAuY29sLXNtcy05LCAuY29sLXNtcy0xMCwgLmNvbC1zbXMtMTEsIC5jb2wtc21zLTEyIHtcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgIG1pbi1oZWlnaHQ6IDFweDtcclxuICAgIHBhZGRpbmctbGVmdDogMTVweDtcclxuICAgIHBhZGRpbmctcmlnaHQ6IDE1cHg7IH1cclxuXHJcbi5jb250YWluZXIsIC5jb250YWluZXItZmx1aWQgLmp1bWJvdHJvbiB7XHJcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG4gfVxyXG4gXHJcbiAuanVtYm90cm9uLWJzNSB7XHJcbiAgIHBhZGRpbmc6IDJyZW0gMXJlbTtcclxuICAgbWFyZ2luLWJvdHRvbTogMnJlbTtcclxuICAgLyogYmFja2dyb3VuZC1jb2xvcjogI2M1YjQxYjsgKi9cclxuICAgYm9yZGVyLXJhZGl1czogMC4zcmVtO1xyXG4gfVxyXG5cclxuIC5jb250YWluZXItZmx1aWQgLmp1bWJvdHJvbiwgLmNvbnRhaW5lci1mbHVpZCAuanVtYm90cm9uLWJzNSAge1xyXG4gICBiYWNrZ3JvdW5kLWNvbG9yOm9yYW5nZTtcclxuIH1cclxuXHJcblxyXG4gLyogRHJvcGRvd24gY29udGVudCAoaGlkZGVuIGJ5IGRlZmF1bHQpICovXHJcbi5kcm9wZG93bi1tZW51IHtcclxuICAgIG1hcmdpbi10b3A6IDBweDtcclxuICAgIHBhZGRpbmctdG9wOiAwcHg7XHJcbiAgICBwYWRkaW5nLWJvdHRvbTogMHB4O1xyXG4gIFxyXG4gICAgYm9yZGVyLXRvcC1zdHlsZTpub25lO1xyXG4gICAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogMHB4O1xyXG4gICAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IDByZW07XHJcbiAgICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAwcHg7XHJcbiAgICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogMHJlbTtcclxuICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAvKiBiYWNrZ3JvdW5kLWNvbG9yOiAjZjlmOWY5OyAqL1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgyMjMsIDIzNCwgMjIzLCAxKTtcclxuICAgIG1pbi13aWR0aDogMTYwcHg7XHJcbiAgICBib3gtc2hhZG93OiAwcHggOHB4IDE2cHggMHB4IHJnYmEoMCwwLDAsMC4yKTtcclxuICAgIHotaW5kZXg6IDE7XHJcbiAgfVxyXG4gIFxyXG4gIC8qIExpbmtzIGluc2lkZSB0aGUgZHJvcGRvd24gKi9cclxuICAuZHJvcGRvd24tbWVudSBhIHtcclxuICAgIGZsb2F0OiBub25lO1xyXG4gICAgY29sb3I6IGJsYWNrO1xyXG4gICAgcGFkZGluZzogMTJweCAxNnB4O1xyXG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xyXG4gICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICB0ZXh0LWFsaWduOiBsZWZ0O1xyXG4gIH1cclxuICBcclxuICAvKiBBZGQgYSBncmV5IGJhY2tncm91bmQgY29sb3IgdG8gZHJvcGRvd24gbGlua3Mgb24gaG92ZXIgKi9cclxuICAuZHJvcGRvd24tbWVudSBhOmhvdmVyIHtcclxuICAgIC8qIGJhY2tncm91bmQtY29sb3I6ICNkZGQ7ICovXHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2IoMTc2LCAzMSwgNDUpO1xyXG4gICAgY29sb3I6IHJnYigyMzMsIDIyMywgMjI0KTtcclxuICB9XHJcbiAgXHJcbiAgLyogU2hvdyB0aGUgZHJvcGRvd24gbWVudSBvbiBob3ZlciAqL1xyXG4gIC5kcm9wZG93bjpob3ZlciAuZHJvcGRvd24tbWVudSB7XHJcbiAgICBkaXNwbGF5OiBibG9jaztcclxuICB9XHJcbiAgXHJcbiAgLmRyb3Bkb3duLW1lbnUge1xyXG4gICAgLyogYmFja2dyb3VuZDogcmdiKDI0OCwgMjQ3LCAyNDcpOyAqL1xyXG4gICAgLyogLXdlYmtpdC1ib3gtc2hhZG93OiBpbnNldCAwcHggM3B4IDBweCAwcHggcmdiYSgxNzYsMzEsNDUsMC43NSk7XHJcbiAgLW1vei1ib3gtc2hhZG93OiBpbnNldCAwcHggM3B4IDBweCAwcHggcmdiYSgxNzYsMzEsNDUsMC43NSk7XHJcbiAgYm94LXNoYWRvdzogaW5zZXQgMHB4IDNweCAwcHggMHB4IHJnYmEoMTc2LDMxLDQ1LDAuNzUpO1xyXG4gICAqL1xyXG4gIFxyXG4gICAgLXdlYmtpdC1ib3gtc2hhZG93OiAwcHggNXB4IDVweCAwcHggcmdiKDMsIDUsIDEyMik7XHJcbiAgICAtbW96LWJveC1zaGFkb3c6IDBweCA1cHggNXB4IDBweCByZ2JhKDMsIDUsIDEyMiwgMSk7XHJcbiAgICBib3gtc2hhZG93OiAwcHggNXB4IDVweCAwcHggcmdiYSgzLCA1LCAxMjIsIDEpOyAgICBcclxuICB9XHJcbiAgXHJcbiAgLm5hdi1pdGVtLmRyb3Bkb3duIC5kcm9wZG93bi1tZW51IC5jb250YWluZXIge1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2UwZTBlZTtcclxuICAgIGhlaWdodDogMTUwcHg7XHJcbiAgICBwYWRkaW5nLXRvcDogLTEwcHg7XHJcbiAgfVxyXG4gIFxyXG4gICNuYXZiYXJzRSAubmF2YmFyLW5hdiB7XHJcbiAgICBtYXJnaW4tbGVmdDogMi41cmVtO1xyXG4gIH1cclxuICBcclxuICAjbmF2YmFyc0UgLm5hdmJhci1uYXYgLm5hdi1saW5rIHtcclxuICAgIGNvbG9yOiByZ2IoMCwgMCwgMCk7XHJcbiAgfVxyXG4gIFxyXG4gICNuYXZiYXJzRSAubmF2YmFyLW5hdiAubmF2LWxpbms6aG92ZXIge1xyXG4gICAgLyogYm9yZGVyLWJvdHRvbTogMnB4IHNvbGlkICNmZmY7ICovXHJcbiAgICBib3JkZXItYm90dG9tOiAycHggc29saWQgcmdiKDIyNCwgMjQ4LCA0KTtcclxuICAgIC8qIGNvbG9yOiAgd2hpdGVzbW9rZTsgKi9cclxuICAgIGNvbG9yOiBoc2woMzU0LCA3MCUsIDQxJSk7XHJcbiAgfVxyXG4gIFxyXG4gICNuYXZiYXJzRSAubmF2YmFyLW5hdiAubmF2LWxpbmsuYWN0aXZlIHtcclxuICAgIC8qIGJvcmRlci1ib3R0b206IDJweCBzb2xpZCAjZmZmOyAqL1xyXG4gICAgYm9yZGVyLWJvdHRvbTogMnB4IHNvbGlkIHJnYig3NywgMywgMyk7XHJcbiAgICAvKiBjb2xvcjogIHJnYigxODQsIDIwLCAyMCk7ICovXHJcbiAgICBjb2xvcjogcmdiKDE3LCAxMjIsIDMpO1xyXG4gIH1cclxuXHJcbiAgLmFjdGl2ZSBhIHtcclxuICAgIGJvcmRlci1ib3R0b206IDJweCBzb2xpZCAjZmZmO1xyXG4gIH1cclxuICBcclxuICAuZHJvcGRvd246aG92ZXIgPiAuZHJvcGRvd24tbWVudSB7XHJcbiAgICBkaXNwbGF5OiBibG9jaztcclxuICB9XHJcbiAgXHJcbiAgLmRyb3Bkb3duLXRvZ2dsZTo6YWZ0ZXIge1xyXG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xyXG4gIH1cclxuXHJcbiAgLyogY2hhbmdlIHRoZSBicmFuZCBhbmQgdGV4dCBjb2xvciAqL1xyXG4ubmF2YmFyLWN1c3RvbTEgLm5hdmJhci1icmFuZCxcclxuLm5hdmJhci1jdXN0b20xIC5uYXZiYXItdGV4dCB7XHJcbiAgY29sb3I6IHJnYmEoMjU1LDI1NSwyNTUsLjgpO1xyXG59XHJcbi8qIGNoYW5nZSB0aGUgbGluayBjb2xvciAqL1xyXG4vKiAubmF2YmFyLWN1c3RvbTEgLm5hdmJhci1uYXYgLm5hdi1saW5rIHtcclxuICBjb2xvcjogcmdiYSgyNTUsMjU1LDI1NSwuNSk7XHJcbn0gKi9cclxuI2hlYWRlcjIgLm5hdmJhci1uYXYgLm5hdi1saW5rIHtcclxuICBjb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAxKTtcclxufVxyXG5cclxuLyogY2hhbmdlIHRoZSBjb2xvciBvZiBhY3RpdmUgb3IgaG92ZXJlZCBsaW5rcyAqL1xyXG4ubmF2YmFyLWN1c3RvbTEgLm5hdi1pdGVtLmFjdGl2ZSAubmF2LWxpbmssXHJcbi5uYXZiYXItY3VzdG9tMSAubmF2LWl0ZW06aG92ZXIgLm5hdi1saW5rIHtcclxuICBjb2xvcjogI2ZmZmZmZjtcclxufVxyXG5cclxuLm1sLWF1dG8ge1xyXG4gICAgbWFyZ2luLWxlZnQ6IGF1dG8gIWltcG9ydGFudDtcclxuICB9XHJcblxyXG4gIC5tci1hdXRvIHtcclxuICAgIG1hcmdpbi1yaWdodDogYXV0byAhaW1wb3J0YW50O1xyXG4gIH1cclxuXHJcbiAgLnJvdyB7XHJcbiAgICB3aWR0aDogMTAwJSAhaW1wb3J0YW50O1xyXG4gIH1cclxuICBcclxuXHJcblxyXG5cclxuICAvKiBuYXZiYXItYnJhbmQgKi9cclxuLm5hdmJhci1icmFuZCB7XHJcbiAgICBmb250LXNpemU6IDEuMjVyZW07IC8qIEFqdXN0ZW1lbnQgZGUgbGEgdGFpbGxlIGR1IHRleHRlICovXHJcbiAgICAvKiBmb250LXdlaWdodDogYm9sZDsgICovIC8qIE1ldHRyZSBlbiBncmFzICovXHJcbiAgICAvKiBjb2xvcjogIzMzMzsgKi8gLyogQ291bGV1ciBkZSB0ZXh0ZSBwb3VyIHVuIG1laWxsZXVyIGNvbnRyYXN0ZSAqL1xyXG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xyXG4gICAgcGFkZGluZzogMDtcclxufVxyXG5cclxuLyogLmNvbnRhaW5lciAqL1xyXG4uY29udGFpbmVyIHtcclxuICAgIG1heC13aWR0aDogMTE0MHB4OyAvKiBCb290c3RyYXAgNSBhIGF1Z21lbnTDqSBsYSB0YWlsbGUgbWF4aW1hbGUgZGVzIGNvbnRhaW5lcnMgKi9cclxuICAgIHBhZGRpbmctcmlnaHQ6IDE1cHg7IC8qIFBvdXIgbmUgcGFzIGF2b2lyIHRyb3AgZCdlc3BhY2Ugw6AgZHJvaXRlICovXHJcbiAgICBwYWRkaW5nLWxlZnQ6IDE1cHg7ICAvKiBQb3VyIG5lIHBhcyBhdm9pciB0cm9wIGQnZXNwYWNlIMOgIGdhdWNoZSAqL1xyXG4gICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xyXG4gICAgbWFyZ2luLWxlZnQ6IGF1dG87XHJcbn1cclxuXHJcbi8qIC5yb3cgKi9cclxuLnJvdyB7XHJcbiAgICBkaXNwbGF5OiBmbGV4OyAvKiBQb3VyIHVuIG1laWxsZXVyIGNvbnRyw7RsZSBzdXIgbGVzIGFsaWduZW1lbnRzICovXHJcbiAgICBmbGV4LXdyYXA6IHdyYXA7IC8qIFMnYXNzdXJlciBxdWUgbGVzIMOpbMOpbWVudHMgcGV1dmVudCBzJ2Vucm91bGVyIHNpIG7DqWNlc3NhaXJlICovXHJcbiAgICBtYXJnaW4tcmlnaHQ6IC0xNXB4OyAvKiBCb290c3RyYXAgNSBzdXBwcmltZSBsYSBtYXJnaW4gbsOpZ2F0aXZlLCBkb25jIGFqdXN0ZW1lbnQgbWFudWVsICovXHJcbiAgICBtYXJnaW4tbGVmdDogLTE1cHg7IC8qIE3Dqm1lIGljaSBwb3VyIGdhcmRlciB1bmUgc3ltw6l0cmllICovXHJcbn1cclxuXHJcbi8qIC5jb2wgKi9cclxuLmNvbCB7XHJcbiAgICBmbGV4OiAxIDAgMCU7IC8qIEZsZXhib3ggcG91ciBsZXMgY29sb25uZXMsIGFqdXN0ZSBsYSB0YWlsbGUgYXV0b21hdGlxdWVtZW50ICovXHJcbiAgICBwYWRkaW5nLXJpZ2h0OiAxNXB4OyAvKiBDb25zaXN0YW5jZSBhdmVjIGxlcyBhdXRyZXMgY2xhc3NlcyAqL1xyXG4gICAgcGFkZGluZy1sZWZ0OiAxNXB4OyAgLyogUG91ciBtYWludGVuaXIgbGEgZ3JpbGxlIGRlIEJvb3RzdHJhcCAqL1xyXG59XHJcblxyXG4vKiBNZWRpYSBRdWVyaWVzIHBvdXIgcmVzcG9uc2l2ZSBkZXNpZ24gKi9cclxuQG1lZGlhIChtYXgtd2lkdGg6IDc2OHB4KSB7XHJcbiAgICAubmF2YmFyLWJyYW5kIHtcclxuICAgICAgICBmb250LXNpemU6IDFyZW07IC8qIFRhaWxsZSBkZSB0ZXh0ZSBwbHVzIHBldGl0ZSBzdXIgbW9iaWxlICovXHJcbiAgICB9XHJcbiAgICAuY29udGFpbmVyIHtcclxuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAxMHB4O1xyXG4gICAgICAgIHBhZGRpbmctbGVmdDogMTBweDtcclxuICAgIH1cclxuICAgIC5yb3cge1xyXG4gICAgICAgIG1hcmdpbi1yaWdodDogMDtcclxuICAgICAgICBtYXJnaW4tbGVmdDogMDtcclxuICAgIH1cclxuICAgIC5jb2wge1xyXG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDEwcHg7XHJcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAxMHB4O1xyXG4gICAgfVxyXG59XHJcblxyXG4ubmF2YmFyLW5hdiB7XHJcbiAgLS1icy1uYXYtbGluay1jb2xvcjogI2ZmZjtcclxufSIsIlxyXG4uaDQtdHlwb2dyYXBoeSB7XHJcbiAgICBmb250LWZhbWlseTogXCJPcGVuIFNhbnNcIiwgSGVsdmV0aWNhLCBBcmlhbCwgc2Fucy1zZXJpZjtcclxuICAgIGZvbnQtc2l6ZTogMThweDtcclxuICAgIGxpbmUtaGVpZ2h0OiAyMHB4O1xyXG4gICAgLyogZm9udC13ZWlnaHQ6IDsgKi9cclxuICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcclxufSIsIi8qIFN0YXJ0IENTUyBmb3IgSGVhZGVyIHBhbmVscyAqL1xyXG5cclxuLnBhbmVscy1jb250YWluZXIge1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgbWFyZ2luOiAwcHggYXV0byAxMHB4O1xyXG4gICAgcGFkZGluZzogMHB4O1xyXG4gICAgLyogYmFja2dyb3VuZC1jb2xvcjogZ3JlZW47ICovXHJcbiAgICBoZWlnaHQ6IDUwMHB4O1xyXG4gICAgd2lkdGg6IDEwMCU7XHJcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gIH1cclxuICBcclxuICAucGFuZWxzLWNvbnRhaW5lciB7XHJcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgei1pbmRleDogMDtcclxuICAgIG1pbi1oZWlnaHQ6IDE1MHB4O1xyXG4gIH1cclxuICBcclxuICBcclxuICAucGFuZWwge1xyXG4gICAgLyogYmFja2dyb3VuZC1jb2xvcjogY2hvY29sYXRlOyAqL1xyXG4gICAgLyogcGFkZGluZzogMjBweDsgKi9cclxuICAgIGZsb2F0OiBsZWZ0O1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgei1pbmRleDogMDtcclxuICBcclxuICAgIG1pbi1oZWlnaHQ6IDI1MHB4O1xyXG4gIFxyXG4gICAgZmxleDogMTtcclxuICAgIC8qIHRyYW5zZm9ybTogc2tld1goLTEwZGVnKTsgKi9cclxuICAgIHRyYW5zaXRpb246IDFzO1xyXG4gIH1cclxuICBcclxuICAucGFuZWwtaW5uZXIge1xyXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgLyogYm9yZGVyOiAzcHggc29saWQgZ3JlZW47ICovXHJcbiAgICAvKiBib3JkZXI6IDNweCBzb2xpZCByZ2JhKDQsIDgyLCAyNTEsIDEpOyAqL1xyXG4gICAgaGVpZ2h0OiAxMDAlO1xyXG4gICAgd2lkdGg6IDEwMCU7XHJcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNrZXdYKC0xMGRlZyk7XHJcbiAgICAtbXMtdHJhbnNmb3JtOiBza2V3WCgtMTBkZWcpO1xyXG4gICAgdHJhbnNmb3JtOiBza2V3WCgtMTBkZWcpO1xyXG4gICAgYm94LXNoYWRvdzogMCAwIDAgNXB4IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC43KTtcclxuICB9XHJcbiAgXHJcbiAgLnBhbmVsLCAucGFuZWwtaW5uZXIge1xyXG4gICAgYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xyXG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVaKDApOyAvKiBGb3JjZXIgbCdhY2PDqWzDqXJhdGlvbiBHUFUgKi9cclxuICB9XHJcbiAgXHJcblxyXG4gIC5wYW5lbC1tYWluaW1hZ2Utd3JhcHBlciB7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICBtYXJnaW4tbGVmdDogLTUwcHg7XHJcbiAgICBtYXJnaW4tcmlnaHQ6IC01MHB4O1xyXG4gICAgLyogdHJhbnNmb3JtOiBza2V3WCgtMTBkZWcpOyAqL1xyXG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNrZXdYKDEwZGVnKTtcclxuICAgIC1tcy10cmFuc2Zvcm06IHNrZXdYKDEwZGVnKTtcclxuICAgIHRyYW5zZm9ybTogc2tld1goMTBkZWcpO1xyXG4gIFxyXG4gICAgLyogYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xyXG4gICAgICAtd2Via2l0LWJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjsgKi9cclxuICBcclxuICAgIGhlaWdodDogMTAwJTtcclxuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcbiAgfVxyXG4gIFxyXG4gIC5wYW5lbC1tYWluaW1hZ2Uge1xyXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgLyogdHJhbnNmb3JtOiBza2V3WCgtMTBkZWcpOyAqL1xyXG4gICAgdG9wOiAtMnB4O1xyXG4gICAgbGVmdDogLTJweDtcclxuICAgIHJpZ2h0OiAtMnB4O1xyXG4gICAgYm90dG9tOiAtMnB4O1xyXG4gIH1cclxuICBcclxuICBpbWcucGFuZWwtaW1hZ2UgIHtcclxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgIGJvcmRlcjogMDtcclxuICAgIGJvcmRlci1zdHlsZTogbm9uZTtcclxuICAgIGhlaWdodDogMTAwJTtcclxuICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcclxuICAgIGJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcclxuICAgIC13ZWJraXQtYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xyXG4gICAgLXdlYmtpdC10cmFuc2l0aW9uOiAwLjJzIGVhc2Utb3V0O1xyXG4gICAgdHJhbnNpdGlvbjogMC4ycyBlYXNlLW91dDtcclxuICAgIG1heC13aWR0aDogMTAwJTtcclxuICB9XHJcbiAgXHJcbiAgLmNvdmVyLWZpdC1pbWcge1xyXG4gICAgLW8tb2JqZWN0LWZpdDogY292ZXI7XHJcbiAgICBvYmplY3QtZml0OiBjb3ZlcjtcclxuICAgIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgICAvKiBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyOyAqL1xyXG4gIH1cclxuICBcclxuICAuYW5pbS0tYmx1ciB7XHJcbiAgICAtd2Via2l0LWZpbHRlcjogYmx1cig5cHgpO1xyXG4gICAgZmlsdGVyOiBibHVyKDlweCk7XHJcbiAgICAtd2Via2l0LXRyYW5zaXRpb246IG9wYWNpdHkgMC4xNXMgZWFzZS1vdXQ7XHJcbiAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuMTVzIGVhc2Utb3V0O1xyXG4gIH1cclxuICBcclxuICAucGFuZWw6aG92ZXIgLnBhbmVsLW1haW5pbWFnZS1pbWcuYW5pbS0tYmx1ciB7XHJcbiAgICBvcGFjaXR5OiAwO1xyXG4gIH1cclxuICBcclxuICAucGFuZWw6aG92ZXIge1xyXG4gICAgZmxleDogMS4yO1xyXG4gICAgLyogYmFja2dyb3VuZC1jb2xvcjogZ3JleTsgKi9cclxuICB9XHJcbiAgXHJcbiAgLnBhbmVsLTAge1xyXG4gICAgbWFyZ2luLWxlZnQ6IC02NXB4O1xyXG4gIH1cclxuICBcclxuICAucGFuZWwtMyB7XHJcbiAgICBtYXJnaW4tcmlnaHQ6IC02MHB4O1xyXG4gIH1cclxuICBcclxuICAucGFuZWwtY2FwdGlvbiB7XHJcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICBib3R0b206IDkwcHg7XHJcbiAgICBjb2xvcjogI2ZmZmZmZjtcclxuICAgIHotaW5kZXg6IDE7XHJcbiAgICB3aWR0aDogMTAwJTtcclxuICB9XHJcbiAgXHJcbiAgLnRleHQtZW5kIHtcclxuICAgIHRleHQtYWxpZ246IHJpZ2h0O1xyXG4gIH1cclxuICBcclxuICAucGFuZWwtY2FwdGlvbi50ZXh0LWVuZCB7XHJcbiAgICBwYWRkaW5nLXJpZ2h0OiA1MHB4O1xyXG4gIH1cclxuICBcclxuICAuY3NzcC1jYXB0LWFuaW1hdGVkIC5wLW92ZXJsYXkge1xyXG4gICAgLXdlYmtpdC10cmFuc2l0aW9uLWRlbGF5OiAwLjFzO1xyXG4gICAgdHJhbnNpdGlvbi1kZWxheTogMC4xcztcclxuICB9XHJcbiAgXHJcbiAgLnAtb3ZlcmxheS0tZ3JhZGllbnQge1xyXG4gICAgb3BhY2l0eTogMC41O1xyXG4gICAgdG9wOiA1MCU7XHJcbiAgICBiYWNrZ3JvdW5kOiAtd2Via2l0LWdyYWRpZW50KFxyXG4gICAgICBsaW5lYXIsXHJcbiAgICAgIGxlZnQgdG9wLFxyXG4gICAgICBsZWZ0IGJvdHRvbSxcclxuICAgICAgY29sb3Itc3RvcCgwJSwgcmdiYSgwLCAwLCAwLCAwKSksXHJcbiAgICAgIGNvbG9yLXN0b3AoMTAwJSwgcmdiYSgwLCAwLCAwLCAxKSlcclxuICAgICk7XHJcbiAgICBcclxuICAgIGJhY2tncm91bmQ6IC13ZWJraXQtbGluZWFyLWdyYWRpZW50KFxyXG4gICAgICB0b3AsXHJcbiAgICAgIHJnYmEoMCwgMCwgMCwgMCkgMCUsXHJcbiAgICAgIHJnYmEoMCwgMCwgMCwgMSkgMTAwJVxyXG4gICAgKTtcclxuICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudChcclxuICAgICAgdG8gYm90dG9tLFxyXG4gICAgICByZ2JhKDAsIDAsIDAsIDApIDAlLFxyXG4gICAgICByZ2JhKDAsIDAsIDAsIDEpIDEwMCVcclxuICAgICk7XHJcbiAgfVxyXG4gIFxyXG4gIC5wLW92ZXJsYXkge1xyXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgbGVmdDogMDtcclxuICAgIHRvcDogMDtcclxuICAgIHJpZ2h0OiAwO1xyXG4gICAgYm90dG9tOiAwO1xyXG4gICAgLXdlYmtpdC10cmFuc2l0aW9uOiBvcGFjaXR5IDAuMTVzIGVhc2Utb3V0O1xyXG4gICAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjE1cyBlYXNlLW91dDtcclxuICB9XHJcbiAgXHJcbiAgLmNzc3AtY2FwdC1hbmltYXRlZCAucGFuZWwtdGV4dCB7XHJcbiAgICAtd2Via2l0LXRyYW5zaXRpb24tZGVsYXk6IDAuMnM7XHJcbiAgICB0cmFuc2l0aW9uLWRlbGF5OiAwLjJzO1xyXG4gIH1cclxuICAucGFuZWwtdGV4dCB7XHJcbiAgICBmb250LXNpemU6IDE2cHg7XHJcbiAgICBjb2xvcjogI2ZmZjtcclxuICAgIGZvbnQtd2VpZ2h0OiAzMDA7XHJcbiAgICBtYXJnaW4tdG9wOiAyMHB4O1xyXG4gICAgbGluZS1oZWlnaHQ6IDEuNjtcclxuICB9XHJcbiAgXHJcbiAgLyogLmNzc3AtY2FwdC1hbmltYXRlZCAucGFuZWwtdGl0bGUge1xyXG4gICAgICAtd2Via2l0LXRyYW5zaXRpb24tZGVsYXk6IDAuMXM7XHJcbiAgICAgIHRyYW5zaXRpb24tZGVsYXk6IDAuMXM7XHJcbiAgfSAqL1xyXG4gIFxyXG4gIC5wYW5lbC1jb250YWluZXIgLnBhbmVsLXRpdGxlIHtcclxuICAgIC13ZWJraXQtdHJhbnNpdGlvbi1kZWxheTogMC4xcztcclxuICAgIHRyYW5zaXRpb24tZGVsYXk6IDAuMXM7XHJcbiAgfVxyXG4gIFxyXG4gIC5mZi1hbHRlcm5hdGl2ZSwgLmtsLWZvbnQtYWx0LCAua2wtZm9udGFmdGVyLWFsdDphZnRlciwgLnBhZ2UtdGl0bGUsIC5wYWdlLXN1YnRpdGxlLCAuc3VidGl0bGUsIC50b3BuYXYtaXRlbSwgLnRvcG5hdiAubWVudS1pdGVtID4gYSwgLnpuLXNpZGViYXItd2lkZ2V0LXRpdGxlLCAubml2by1jYXB0aW9uLCAudGgtd293c2xpZGVyIC53cy10aXRsZSwgLmNhcnQtY29udGFpbmVyIC5jYXJ0X2xpc3QgbGkgYTpub3QoLnJlbW92ZSkge1xyXG4gICAgZm9udC1mYW1pbHk6IFwiTGF0b1wiLCBIZWx2ZXRpY2EsIEFyaWFsLCBzYW5zLXNlcmlmO1xyXG4gIH1cclxuICBcclxuICAuY2FwdGlvbnRpdGxlLS13YmcsIC5jYXB0aW9udGl0bGUtLWRiZyB7XHJcbiAgICBwYWRkaW5nOiAxM3B4IDBweCAxM3B4IDQ1cHg7XHJcbiAgfVxyXG4gIFxyXG4gIC5jYXB0aW9udGl0bGUtLXdiZzpiZWZvcmUsIC5jYXB0aW9udGl0bGUtLWRiZzpiZWZvcmUge1xyXG4gICAgY29udGVudDogXCJcIjtcclxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgIGhlaWdodDogMTAwJTtcclxuICAgIGJvcmRlci1yYWRpdXM6IDRweDtcclxuICAgIHBhZGRpbmctcmlnaHQ6IDM1cHg7XHJcbiAgICBkaXNwbGF5OiBibG9jaztcclxuICAgIHJpZ2h0OiAtMzVweDtcclxuICAgIGJvdHRvbTogMDtcclxuICAgIGxlZnQ6IDA7XHJcbiAgICB0b3A6IDA7XHJcbiAgICB6LWluZGV4OiAtMTtcclxuICAgIC13ZWJraXQtdHJhbnNmb3JtLXN0eWxlOiBwcmVzZXJ2ZS0zZDtcclxuICAgIHRyYW5zZm9ybS1zdHlsZTogcHJlc2VydmUtM2Q7XHJcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2tldygtMTBkZWcpIHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xyXG4gICAgLW1zLXRyYW5zZm9ybTogc2tldygtMTBkZWcpIHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xyXG4gICAgdHJhbnNmb3JtOiBza2V3KC0xMmRlZykgdHJhbnNsYXRlM2QoMCwgMCwgMCk7XHJcbiAgICBiYWNrZ3JvdW5kOiAtd2Via2l0LWdyYWRpZW50KGxpbmVhcixsZWZ0IHRvcCxyaWdodCB0b3AsY29sb3Itc3RvcCgwJSwgcmdiYSgwLCAwLCAwLCAwKSksY29sb3Itc3RvcCg4MCUsIHJnYmEoMCwgMCwgMCwgMC40NSkpKTtcclxuICAgIGJhY2tncm91bmQ6IC13ZWJraXQtbGluZWFyLWdyYWRpZW50KGxlZnQscmdiYSgwLCAwLCAwLCAwKSAwJSxyZ2JhKDAsIDAsIDAsIDAuNDUpIDgwJSk7XHJcbiAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQodG8gcmlnaHQscmdiYSgwLCAwLCAwLCAwKSAwJSxyZ2JhKDAsIDAsIDAsIDAuNDUpIDgwJSk7XHJcbiAgfVxyXG4gIFxyXG4gIC5wYW5lbC10aXRsZSB7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICBmb250LXNpemU6IDI4cHg7XHJcbiAgICBsaW5lLWhlaWdodDogMS4zO1xyXG4gICAgZm9udC13ZWlnaHQ6IDYwMDtcclxuICAgIGNvbG9yOiAjZmZmO1xyXG4gICAgbWFyZ2luOiAwO1xyXG4gIH1cclxuICBcclxuICAucGFuZWwtYnRuLWFyZWEge1xyXG4gICAgY2xlYXI6IGJvdGg7XHJcbiAgICBmbG9hdDogcmlnaHQ7XHJcbiAgICBtYXJnaW4tdG9wOiAzMHB4O1xyXG4gICAgbWFyZ2luLWxlZnQ6IDUwcHg7XHJcbiAgfVxyXG4gIFxyXG4gIC5wYW5lbC1jb250YWluZXIgLnBhbmVsLWJ0bi1hcmVhIHtcclxuICAgIC13ZWJraXQtdHJhbnNpdGlvbi1kZWxheTogMHM7XHJcbiAgICB0cmFuc2l0aW9uLWRlbGF5OiAwcztcclxuICB9XHJcbiAgXHJcbiAgLmJ0bi5idG4tZnVsbGNvbG9yLmJ0bi1za2V3ZWQsIC5idG4uYnRuLWZ1bGxjb2xvci5idG4tc2tld2VkOmhvdmVyIHtcclxuICAgIGJvcmRlcjogMDtcclxuICAgIGJhY2tncm91bmQ6IG5vbmU7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICB6LWluZGV4OiAwO1xyXG4gIH1cclxuICBcclxuICAuYnRuLmJ0bi1mdWxsY29sb3Ige1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzAwNjM5ZDtcclxuICB9XHJcbiAgXHJcbiAgLmJ0bi5idG4tZnVsbGNvbG9yLCAuYnRuLmJ0bi1mdWxsY29sb3I6Zm9jdXMge1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2NkMjEyMjtcclxuICAgIGNvbG9yOiAjZmZmO1xyXG4gIH1cclxuICBcclxuICAuYnRuLmJ0bi1mdWxsd2hpdGUsIC5idG4uYnRuLWZ1bGxibGFjaywgLmJ0bi5idG4tZnVsbGNvbG9yLCAuYnRuLmJ0bi1kZWZhdWx0LCAuYnRuLmJ0bi1wcmltYXJ5LCAuYnRuLmJ0bi1zdWNjZXNzLCAuYnRuLmJ0bi1pbmZvLCAuYnRuLmJ0bi13YXJuaW5nLCAuYnRuLmJ0bi1kYW5nZXIsIC5idG4uYnRuLWxpbmsge1xyXG4gICAgdGV4dC1zaGFkb3c6IG5vbmU7XHJcbiAgICBwYWRkaW5nOiAxMHB4IDIwcHg7XHJcbiAgICBsaW5lLWhlaWdodDogMS42O1xyXG4gICAgLXdlYmtpdC1ib3gtc2hhZG93OiBub25lO1xyXG4gICAgYm94LXNoYWRvdzogbm9uZTtcclxuICAgIGZvbnQtc2l6ZTogMTNweDtcclxuICAgIGZvbnQtd2VpZ2h0OiA3MDA7XHJcbiAgICBib3JkZXItc3R5bGU6IHNvbGlkO1xyXG4gICAgYm9yZGVyLXJhZGl1czogM3B4O1xyXG4gICAgLXdlYmtpdC10cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIC4xNXMgZWFzZS1vdXQ7XHJcbiAgICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIC4xNXMgZWFzZS1vdXQ7XHJcbiAgfVxyXG4gIC5idG4uYnRuLWZ1bGx3aGl0ZSwgLmJ0bi5idG4tZnVsbGJsYWNrLCAuYnRuLmJ0bi1mdWxsY29sb3Ige1xyXG4gICAgYm9yZGVyLXdpZHRoOiAwO1xyXG4gIH1cclxuICAuYnRuLmJ0bi1mdWxsY29sb3IsIC5idG4uYnRuLWZ1bGxjb2xvcjpmb2N1cyB7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjY2QyMTIyO1xyXG4gICAgY29sb3I6ICNmZmY7XHJcbiAgfVxyXG4gIC5idG4uYnRuLWRhbmdlciwgLmJ0bi5idG4tZGVmYXVsdCwgLmJ0bi5idG4tZnVsbGJsYWNrLCAuYnRuLmJ0bi1mdWxsY29sb3IsIC5idG4uYnRuLWZ1bGx3aGl0ZSwgLmJ0bi5idG4taW5mbywgLmJ0bi5idG4tbGluaywgLmJ0bi5idG4tcHJpbWFyeSwgLmJ0bi5idG4tc3VjY2VzcywgLmJ0bi5idG4td2FybmluZyB7XHJcbiAgICB0ZXh0LXNoYWRvdzogbm9uZTtcclxuICAgIHBhZGRpbmc6IDEwcHggMjBweDtcclxuICAgIGxpbmUtaGVpZ2h0OiAxLjY7XHJcbiAgICBib3gtc2hhZG93OiBub25lO1xyXG4gICAgZm9udC1zaXplOiAxM3B4O1xyXG4gICAgZm9udC13ZWlnaHQ6IDcwMDtcclxuICAgIGJvcmRlci1zdHlsZTogc29saWQ7XHJcbiAgICBib3JkZXItcmFkaXVzOiAzcHg7XHJcbiAgICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIC4xNXMgZWFzZS1vdXQ7XHJcbiAgfVxyXG4gIC5idG4uYnRuLWZ1bGxibGFjaywgLmJ0bi5idG4tZnVsbGNvbG9yLCAuYnRuLmJ0bi1mdWxsd2hpdGUge1xyXG4gICAgYm9yZGVyLXdpZHRoOiAwO1xyXG4gIH1cclxuXHJcbiAgLmJ0biB7XHJcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xyXG4gICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcclxuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XHJcbiAgICAtbXMtdG91Y2gtYWN0aW9uOiBtYW5pcHVsYXRpb247XHJcbiAgICB0b3VjaC1hY3Rpb246IG1hbmlwdWxhdGlvbjtcclxuICAgIGN1cnNvcjogcG9pbnRlcjtcclxuICAgIGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7XHJcbiAgICBib3JkZXI6IDFweCBzb2xpZCB0cmFuc3BhcmVudDtcclxuICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XHJcbiAgICBwYWRkaW5nOiA2cHggMTJweDtcclxuICAgIGZvbnQtc2l6ZTogMTRweDtcclxuICAgIGxpbmUtaGVpZ2h0OiAxLjQyODU3MTQzO1xyXG4gICAgYm9yZGVyLXJhZGl1czogNHB4O1xyXG4gICAgLXdlYmtpdC11c2VyLXNlbGVjdDogbm9uZTtcclxuICAgIC1tb3otdXNlci1zZWxlY3Q6IG5vbmU7XHJcbiAgICAtbXMtdXNlci1zZWxlY3Q6IG5vbmU7XHJcbiAgICB1c2VyLXNlbGVjdDogbm9uZTtcclxuICB9XHJcbiAgXHJcbiAgLmJ0bi5idG4tZnVsbGNvbG9yLmJ0bi1za2V3ZWQ6YmVmb3JlIHtcclxuICAgIGNvbnRlbnQ6ICcnO1xyXG4gICAgYm9yZGVyLXJhZGl1czogNHB4O1xyXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgdG9wOiAwO1xyXG4gICAgbGVmdDogMDtcclxuICAgIHJpZ2h0OiAwO1xyXG4gICAgYm90dG9tOiAwO1xyXG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNrZXdYKC04ZGVnKTtcclxuICAgIHRyYW5zZm9ybTogc2tld1goLThkZWcpO1xyXG4gICAgLXdlYmtpdC10cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIC4ycyBlYXNlLWluLW91dDtcclxuICAgIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgLjJzIGVhc2UtaW4tb3V0O1xyXG4gICAgei1pbmRleDogLTE7XHJcbiAgfVxyXG4gIC5idG4uYnRuLWZ1bGxjb2xvci5idG4tc2tld2VkOmJlZm9yZSB7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjY2QyMTIyO1xyXG4gIH1cclxuICAuYnRuLmJ0bi1mdWxsY29sb3IuYnRuLXNrZXdlZDpiZWZvcmUge1xyXG4gICAgY29udGVudDogXCJcIjtcclxuICAgIGJvcmRlci1yYWRpdXM6IDRweDtcclxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgIHRvcDogMDtcclxuICAgIGxlZnQ6IDA7XHJcbiAgICByaWdodDogMDtcclxuICAgIGJvdHRvbTogMDtcclxuICAgIHRyYW5zZm9ybTogc2tld1goLThkZWcpO1xyXG4gICAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAuMnMgZWFzZS1pbi1vdXQ7XHJcbiAgICB6LWluZGV4OiAtMTtcclxuICB9XHJcbiAgXHJcbiAgLmJ0bi1za2V3ZWQge1xyXG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gICAgdHJhbnNmb3JtOiBza2V3KC0xMGRlZyk7XHJcbiAgICBwYWRkaW5nOiAwLjVyZW0gMS4ycmVtO1xyXG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XHJcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICBjb2xvcjogI2ZmZjtcclxuICAgIGJhY2tncm91bmQtY29sb3I6ICMwMDdiZmY7XHJcbiAgICBib3JkZXI6IG5vbmU7XHJcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XHJcbiAgICB0cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlO1xyXG59XHJcblxyXG5cclxuICAucGFuZWwtYnRuLWFyZWEgLmJ0biB7XHJcbiAgICBtYXJnaW4tbGVmdDogMjBweDtcclxuICAgIG1hcmdpbi1ib3R0b206IDEwcHg7XHJcbiAgfVxyXG4gIFxyXG4gIC5jb250cmFjdC1tYWluLXRpdGxlIHtcclxuICAgIGZvbnQtc2l6ZTogMi4yMjIyMjIyMjIycmVtO1xyXG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgbWFyZ2luLWJvdHRvbTogMTZweDtcclxuICB9IiwiLypcclxuICogVGl0bGU6ICAgTWlyYWNsZSB8IFJlc3BvbnNpdmUgTXVsdGktUHVycG9zZSBIVE1MNSBUZW1wbGF0ZSAtIFJlc3BvbnNpdmUgU3R5bGUgZmlsZVxyXG4gKiBBdXRob3I6ICBodHRwOi8vdGhlbWVmb3Jlc3QubmV0L3VzZXIvc29hcHRoZW1lXHJcbiAqL1xyXG4vKiB+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+XHJcbltUYWJsZSBvZiBjb250ZW50c11cclxuXHJcbjEuIE5ldyBHcmlkIFN5c3RlbVxyXG4yLiBBZGQgY2xlYXJmaXggaW4gdGhlIGdyaWQgc3lzdGVtXHJcbjMuIFN0eWxlcyBmb3IgZGV2aWNlcyg+PTEyMDBweClcclxuNC4gU3R5bGVzIGZvciBkZXZpY2VzKD49OTkycHggYW5kIDw9MTE5OXB4KVxyXG41LiBTdHlsZXMgZm9yIGRldmljZXMoPD0xMTk5cHgpXHJcbjYuIFN0eWxlcyBmb3IgZGV2aWNlcyg8PTk5MXB4IClcclxuNy4gU3R5bGVzIGZvciBkZXZpY2VzKD49NzY4cHggYW5kIDw9IDk5MXB4KVxyXG44LiBTdHlsZXMgZm9yIGRldmljZXMoPD03NjdweCApXHJcbjkuIFN0eWxlcyBmb3IgZGV2aWNlcyg+PTQ4MXB4IGFuZCA8PSA3NjdweClcclxuMTAuIFN0eWxlcyBmb3IgZGV2aWNlcyg8PTQ4MHB4IClcclxuMTEuIFN0eWxlcyBmb3IgZGV2aWNlcyg8PTMyMHB4IClcclxuXHJcblxyXG5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+ICovXHJcbi8qXHJcbiAqIFRpdGxlOiAgIE1pcmFjbGUgfCBSZXNwb25zaXZlIE11bHRpLVB1cnBvc2UgSFRNTDUgVGVtcGxhdGUgLSBTQ1NTIE1peGluXHJcbiAqIEF1dGhvcjogIGh0dHA6Ly90aGVtZWZvcmVzdC5uZXQvdXNlci9zb2FwdGhlbWVcclxuICovXHJcbi8qIH5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+flxyXG5bVGFibGUgb2YgY29udGVudHNdXHJcblxyXG4xKSBCT1JERVIgUkFESVVTXHJcbjIpIE9QQUNJVFlcclxuMykgQkFDS0dST1VORCBHUkFESUVOVFxyXG40KSBCT1ggU0hBRE9XXHJcbjUpIFRFWFQgU0hBRE9XXHJcbjYpIFRSQU5TSVRJT05cclxuNykgQU5JTUFUSU9OXHJcbjgpIFRSQU5TRk9STVxyXG45KSBERVNBVFVSQVRFXHJcbjEwKSBSRVRJTkFcclxuMTEpIEdSQURJRU5UIElNQUdFXHJcblxyXG5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+ICovXHJcbi8qIDEpIEJPUkRFUiBSQURJVVMgKi9cclxuLyogMikgT1BBQ0lUWSAqL1xyXG4vKiAzKSBCQUNLR1JPVU5EIEdSQURJRU5UICovXHJcbi8qIDQpIEJPWCBTSEFET1cgKi9cclxuLyogNSkgVEVYVCBTSEFET1cgKi9cclxuLyogNikgVFJBTlNJVElPTiAqL1xyXG4vKiA3KSBBTklNQVRJT04gKi9cclxuLyogOCkgVFJBTlNGT1JNICovXHJcbi8qIDkpIERFU0FUVVJBVEUgKi9cclxuLyogMTApIFJFVElOQSAqL1xyXG4vKiAxMSkgR1JBRElFTlQgSU1BR0UgKi9cclxuLyogMS4gTmV3IEdyaWQgU3lzdGVtICovXHJcblxyXG4vKiBBc3R1Y2UgcG91ciB1bmUgYm9ubmUgcmVzcG9uc2l2ZSBDU1NcclxuTG9yc3F1ZSBub3VzIHV0aWxpc29ucyBsZSBtYXgsIHBhcnRvbnMgZGVzIHZhbGV1cnMgbGVzIHBsdXMgZ3JhbmRlcyBcclxuYXV4IHZhbGV1cnMgbGVzIHBsdXMgcGV0aXRlcyA9PiBMRVMgREVSTklFUlMgU1RZTEVTIFBSSU1FUk9OVCBET05DICEgKi9cclxuXHJcbi8qIEFzdHVjZSBwb3VyIHVuZSBib25uZSByZXNwb25zaXZlIENTU1xyXG5Mb3JzcXVlIG5vdXMgdXRpbGlzb25zIGxlIG1pbiwgcGFydG9ucyBkZXMgdmFsZXVycyBsZXMgcGx1cyBwZXRpdGVzIFxyXG5hdXggdmFsZXVycyBsZXMgcGx1cyBncmFuZGVzID0+IExFUyBERVJOSUVSUyBTVFlMRVMgUFJJTUVST05UIERPTkMgISAqL1xyXG5cclxuZGl2I25hdmJhcnNQLnNob3crZGl2I3Byb2ZpbGUtcGljMiB7XHJcbiAgICBtYXJnaW46IGF1dG87XHJcbiAgfVxyXG4gIFxyXG4gICAgICBAbWVkaWEgKG1heC13aWR0aDogMzgycHgpIHtcclxuICAgICAgICAjcHJvZmlsZS1waWMyIHtcclxuICAgICAgICAgIG1hcmdpbjogYXV0bztcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICBcclxuICBcclxuICBcclxuICAvKiBQcmlzIGF2ZWMgbGUgQ1NTIGRlcyBwYW5lbHMgKi9cclxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiAxNDQwcHgpIHtcclxuICAgICAgLnBhbmVsIC5wYW5lbC1idG4tYXJlYSAuYnRuIHtcclxuICAgICAgICAgIG1hcmdpbi1ib3R0b206IDEwcHg7XHJcbiAgICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgfVxyXG4gICAgXHJcbiAgICAgIC5wYW5lbCAucGFuZWwtdGl0bGUge1xyXG4gICAgICAgIGZvbnQtc2l6ZTogMThweDtcclxuICAgICAgfVxyXG4gIFxyXG4gICAgICAucGFuZWwgLnBhbmVsLXRleHQge1xyXG4gICAgICAgICAgZm9udC1zaXplOiAxM3B4O1xyXG4gICAgICB9XHJcbiAgXHJcbiAgfVxyXG4gIFxyXG4gIFxyXG4gIC8qIDUuIFN0eWxlcyBmb3IgZGV2aWNlcyg8PTExOTlweCkgKi9cclxuICBAbWVkaWEgKG1heC13aWR0aDogMTE5OXB4KSB7XHJcbiAgICBbY2xhc3NePVwiY29sLWxnLVwiXS5wdWxsLWxlZnQsIFtjbGFzc149XCJjb2wtbGctXCJdLnB1bGwtcmlnaHQge1xyXG4gICAgICBmbG9hdDogbm9uZSAhaW1wb3J0YW50OyB9XHJcbiAgXHJcbiAgICAudGVzdGltb25pYWxzLnN0eWxlMS5tdWx0aXBsZS1pdGVtcyAub3dsLWNvbnRyb2xzIC5vd2wtcHJldiB7XHJcbiAgICAgIGxlZnQ6IDE1cHg7IH1cclxuICAgIC50ZXN0aW1vbmlhbHMuc3R5bGUxLm11bHRpcGxlLWl0ZW1zIC5vd2wtY29udHJvbHMgLm93bC1uZXh0IHtcclxuICAgICAgcmlnaHQ6IDE1cHg7IH1cclxuICBcclxuICAvKiAgLmlzby1jb250YWluZXIge1xyXG4gICAgICAmLnN0eWxlLW1hc29ucnkge1xyXG4gICAgICAgICYuaXNvLWNvbC02IC5pc28taXRlbSB7XHJcbiAgICAgICAgICB3aWR0aDogMTkuOTglO1xyXG4gICAgICAgICAgJi5kb3VibGUtd2lkdGggeyB3aWR0aDogMzkuOTYlOyB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgICYuaXNvLWNvbC01IC5pc28taXRlbSB7XHJcbiAgICAgICAgICB3aWR0aDogMjQuOTglO1xyXG4gICAgICAgICAgJi5kb3VibGUtd2lkdGggeyB3aWR0aDogNDkuOTYlOyB9XHJcbiAgICAgICAgfVxyXG4gICAgICB9IH1cclxuICAgICAgKi9cclxuICAgICAgLmlzby1jb250YWluZXIuaXNvLWNvbC02IC5pc28taXRlbSB7XHJcbiAgICAgICAgd2lkdGg6IDIwJTsgfVxyXG4gICAgICAgIC5pc28tY29udGFpbmVyLmlzby1jb2wtNiAuaXNvLWl0ZW0uZG91YmxlLXdpZHRoIHtcclxuICAgICAgICAgIHdpZHRoOiA0MCU7IH1cclxuICAgICAgLmlzby1jb250YWluZXIuaXNvLWNvbC01IC5pc28taXRlbSB7XHJcbiAgICAgICAgd2lkdGg6IDI1JTsgfVxyXG4gICAgICAgIC5pc28tY29udGFpbmVyLmlzby1jb2wtNSAuaXNvLWl0ZW0uZG91YmxlLXdpZHRoIHtcclxuICAgICAgICAgIHdpZHRoOiA1MCU7IH0gfVxyXG4gIFxyXG4gIFxyXG4gIFxyXG4gIC8qIDYuIFN0eWxlcyBmb3IgZGV2aWNlcyg8PTk5MXB4ICkgKi9cclxuICBAbWVkaWEgKG1heC13aWR0aDogOTkxcHgpIHtcclxuICAgIC5oaWRkZW4tbW9iaWxlIHtcclxuICAgICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9XHJcbiAgXHJcbiAgICBbY2xhc3NePVwiY29sLW1kLVwiXS5wdWxsLWxlZnQsIFtjbGFzc149XCJjb2wtbWQtXCJdLnB1bGwtcmlnaHQsIFtjbGFzcyo9XCIgY29sLW1kLVwiXS5wdWxsLWxlZnQsIFtjbGFzcyo9XCIgY29sLW1kLVwiXS5wdWxsLXJpZ2h0IHtcclxuICAgICAgZmxvYXQ6IG5vbmUgIWltcG9ydGFudDsgfVxyXG4gIFxyXG4gICAgLmNvbnRhaW5lciB7XHJcbiAgICAgIC8qIHdpZHRoOiBhdXRvOyAqL1xyXG4gICAgICBwYWRkaW5nLWxlZnQ6IDIwcHg7XHJcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDIwcHg7IH1cclxuICBcclxuICAgIC5jYWxsb3V0LWJveCB7XHJcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjsgfVxyXG4gICAgICAuY2FsbG91dC1ib3ggLmNhbGxvdXQtY29udGVudCwgLmNhbGxvdXQtYm94IC5jYWxsb3V0LXRleHQsIC5jYWxsb3V0LWJveCAuY2FsbG91dC1hY3Rpb24ge1xyXG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgIHBhZGRpbmc6IDA7IH1cclxuICAgICAgLmNhbGxvdXQtYm94LnN0eWxlMSAuY2FsbG91dC1ib3gtd3JhcHBlciB7XHJcbiAgICAgICAgcGFkZGluZzogMjBweCAwIDA7IH1cclxuICAgICAgLmNhbGxvdXQtYm94LnN0eWxlMSAuY2FsbG91dC10ZXh0OmFmdGVyIHtcclxuICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICBjb250ZW50OiBcIlwiO1xyXG4gICAgICAgIGhlaWdodDogMXB4O1xyXG4gICAgICAgIGJhY2tncm91bmQ6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4xKTtcclxuICAgICAgICBtYXJnaW46IDAgYXV0byAyMHB4O1xyXG4gICAgICAgIHdpZHRoOiAzMDBweDsgfVxyXG4gICAgICAuY2FsbG91dC1ib3guc3R5bGUxIC5jYWxsb3V0LXRleHQgaDIge1xyXG4gICAgICAgIGJvcmRlci1yaWdodDogbm9uZTtcclxuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwO1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XHJcbiAgICAgICAgZm9udC1zaXplOiAyLjVlbTsgfVxyXG4gICAgICAuY2FsbG91dC1ib3guc3R5bGUxIC5jYWxsb3V0LXN0cmlwZS1jb250YWluZXIge1xyXG4gICAgICAgIHBhZGRpbmc6IDA7IH1cclxuICAgICAgLmNhbGxvdXQtYm94LnN0eWxlMSAuY2FsbG91dC1zdHJpcGUge1xyXG4gICAgICAgIHBvc2l0aW9uOiBzdGF0aWM7XHJcbiAgICAgICAgcGFkZGluZzogMTVweCAyMHB4OyB9XHJcbiAgICAgICAgLmNhbGxvdXQtYm94LnN0eWxlMSAuY2FsbG91dC1zdHJpcGUgaW1nIHtcclxuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgICAgbWFyZ2luOiAwIGF1dG8gNXB4OyB9XHJcbiAgICAgICAgLmNhbGxvdXQtYm94LnN0eWxlMSAuY2FsbG91dC1zdHJpcGU6YWZ0ZXIge1xyXG4gICAgICAgICAgZGlzcGxheTogbm9uZTsgfVxyXG4gICAgICAuY2FsbG91dC1ib3guc3R5bGUyLCAuY2FsbG91dC1ib3guc3R5bGUzIHtcclxuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cclxuICAgICAgICAuY2FsbG91dC1ib3guc3R5bGUyIC5jYWxsb3V0LWFjdGlvbiwgLmNhbGxvdXQtYm94LnN0eWxlMyAuY2FsbG91dC1hY3Rpb24ge1xyXG4gICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgICAgICAgbWFyZ2luLXRvcDogMzBweDsgfVxyXG4gIFxyXG4gICAgI2hlYWRlciB7XHJcbiAgICAgIGJhY2tncm91bmQ6ICMwZjI1NDE7XHJcbiAgICAgIGhlaWdodDogNzVweDsgfVxyXG4gICAgICAjaGVhZGVyIC5sb2dvIHtcclxuICAgICAgICBtYXJnaW46IDAgIWltcG9ydGFudDsgfVxyXG4gICAgICAgICNoZWFkZXIgLmxvZ28gYSB7XHJcbiAgICAgICAgICBjb2xvcjogI2ZmZiAhaW1wb3J0YW50OyB9XHJcbiAgICAgICNoZWFkZXIgLmJyYW5kaW5nIHtcclxuICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0ICFpbXBvcnRhbnQ7IH1cclxuICAgICAgI2hlYWRlciAuaGVhZGVyLXRvcC1uYXYgPiBsaSB7XHJcbiAgICAgICAgbWFyZ2luOiAwOyB9XHJcbiAgICAgICAgI2hlYWRlciAuaGVhZGVyLXRvcC1uYXYgPiBsaSA+IGEge1xyXG4gICAgICAgICAgbGluZS1oZWlnaHQ6IDc1cHg7XHJcbiAgICAgICAgICBwYWRkaW5nOiAwIDVweDsgfVxyXG4gICAgICAgICAgI2hlYWRlciAuaGVhZGVyLXRvcC1uYXYgPiBsaSA+IGEgLmZhIHtcclxuICAgICAgICAgICAgY29sb3I6ICM0NTViNzk7XHJcbiAgICAgICAgICAgIGJvcmRlci1jb2xvcjogIzQ1NWI3OTtcclxuICAgICAgICAgICAgLW1vei10cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlIDBzO1xyXG4gICAgICAgICAgICAtby10cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlIDBzO1xyXG4gICAgICAgICAgICAtd2Via2l0LXRyYW5zaXRpb246IGFsbCAwLjNzIGVhc2UgMHM7XHJcbiAgICAgICAgICAgIC1tcy10cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlIDBzO1xyXG4gICAgICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlIDBzO1xyXG4gIH1cclxuICAgICAgICAjaGVhZGVyIC5oZWFkZXItdG9wLW5hdiA+IGxpOmhvdmVyIC5mYSB7XHJcbiAgICAgICAgICBjb2xvcjogI2ZmZjtcclxuICAgICAgICAgIGJvcmRlci1jb2xvcjogI2ZmZjsgfVxyXG4gICAgICAgICNoZWFkZXIgLmhlYWRlci10b3AtbmF2ID4gbGk6bGFzdC1jaGlsZCA+IGEge1xyXG4gICAgICAgICAgcGFkZGluZy1yaWdodDogMDsgfVxyXG4gICAgIC8qICNoZWFkZXIgLmhlYWRlci10b3AtbmF2IC5taW5pLWNhcnQge1xyXG4gICAgICAgIC5jYXJ0LWNvbnRlbnQgeyBiYWNrZ3JvdW5kOiByZ2JhKDExLCAyOCwgNTAsIDAuOSkgIWltcG9ydGFudDsgfSB9XHJcbiAgICAgICAgKi9cclxuICBcclxuICAgICAgICAjaGVhZGVyIC5oZWFkZXItdG9wLW5hdiAubWluaS1jYXJ0OmhvdmVyID4gYSB7XHJcbiAgICAgICAgICBiYWNrZ3JvdW5kOiAjMGIxYzMyICFpbXBvcnRhbnQ7IH1cclxuICAgICAgI2hlYWRlciAuaGVhZGVyLXRvcC1uYXYgLm1pbmktc2VhcmNoIC5tYWluLW5hdi1zZWFyY2gtZm9ybSB7XHJcbiAgICAgICAgd2lkdGg6IDI0NXB4OyB9XHJcbiAgICAgICAgI2hlYWRlciAuaGVhZGVyLXRvcC1uYXYgLm1pbmktc2VhcmNoIC5tYWluLW5hdi1zZWFyY2gtZm9ybSBpbnB1dFt0eXBlPXRleHRdIHtcclxuICAgICAgICAgIGJvcmRlci1jb2xvcjogIzQ1NWI3OTtcclxuICAgICAgICAgIGJhY2tncm91bmQ6ICMwZjI1NDE7XHJcbiAgICAgICAgICBjb2xvcjogIzQ1NWI3OTsgfVxyXG4gICAgICAgICNoZWFkZXIgLmhlYWRlci10b3AtbmF2IC5taW5pLXNlYXJjaCAubWFpbi1uYXYtc2VhcmNoLWZvcm0gZm9ybSBidXR0b24gLmZhIHtcclxuICAgICAgICAgIGNvbG9yOiAjNDU1Yjc5OyB9XHJcbiAgICAgICAgI2hlYWRlciAuaGVhZGVyLXRvcC1uYXYgLm1pbmktc2VhcmNoIC5tYWluLW5hdi1zZWFyY2gtZm9ybSBmb3JtIGJ1dHRvbjpob3ZlciAuZmEge1xyXG4gICAgICAgICAgY29sb3I6ICNmZmY7IH1cclxuICBcclxuICAgIC5wYWdlLXRpdGxlLWNvbnRhaW5lciAuYmFubmVyIHtcclxuICAgICAgbWFyZ2luLXRvcDogNzVweDsgfVxyXG4gIFxyXG4gICAgLmNvbWluZy1zb29uLXBhZ2UgLmNsb2NrIHtcclxuICAgICAgZm9udC1zaXplOiAxMjBweDsgfVxyXG4gIFxyXG4gIC8qICAuaXNvLWNvbnRhaW5lciB7XHJcbiAgICAgICYuc3R5bGUtbWFzb25yeSB7XHJcbiAgICAgICAgJi5pc28tY29sLTYgLmlzby1pdGVtIHtcclxuICAgICAgICAgIHdpZHRoOiAyNC45OCU7XHJcbiAgICAgICAgICAmLmRvdWJsZS13aWR0aCB7IHdpZHRoOiA0OS45NiU7IH1cclxuICAgICAgICB9XHJcbiAgICAgICAgJi5pc28tY29sLTUgLmlzby1pdGVtLCAmLmlzby1jb2wtNCAuaXNvLWl0ZW0ge1xyXG4gICAgICAgICAgd2lkdGg6IDMzLjMxJTtcclxuICAgICAgICAgICYuZG91YmxlLXdpZHRoIHsgd2lkdGg6IDY2LjYyJTsgfVxyXG4gICAgICAgIH1cclxuICAgICAgfSB9XHJcbiAgICAgICovXHJcbiAgICAgIC5pc28tY29udGFpbmVyLmlzby1jb2wtNiAuaXNvLWl0ZW0ge1xyXG4gICAgICAgIHdpZHRoOiAyNSU7IH1cclxuICAgICAgICAuaXNvLWNvbnRhaW5lci5pc28tY29sLTYgLmlzby1pdGVtLmRvdWJsZS13aWR0aCB7XHJcbiAgICAgICAgICB3aWR0aDogNTAlOyB9XHJcbiAgICAgIC5pc28tY29udGFpbmVyLmlzby1jb2wtNSAuaXNvLWl0ZW0sIC5pc28tY29udGFpbmVyLmlzby1jb2wtNCAuaXNvLWl0ZW0ge1xyXG4gICAgICAgIHdpZHRoOiAzMy4zMzMzJTsgfVxyXG4gICAgICAgIC5pc28tY29udGFpbmVyLmlzby1jb2wtNSAuaXNvLWl0ZW0uZG91YmxlLXdpZHRoLCAuaXNvLWNvbnRhaW5lci5pc28tY29sLTQgLmlzby1pdGVtLmRvdWJsZS13aWR0aCB7XHJcbiAgICAgICAgICB3aWR0aDogNjYuNjY2NiU7IH1cclxuICBcclxuICAgIC5yZXNwb25zaXZlLXNlY3Rpb24gLmNhbGxvdXQtaW1hZ2UtY29udGFpbmVyIC5jYWxsb3V0LWltYWdlIGltZyB7XHJcbiAgICAgIG1hcmdpbi10b3A6IDMwcHg7IH1cclxuICBcclxuICAgIC5zb2FwLWdhbGxlcnkuZnJhbWUtaG9sZGVyIHtcclxuICAgICAgd2lkdGg6IDcyMHB4O1xyXG4gICAgICBtYXJnaW46IDAgYXV0bztcclxuICAgICAgcGFkZGluZzogNDVweCAwIDUwcHg7IH1cclxuICAgICAgLnNvYXAtZ2FsbGVyeS5mcmFtZS1ob2xkZXIgLm93bC1jYXJvdXNlbCB7XHJcbiAgICAgICAgd2lkdGg6IDQ2NHB4OyB9XHJcbiAgICAgIC5zb2FwLWdhbGxlcnkuZnJhbWUtaG9sZGVyLmVmZmVjdC1zaGluZSAub3dsLWNhcm91c2VsOmJlZm9yZSB7XHJcbiAgICAgICAgcmlnaHQ6IC0yNXB4O1xyXG4gICAgICAgIHRvcDogLTI1cHg7XHJcbiAgICAgICAgbWF4LWhlaWdodDogMTAwJTtcclxuICAgICAgICB3aWR0aDogMjUwcHg7IH1cclxuICBcclxuICAgIC5mb3JjZWZ1bGx3aWR0aF93cmFwcGVyX3RwX2Jhbm5lciB7XHJcbiAgICAgIHBhZGRpbmctdG9wOiA3NHB4ICFpbXBvcnRhbnQ7IH1cclxuICBcclxuICAgIC5pbWFnZS13cmFwLXdpdGgtc2hhZG93OmJlZm9yZSB7XHJcbiAgICAgIGRpc3BsYXk6IG5vbmU7IH1cclxuICBcclxuICAgIC5hZGQtY2lyY2xlLWJveC1saW5lID4gLmNvbC1zbS02Om50aC1jaGlsZCgybikge1xyXG4gICAgICBib3JkZXItcmlnaHQ6IG5vbmU7IH1cclxuICBcclxuICAgIC53b29jb21tZXJjZSAuc2luZ2xlLXByb2R1Y3QtZGV0YWlscyAuc2luZ2xlLXZhcmlhdGlvbi13cmFwIHtcclxuICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7IH1cclxuICAgICAgLndvb2NvbW1lcmNlIC5zaW5nbGUtcHJvZHVjdC1kZXRhaWxzIC5zaW5nbGUtdmFyaWF0aW9uLXdyYXAgLnF0eS13cmFwLCAud29vY29tbWVyY2UgLnNpbmdsZS1wcm9kdWN0LWRldGFpbHMgLnNpbmdsZS12YXJpYXRpb24td3JhcCAudmFyaWF0aW9uLWFjdGlvbiB7XHJcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcclxuICAgICAgICBtYXJnaW4tYm90dG9tOiAzMHB4OyB9XHJcbiAgICAud29vY29tbWVyY2UgLnNpbmdsZS1wcm9kdWN0LWRldGFpbHMgLnNvY2lhbC13cmFwIHtcclxuICAgICAgZGlzcGxheTogYmxvY2s7IH1cclxuICAgICAgLndvb2NvbW1lcmNlIC5zaW5nbGUtcHJvZHVjdC1kZXRhaWxzIC5zb2NpYWwtd3JhcCBsYWJlbCwgLndvb2NvbW1lcmNlIC5zaW5nbGUtcHJvZHVjdC1kZXRhaWxzIC5zb2NpYWwtd3JhcCAuc29jaWFsLWljb25zIHtcclxuICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0OyB9XHJcbiAgICAgIC53b29jb21tZXJjZSAuc2luZ2xlLXByb2R1Y3QtZGV0YWlscyAuc29jaWFsLXdyYXAgbGFiZWwge1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IDVweDsgfSB9XHJcbiAgXHJcbiAgXHJcbiAgLyogOC4gU3R5bGVzIGZvciBkZXZpY2VzKDw9NzY3cHggKSAqL1xyXG4gIEBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xyXG4gICAgI2Zvb3RlciAuYmFjay10by10b3Age1xyXG4gICAgICBsZWZ0OiA1MCU7XHJcbiAgICAgIG1hcmdpbi1sZWZ0OiAtMjVweDsgfVxyXG4gIFxyXG4gICAgLnNhbWUtaGVpZ2h0ID4gKiB7XHJcbiAgICAgIGhlaWdodDogYXV0byAhaW1wb3J0YW50OyB9XHJcbiAgXHJcbiAgICBbY2xhc3NePVwiY29sLXNtLVwiXS5wdWxsLWxlZnQsIFtjbGFzc149XCJjb2wtc20tXCJdLnB1bGwtcmlnaHQsIFtjbGFzcyo9XCIgY29sLXNtLVwiXS5wdWxsLWxlZnQsIFtjbGFzcyo9XCIgY29sLXNtLVwiXS5wdWxsLXJpZ2h0IHtcclxuICAgICAgZmxvYXQ6IG5vbmUgIWltcG9ydGFudDsgfVxyXG4gIFxyXG4gICAgLmNhbGxvdXQtYm94LnN0eWxlMSAuY2FsbG91dC1ib3gtd3JhcHBlciB7XHJcbiAgICAgIHBhZGRpbmctdG9wOiA4MHB4OyB9XHJcbiAgICAuY2FsbG91dC1ib3guc3R5bGUxIC5jYWxsb3V0LXRleHQ6YWZ0ZXIge1xyXG4gICAgICBtYXJnaW46IDAgYXV0byAzMHB4O1xyXG4gICAgICB3aWR0aDogMjIwcHg7IH1cclxuICAgIC5jYWxsb3V0LWJveC5zdHlsZTEgLmNhbGxvdXQtdGV4dCBoMiB7XHJcbiAgICAgIG1hcmdpbi1ib3R0b206IDMwcHg7XHJcbiAgICAgIGZvbnQtc2l6ZTogMmVtOyB9XHJcbiAgICAuY2FsbG91dC1ib3guc3R5bGUxIC5jYWxsb3V0LXRleHQgaDMge1xyXG4gICAgICBtYXJnaW4tYm90dG9tOiAyNXB4O1xyXG4gICAgICBmb250LXNpemU6IDEuNjY2NmVtOyB9XHJcbiAgICAuY2FsbG91dC1ib3guc3R5bGUxIC5jYWxsb3V0LWFjdGlvbiB7XHJcbiAgICAgIG1hcmdpbi1ib3R0b206IDIwcHg7IH1cclxuICAgIC5jYWxsb3V0LWJveC5zdHlsZTMgLmNhbGxvdXQtdGV4dCAqIHtcclxuICAgICAgZm9udC1zaXplOiAxLjhlbTsgfVxyXG4gIFxyXG4gICAgI2Zvb3RlciAuZm9vdGVyLXdyYXBwZXIgLmNvbnRhaW5lciA+IC5yb3cgPiBkaXYge1xyXG4gICAgICBwYWRkaW5nLXRvcDogNDBweDtcclxuICAgICAgcGFkZGluZy1ib3R0b206IDQwcHg7IH1cclxuICAgICAgI2Zvb3RlciAuZm9vdGVyLXdyYXBwZXIgLmNvbnRhaW5lciA+IC5yb3cgPiBkaXYgKyBkaXYge1xyXG4gICAgICAgIHBhZGRpbmctdG9wOiAwOyB9XHJcbiAgICAgICNmb290ZXIgLmZvb3Rlci13cmFwcGVyIC5jb250YWluZXIgPiAucm93ID4gZGl2Omxhc3QtY2hpbGQge1xyXG4gICAgICAgIHBhZGRpbmctdG9wOiA0MHB4OyB9XHJcbiAgXHJcbiAgICAuc29hcC1nYWxsZXJ5LXRodW1iLXdyYXBwZXIsIC5wb3N0LXNsaWRlciB+IC5zb2FwLWdhbGxlcnktdGh1bWItd3JhcHBlciB7XHJcbiAgICAgIHBhZGRpbmc6IDEycHggMCAycHggMTBweDsgfVxyXG4gICAgICAuc29hcC1nYWxsZXJ5LXRodW1iLXdyYXBwZXIgPiBhLCAucG9zdC1zbGlkZXIgfiAuc29hcC1nYWxsZXJ5LXRodW1iLXdyYXBwZXIgPiBhIHtcclxuICAgICAgICB3aWR0aDogNjBweDtcclxuICAgICAgICBoZWlnaHQ6IDYwcHg7XHJcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAxMHB4O1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IDEwcHg7IH1cclxuICBcclxuICAgIC5hbmltYXRlZCB7XHJcbiAgICAgIHZpc2liaWxpdHk6IHZpc2libGU7IH1cclxuICBcclxuICAgIC5wcm9jZXNzLWJ1aWxkZXIgLnByb2Nlc3MtaXRlbSB7XHJcbiAgICAgIGZsb2F0OiBub25lO1xyXG4gICAgICB3aWR0aDogYXV0byAhaW1wb3J0YW50OyB9XHJcbiAgICAucHJvY2Vzcy1idWlsZGVyLnN0eWxlLXNpbXBsZSAucHJvY2Vzcy1pY29uOmJlZm9yZSwgLnByb2Nlc3MtYnVpbGRlci5zdHlsZS1zaW1wbGUgLnByb2Nlc3MtaWNvbjphZnRlciB7XHJcbiAgICAgIGRpc3BsYXk6IG5vbmU7IH1cclxuICBcclxuICAgIC5wb3N0LXNsaWRlci5zdHlsZTIgLnNsaWRlLXRleHQsIC5wb3N0LXNsaWRlci5zdHlsZTUgLnNsaWRlLXRleHQge1xyXG4gICAgICBkaXNwbGF5OiBub25lOyB9XHJcbiAgXHJcbiAgXHJcbiAgIC8qICAucG9zdC1zbGlkZXIuc3R5bGUyIC5vd2wtcHJldiwgLnBvc3Qtc2xpZGVyLnN0eWxlMiAub3dsLW5leHQsIC5wb3N0LXNsaWRlci5zdHlsZTI6aG92ZXIgLm93bC1wcmV2LCAucG9zdC1zbGlkZXIuc3R5bGUyOmhvdmVyIC5vd2wtbmV4dCB7XHJcbiAgICAgIG1hcmdpbi10b3A6IC0xM3B4O1xyXG4gICAgICB0b3A6IDUwJTtcclxuICAgICAgZmlsdGVyOiBhbHBoYShvcGFjaXR5PTEwMCk7XHJcbiAgICAgIC1tcy1maWx0ZXI6O1xyXG4gICAgICBcInByb2dpZDpEWEltYWdlVHJhbnNmb3JtLk1pY3Jvc29mdC5BbHBoYShPcGFjaXR5PTEwMClcIjtcclxuICAgICAgLW1vei1vcGFjaXR5OiAxO1xyXG4gICAgICAta2h0bWwtb3BhY2l0eTogMTtcclxuICAgICAgb3BhY2l0eTogMTtcclxuICAgICAgYm90dG9tOiBhdXRvO1xyXG4gICAgICAtd2Via2l0LWZpbHRlcjo7XHJcbiAgfSAqL1xyXG4gIFxyXG4gICAgLnByb2dyZXNzLWJhci1jb250YWluZXIuc2tpbGwtbWV0ZXIge1xyXG4gICAgICBkaXNwbGF5OiBibG9jazsgfVxyXG4gIFxyXG4gICAgLnByb2dyZXNzLWJhci5za2lsbC1tZXRlciB7XHJcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICBoZWlnaHQ6IGF1dG87XHJcbiAgICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XHJcbiAgICAgIHBhZGRpbmc6IDA7IH1cclxuICAgICAgLnByb2dyZXNzLWJhci5za2lsbC1tZXRlciAucHJvZ3Jlc3MtbGFiZWwsIC5wcm9ncmVzcy1iYXIuc2tpbGwtbWV0ZXIgLnByb2dyZXNzLXdyYXAge1xyXG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgIGhlaWdodDogMzlweDtcclxuICAgICAgICBsaW5lLWhlaWdodDogMzlweDsgfVxyXG4gICAgICAucHJvZ3Jlc3MtYmFyLnNraWxsLW1ldGVyIC5wcm9ncmVzcyB7XHJcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAxcHg7IH1cclxuICBcclxuICAgIC50ZXN0aW1vbmlhbHMuc3R5bGUyIC5jb250YWluZXIge1xyXG4gICAgICBwYWRkaW5nLWxlZnQ6IDA7XHJcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDA7IH1cclxuICAgIC50ZXN0aW1vbmlhbHMuc3R5bGUyIC5zYy1jb250ZW50LXdyYXBwZXIgLnNjLWNvbnRlbnQge1xyXG4gICAgICBkaXNwbGF5OiBibG9jazsgfVxyXG4gICAgICAudGVzdGltb25pYWxzLnN0eWxlMiAuc2MtY29udGVudC13cmFwcGVyIC5zYy1jb250ZW50IGgyLCAudGVzdGltb25pYWxzLnN0eWxlMiAuc2MtY29udGVudC13cmFwcGVyIC5zYy1jb250ZW50IHAge1xyXG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgIHBhZGRpbmc6IDA7IH1cclxuICAgICAgLnRlc3RpbW9uaWFscy5zdHlsZTIgLnNjLWNvbnRlbnQtd3JhcHBlciAuc2MtY29udGVudCBoMiB7XHJcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMjBweDsgfVxyXG4gICAgICAudGVzdGltb25pYWxzLnN0eWxlMiAuc2MtY29udGVudC13cmFwcGVyIC5zYy1jb250ZW50IHAge1xyXG4gICAgICAgIGZvbnQtc2l6ZTogMS44ZW07XHJcbiAgICAgICAgYm9yZGVyLWxlZnQ6IG5vbmU7IH1cclxuICBcclxuICAgIC5jb250YWN0LWFkZHJlc3Muc3R5bGUyIHtcclxuICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgIG1hcmdpbi1ib3R0b206IDUwcHg7IH1cclxuICAgICAgLmNvbnRhY3QtYWRkcmVzcy5zdHlsZTIgbGkge1xyXG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IDMwcHg7IH1cclxuICBcclxuICAgIC5lcnJvcjQwNCAuZXJyb3ItbWVzc2FnZS00MDQgc3BhbiB7XHJcbiAgICAgIGZvbnQtc2l6ZTogMjAwcHg7IH1cclxuICBcclxuICAgIC5jb21pbmctc29vbi1wYWdlIC5jbG9jayB7XHJcbiAgICAgIGZvbnQtc2l6ZTogODRweDsgfVxyXG4gIFxyXG4gICAvKiAuaXNvLWNvbnRhaW5lciB7XHJcbiAgICAgICYuc3R5bGUtbWFzb25yeSB7XHJcbiAgICAgICAgJi5pc28tY29sLTMgLmlzby1pdGVtLCAmLmlzby1jb2wtNCAuaXNvLWl0ZW0sICYuaXNvLWNvbC01IC5pc28taXRlbSB7XHJcbiAgICAgICAgICB3aWR0aDogNDkuOTglO1xyXG4gICAgICAgICAgJi5kb3VibGUtd2lkdGggeyB3aWR0aDogMTAwJTsgfVxyXG4gICAgICAgIH1cclxuICAgICAgICAmLmlzby1jb2wtNiAuaXNvLWl0ZW0ge1xyXG4gICAgICAgICAgd2lkdGg6IDMzLjMxJTtcclxuICAgICAgICAgICYuZG91YmxlLXdpZHRoIHsgd2lkdGg6IDY2LjYyJTsgfVxyXG4gICAgICAgIH1cclxuICAgICAgfSB9XHJcbiAgICAgICovXHJcbiAgICAgIC5pc28tY29udGFpbmVyLmlzby1jb2wtMyAuaXNvLWl0ZW0sIC5pc28tY29udGFpbmVyLmlzby1jb2wtNCAuaXNvLWl0ZW0sIC5pc28tY29udGFpbmVyLmlzby1jb2wtNSAuaXNvLWl0ZW0ge1xyXG4gICAgICAgIHdpZHRoOiA1MCU7IH1cclxuICAgICAgICAuaXNvLWNvbnRhaW5lci5pc28tY29sLTMgLmlzby1pdGVtLmRvdWJsZS13aWR0aCwgLmlzby1jb250YWluZXIuaXNvLWNvbC00IC5pc28taXRlbS5kb3VibGUtd2lkdGgsIC5pc28tY29udGFpbmVyLmlzby1jb2wtNSAuaXNvLWl0ZW0uZG91YmxlLXdpZHRoIHtcclxuICAgICAgICAgIHdpZHRoOiAxMDAlOyB9XHJcbiAgICAgIC5pc28tY29udGFpbmVyLmlzby1jb2wtNiAuaXNvLWl0ZW0ge1xyXG4gICAgICAgIHdpZHRoOiAzMy4zMzMzJTsgfVxyXG4gICAgICAgIC5pc28tY29udGFpbmVyLmlzby1jb2wtNiAuaXNvLWl0ZW0uZG91YmxlLXdpZHRoIHtcclxuICAgICAgICAgIHdpZHRoOiA2Ni42NjY2JTsgfVxyXG4gIFxyXG4gICAgLmJsb2ctcG9zdHMubGF5b3V0LXRpbWVsaW5lLmxheW91dC1mdWxsd2lkdGgge1xyXG4gICAgICBwYWRkaW5nLWxlZnQ6IDQwcHg7IH1cclxuICAgICAgLmJsb2ctcG9zdHMubGF5b3V0LXRpbWVsaW5lLmxheW91dC1mdWxsd2lkdGggLmlzby1jb250YWluZXIge1xyXG4gICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IGxlZnQgdG9wOyB9XHJcbiAgICAgICAgLmJsb2ctcG9zdHMubGF5b3V0LXRpbWVsaW5lLmxheW91dC1mdWxsd2lkdGggLmlzby1jb250YWluZXIgLmlzby1pdGVtOm50aC1jaGlsZCgyKSB7XHJcbiAgICAgICAgICBwYWRkaW5nLXRvcDogMTVweDsgfVxyXG4gICAgICAuYmxvZy1wb3N0cy5sYXlvdXQtdGltZWxpbmUubGF5b3V0LWZ1bGx3aWR0aCAubG9hZC1tb3JlIHtcclxuICAgICAgICBtYXJnaW4tbGVmdDogLTUwcHg7IH1cclxuICAgIC5ibG9nLXBvc3RzLmxheW91dC10aW1lbGluZSAuaXNvLWNvbC0yIC5pc28taXRlbSB7XHJcbiAgICAgIHdpZHRoOiAxMDAlOyB9XHJcbiAgXHJcbiAgICAucGFnZS10aXRsZS1jb250YWluZXIgLmJhbm5lciAuY2FwdGlvbiAuY2FwdGlvbi1sZyB7XHJcbiAgICAgIGZvbnQtc2l6ZTogNWVtOyB9XHJcbiAgICAucGFnZS10aXRsZS1jb250YWluZXIgLmJhbm5lciAuY2FwdGlvbiAuY2FwdGlvbi1zbSB7XHJcbiAgICAgIGZvbnQtc2l6ZTogMWVtOyB9XHJcbiAgICAucGFnZS10aXRsZS1jb250YWluZXIgLnN0eWxlNiAuY2FwdGlvbiAuY2FwdGlvbi14bCB7XHJcbiAgICAgIGZvbnQtc2l6ZTogNmVtOyB9XHJcbiAgICAucGFnZS10aXRsZS1jb250YWluZXIgLnN0eWxlNiAuY2FwdGlvbiAuY2FwdGlvbi1sZyB7XHJcbiAgICAgIGZvbnQtc2l6ZTogNWVtOyB9XHJcbiAgICAucGFnZS10aXRsZS1jb250YWluZXIgLnN0eWxlNiAuY2FwdGlvbiAuY2FwdGlvbi1tZCB7XHJcbiAgICAgIGZvbnQtc2l6ZTogMS4zMzMzZW07IH1cclxuICBcclxuICAgIC5ibG9nLXBvc3RzIC5wb3N0LWZ1bGwgLnBvc3QtY29udGVudCB7XHJcbiAgICAgIG1pbi1oZWlnaHQ6IDFweCAhaW1wb3J0YW50OyB9XHJcbiAgXHJcbiAgICAuc2luZ2xlLXBvc3QgLmFib3V0LWF1dGhvciB7XHJcbiAgICAgIGRpc3BsYXk6IGJsb2NrOyB9XHJcbiAgICAgIC5zaW5nbGUtcG9zdCAuYWJvdXQtYXV0aG9yIC5hdXRob3ItaW1nLCAuc2luZ2xlLXBvc3QgLmFib3V0LWF1dGhvciAuYWJvdXQtYXV0aG9yLWNvbnRlbnQge1xyXG4gICAgICAgIGRpc3BsYXk6IGJsb2NrOyB9XHJcbiAgICAgIC5zaW5nbGUtcG9zdCAuYWJvdXQtYXV0aG9yIC5hYm91dC1hdXRob3ItY29udGVudCB7XHJcbiAgICAgICAgcGFkZGluZzogMjBweCAwIDA7IH1cclxuICAgICAgICAuc2luZ2xlLXBvc3QgLmFib3V0LWF1dGhvciAuYWJvdXQtYXV0aG9yLWNvbnRlbnQgLnNvY2lhbC1pY29ucyB7XHJcbiAgICAgICAgICBmbG9hdDogbm9uZTsgfVxyXG4gIFxyXG4gICAgLnByb2dyZXNzLWJhci1jb250YWluZXIuc3R5bGUtdmVydGljYWwge1xyXG4gICAgICBoZWlnaHQ6IDQwMHB4O1xyXG4gICAgICBtYXJnaW4tbGVmdDogLTVweDtcclxuICAgICAgbWFyZ2luLXJpZ2h0OiAtNXB4OyB9XHJcbiAgICAgIC5wcm9ncmVzcy1iYXItY29udGFpbmVyLnN0eWxlLXZlcnRpY2FsIC5wcm9ncmVzcy1iYXItd3JhcHBlciB7XHJcbiAgICAgICAgYm9yZGVyLXNwYWNpbmc6IDVweCAwOyB9XHJcbiAgICAgIC5wcm9ncmVzcy1iYXItY29udGFpbmVyLnN0eWxlLXZlcnRpY2FsIC5wcm9ncmVzcy1iYXIgLnByb2dyZXNzLWxhYmVsLCAucHJvZ3Jlc3MtYmFyLWNvbnRhaW5lci5zdHlsZS12ZXJ0aWNhbCAucHJvZ3Jlc3MtYmFyIC5wcm9ncmVzcy1wZXJjZW50IHtcclxuICAgICAgICBmb250LXNpemU6IDFlbTsgfVxyXG4gIFxyXG4gICAgLnRhYi1jb250YWluZXIuc3R5bGUxIC50YWJzLCAudGFiLWNvbnRhaW5lci5zdHlsZTIgLnRhYnMge1xyXG4gICAgICBmbG9hdDogbm9uZTtcclxuICAgICAgZGlzcGxheTogYmxvY2s7IH1cclxuICAgICAgLnRhYi1jb250YWluZXIuc3R5bGUxIC50YWJzIGxpLCAudGFiLWNvbnRhaW5lci5zdHlsZTIgLnRhYnMgbGkge1xyXG4gICAgICAgIGZsb2F0OiBub25lO1xyXG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgIHdpZHRoOiBhdXRvOyB9XHJcbiAgLyogIC50YWItY29udGFpbmVyLnZlcnRpY2FsLXRhYiwgLnRhYi1jb250YWluZXIudmVydGljYWwtdGFiLTEge1xyXG4gICAgICAudGFiLWNvbnRlbnQgeyBwYWRkaW5nLXRvcDogMzBweDsgfSB9IFxyXG4gICAgICAqL1xyXG4gICAgICAudGFiLWNvbnRhaW5lci52ZXJ0aWNhbC10YWIgLnRhYnMsIC50YWItY29udGFpbmVyLnZlcnRpY2FsLXRhYi0xIC50YWJzIHtcclxuICAgICAgICBmbG9hdDogbm9uZTsgfVxyXG4gICAgLnRhYi1jb250YWluZXIudHJhbnNwYXJlbnQtdGFiIC50YWJzIHtcclxuICAgICAgZmxvYXQ6IG5vbmU7XHJcbiAgICAgIGRpc3BsYXk6IGJsb2NrOyB9XHJcbiAgICAgIC50YWItY29udGFpbmVyLnRyYW5zcGFyZW50LXRhYiAudGFicyBsaSB7XHJcbiAgICAgICAgZmxvYXQ6IG5vbmU7XHJcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgd2lkdGg6IGF1dG87IH1cclxuICBcclxuICAgIC5zdC10YWJsZS5ibG9jay1zbXMge1xyXG4gICAgICBkaXNwbGF5OiBibG9jazsgfVxyXG4gICAgICAuc3QtdGFibGUuYmxvY2stc21zIC5zdC10ZCB7XHJcbiAgICAgICAgZGlzcGxheTogYmxvY2s7IH1cclxuICBcclxuICAgIC5pbWFnZS1iYW5uZXIgLmNhcHRpb24td3JhcHBlciB7XHJcbiAgICAgIHBvc2l0aW9uOiBzdGF0aWM7IH1cclxuICAgICAgLmltYWdlLWJhbm5lciAuY2FwdGlvbi13cmFwcGVyLnBvc2l0aW9uLWxlZnQsIC5pbWFnZS1iYW5uZXIgLmNhcHRpb24td3JhcHBlci5wb3NpdGlvbi1yaWdodCB7XHJcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlOyB9XHJcbiAgICAgICAgLmltYWdlLWJhbm5lciAuY2FwdGlvbi13cmFwcGVyLnBvc2l0aW9uLWxlZnQgaDIsIC5pbWFnZS1iYW5uZXIgLmNhcHRpb24td3JhcHBlci5wb3NpdGlvbi1yaWdodCBoMiB7XHJcbiAgICAgICAgICBmb250LXNpemU6IDVlbTsgfVxyXG4gICAgLmltYWdlLWJhbm5lciAuaW1hZ2UtY29udGFpbmVyLnN0eWxlLWFicyB7XHJcbiAgICAgIHBvc2l0aW9uOiBzdGF0aWM7IH1cclxuICAgICAgLmltYWdlLWJhbm5lciAuaW1hZ2UtY29udGFpbmVyLnN0eWxlLWFicy5wb3NpdGlvbi1yaWdodCwgLmltYWdlLWJhbm5lciAuaW1hZ2UtY29udGFpbmVyLnN0eWxlLWFicy5wb3NpdGlvbi1sZWZ0IHtcclxuICAgICAgICBtYXgtd2lkdGg6IDEwMCU7IH1cclxuICBcclxuICAgIC5zb2FwLWdhbGxlcnkuZnJhbWUtaG9sZGVyIHtcclxuICAgICAgd2lkdGg6IDQ1MHB4O1xyXG4gICAgICBtYXJnaW46IDAgYXV0bztcclxuICAgICAgcGFkZGluZzogMjhweCAwIDMxcHg7IH1cclxuICAgICAgLnNvYXAtZ2FsbGVyeS5mcmFtZS1ob2xkZXIgLm93bC1jYXJvdXNlbCB7XHJcbiAgICAgICAgd2lkdGg6IDI5MHB4OyB9XHJcbiAgICAgIC5zb2FwLWdhbGxlcnkuZnJhbWUtaG9sZGVyLmVmZmVjdC1zaGluZSAub3dsLWNhcm91c2VsOmJlZm9yZSB7XHJcbiAgICAgICAgcmlnaHQ6IC0xNnB4O1xyXG4gICAgICAgIHRvcDogLTE2cHg7XHJcbiAgICAgICAgbWF4LWhlaWdodDogMTAwJTtcclxuICAgICAgICB3aWR0aDogMTYwcHg7IH1cclxuICAgICAgLnNvYXAtZ2FsbGVyeS5mcmFtZS1ob2xkZXIgLm93bC1idXR0b25zIC5vd2wtcHJldiB7XHJcbiAgICAgICAgbGVmdDogLTgwcHg7IH1cclxuICAgICAgLnNvYXAtZ2FsbGVyeS5mcmFtZS1ob2xkZXIgLm93bC1idXR0b25zIC5vd2wtbmV4dCB7XHJcbiAgICAgICAgcmlnaHQ6IC04MHB4OyB9XHJcbiAgXHJcbiAgICAjZm9vdGVyIC5jb3B5cmlnaHQtYXJlYSB7XHJcbiAgICAgIGRpc3BsYXk6IGJsb2NrOyB9XHJcbiAgICAgICNmb290ZXIgLmNvcHlyaWdodC1hcmVhIC5zZWNvbmRhcnktbWVudSwgI2Zvb3RlciAuY29weXJpZ2h0LWFyZWEgLmNvcHlyaWdodCB7XHJcbiAgICAgICAgZGlzcGxheTogYmxvY2s7IH1cclxuICAgICAgI2Zvb3RlciAuY29weXJpZ2h0LWFyZWEgLnNlY29uZGFyeS1tZW51IHtcclxuICAgICAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xyXG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjsgfVxyXG4gICAgICAgICNmb290ZXIgLmNvcHlyaWdodC1hcmVhIC5zZWNvbmRhcnktbWVudSAubmF2IHtcclxuICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jazsgfVxyXG4gICAgICAjZm9vdGVyIC5jb3B5cmlnaHQtYXJlYSAuY29weXJpZ2h0IHtcclxuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cclxuICBcclxuICAgIC5hZHMtY2Fyb3VzZWwgLmltYWdlLWJhbm5lciAuY2FwdGlvbi13cmFwcGVyIHtcclxuICAgICAgbWF4LXdpZHRoOiA2MCU7XHJcbiAgICAgIHBhZGRpbmctbGVmdDogMTBweDsgfVxyXG4gIFxyXG4gICAgLmFkcy1jYXJvdXNlbCAuY2FwdGlvbnMgLnRpdGxlIHtcclxuICAgICAgZm9udC1zaXplOiAyZW07IH1cclxuICBcclxuICAgIC5hZGQtY2lyY2xlLWJveC1saW5lID4gLmNvbC1zbS02IHtcclxuICAgICAgYm9yZGVyLXJpZ2h0OiBub25lOyB9XHJcbiAgICAuYWRkLWNpcmNsZS1ib3gtbGluZSA+IC5jb2wtc21zLTY6bnRoLWNoaWxkKDJuKSB7XHJcbiAgICAgIGJvcmRlci1yaWdodDogbm9uZTsgfVxyXG4gIFxyXG4gICAgLndvb2NvbW1lcmNlLXRhYnMudGFiLWNvbnRhaW5lciB7XHJcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICB3aWR0aDogYXV0bzsgfVxyXG4gICAgICAud29vY29tbWVyY2UtdGFicy50YWItY29udGFpbmVyIHVsLnRhYnMsIC53b29jb21tZXJjZS10YWJzLnRhYi1jb250YWluZXIgLnBhbmVsLmFjdGl2ZSB7XHJcbiAgICAgICAgZGlzcGxheTogYmxvY2s7IH1cclxuICBcclxuICAgIC5wcm9kdWN0LXdyYXBwZXIgLnBvc3QtZmlsdGVycyAuZmlsdGVyLXRpdGxlIHtcclxuICAgICAgZmxvYXQ6IG5vbmU7IH1cclxuICBcclxuICAgIC53b29jb21tZXJjZSAucXR5LXdyYXAgLmlucHV0LXRleHQge1xyXG4gICAgICB3aWR0aDogNTBweDsgfVxyXG4gIFxyXG4gICAgLmRhc2hib2FyZCB0YWJsZS5teS13aXNobGlzdCB0Ym9keSB0ZCB7XHJcbiAgICAgIHBhZGRpbmctbGVmdDogNXB4O1xyXG4gICAgICBwYWRkaW5nLXJpZ2h0OiA1cHg7IH1cclxuICBcclxuICAgIC5kYXNoYm9hcmQgdGFibGUuc2hvcF90YWJsZSB0aCwgLmRhc2hib2FyZCB0YWJsZS5zaG9wX3RhYmxlIHRkIHtcclxuICAgICAgcGFkZGluZy1sZWZ0OiA1cHg7IH1cclxuICBcclxuICAgIC5kYXNoYm9hcmQgdGFibGUubXlfcHJvZHVjdF9yZXZpZXdzIHRib2R5IHRkIHtcclxuICAgICAgcGFkZGluZzogMTBweDsgfSBcclxuICAgIFxyXG4gICAgICAuc20tbWItMzAge1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IDMwcHg7XHJcbiAgICB9XHJcbiAgICBcclxuICAgIC5mb290ZXItdG9wIHtcclxuICAgICAgICBwYWRkaW5nOiA1MHB4IDBweDtcclxuICAgIH1cclxuICBcclxuICAgICAgICAgICAgLnBhbmVsIHtcclxuICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogMHB4O1xyXG4gICAgICAgICAgICAgIGZsb2F0OiBub25lO1xyXG4gICAgICAgICAgICB9XHJcbiAgXHJcbiAgICAgICAgICAgIC5wYW5lbHMtY29udGFpbmVyIHtcclxuICAgICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XHJcbiAgICAgICAgICAgICAgLyogbWFyZ2luLXRvcDogMTYwcHg7ICovXHJcbiAgICAgICAgICAgICAgbWFyZ2luLXRvcDogOHB4O1xyXG4gICAgICAgICAgICB9XHJcbiAgXHJcbiAgICAgICAgICAgIC5hbGlnbi1zZWxmLWVuZCB7XHJcbiAgICAgICAgICAgICAgYWxpZ24tc2VsZjpub25lO1xyXG4gICAgICAgICAgICB9XHJcbiAgXHJcbiAgLyogICAgICAgICAgIC5uYXZiYXItbmF2IHtcclxuICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICAgICAgfVxyXG4gICAqL1xyXG4gICAgICAgICAgICAucGFuZWwtaW5uZXIge1xyXG4gICAgICAgICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBub25lO1xyXG4gICAgICAgICAgICAgIC1tcy10cmFuc2Zvcm06IG5vbmU7XHJcbiAgICAgICAgICAgICAgdHJhbnNmb3JtOiBub25lO1xyXG4gICAgICAgICAgICAgIC1tb3otdHJhbnNmb3JtOiBub25lO1xyXG4gICAgICAgICAgICAgIC1vLXRyYW5zZm9ybTogbm9uZTtcclxuICB9XHJcbiAgICAgICAgICAgIC5wYW5lbC0wLCAucGFuZWwtMSwgLnBhbmVsLTIsIC5wYW5lbC0zIHtcclxuICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAxLjIzZW07XHJcbiAgICAgICAgICAgIH0gXHJcbiAgXHJcbiAgICAgICAgICAgIC5zaXRlLWhlYWRlci1tYWluLXdyYXBwZXIge1xyXG4gICAgICAgICAgICAgIGJhY2tncm91bmQ6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMSk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICBcclxuICAgICAgICAgICAgLnNpdGUtaGVhZGVyIHtcclxuICAgICAgICAgICAgICBtYXgtaGVpZ2h0OiAxNTAwcHg7XHJcbiAgICAgICAgICAgIH1cclxuICBcclxuICAvKiAgICAgICAgICAgI25hdmJhcnNQIHtcclxuICAgICAgICAgICAgICBtYXgtaGVpZ2h0OiAyMDBweDtcclxuICAgICAgICAgICAgICB6LWluZGV4OiAxMDA7XHJcbiAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgICAgICB9ICovXHJcbiAgXHJcbiAgICAgICAgICAgIC8qIC5wYW5lbC1jYXB0aW9uIHtcclxuICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAtMS4yM2VtO1xyXG4gICAgICAgICAgICB9ICovXHJcbiAgI2hlYWRlcjEgLnNsb2dhbiB7XHJcbiAgICBkaXNwbGF5OiBub25lIWltcG9ydGFudDtcclxuICB9XHJcbiAgXHJcbiAgI3RvcHNvY2lhbC1saW5rIGEge1xyXG4gICAgbWFyZ2luLWxlZnQ6IDkwJTtcclxuICB9XHJcbiAgXHJcbiAgXHJcbiAgI2hlYWRlcjIubmF2YmFyIC5uYXZiYXItY29sbGFwc2Uuc2hvdyB1bCBsaSBhIHtcclxuICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgIG1hcmdpbjogMDtcclxuICAgICAgcGFkZGluZzogM3B4IDA7XHJcbiAgICAgIHdpZHRoOiAxMDAlO1xyXG4gIH1cclxuICBcclxuICBcclxuICAuZHJvcGRvd24tbWVudSB7XHJcbiAgIC8qICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2IoMjMxLCA3LCA3KTtcclxuICAgIHBhZGRpbmc6IDNweCAwcHg7XHJcbiAgICBwYWRkaW5nLXRvcDogMTBweDsgKi9cclxuICAgIHBhZGRpbmc6IDA7XHJcbiAgfVxyXG4gIFxyXG4gIFxyXG4gIFxyXG4gIFxyXG4gICAgfVxyXG4gIFxyXG4gIFxyXG4gIEBtZWRpYSAobWF4LXdpZHRoOiA1MDBweCkge1xyXG4gIFxyXG4gICNoZWFkZXIxIC5uYXZiYXItYnJhbmQsXHJcbiAgI3RvcHNvY2lhbC1saW5rIHtcclxuICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgYWxpZ24tY29udGVudDogY2VudGVyO1xyXG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgbWFyZ2luLXJpZ2h0OiAwcHg7XHJcbiAgfVxyXG4gIFxyXG4gICN0b3Bzb2NpYWwtbGluayBhIHtcclxuICAgIG1hcmdpbi1sZWZ0OiAwO1xyXG4gIH1cclxuICB9XHJcbiAgXHJcbiAgLyogMTAuIFN0eWxlcyBmb3IgZGV2aWNlcyg8PTQ4MHB4ICkgKi9cclxuICBAbWVkaWEgKG1heC13aWR0aDogNDgwcHgpIHtcclxuICAgIC5oaWRkZW4teHMge1xyXG4gICAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7IH1cclxuICBcclxuICAgIC5jb21pbmctc29vbi1wYWdlIC5jbG9jayB7XHJcbiAgICAgIGZvbnQtc2l6ZTogNTJweDsgfVxyXG4gIFxyXG4gIC8qICAuaXNvLWNvbnRhaW5lciB7XHJcbiAgICAgICYuc3R5bGUtbWFzb25yeSB7XHJcbiAgICAgICAgJi5pc28tY29sLTIgLmlzby1pdGVtLCAmLmlzby1jb2wtMyAuaXNvLWl0ZW0sICYuaXNvLWNvbC00IC5pc28taXRlbSwgJi5pc28tY29sLTUgLmlzby1pdGVtIHsgd2lkdGg6IDEwMCU7IH1cclxuICAgICAgICAmLmlzby1jb2wtNiAuaXNvLWl0ZW0ge1xyXG4gICAgICAgICAgd2lkdGg6IDQ5Ljk4JTtcclxuICAgICAgICAgICYuZG91YmxlLXdpZHRoIHsgd2lkdGg6IDEwMCU7IH1cclxuICAgICAgICB9XHJcbiAgICAgIH0gfSBcclxuICAgICAgKi9cclxuICAgICAgLmlzby1jb250YWluZXIuaXNvLWNvbC0yIC5pc28taXRlbSwgLmlzby1jb250YWluZXIuaXNvLWNvbC0zIC5pc28taXRlbSwgLmlzby1jb250YWluZXIuaXNvLWNvbC00IC5pc28taXRlbSwgLmlzby1jb250YWluZXIuaXNvLWNvbC01IC5pc28taXRlbSB7XHJcbiAgICAgICAgd2lkdGg6IDEwMCU7IH1cclxuICAgICAgLmlzby1jb250YWluZXIuaXNvLWNvbC02IC5pc28taXRlbSB7XHJcbiAgICAgICAgd2lkdGg6IDUwJTsgfVxyXG4gICAgICAgIC5pc28tY29udGFpbmVyLmlzby1jb2wtNiAuaXNvLWl0ZW0uZG91YmxlLXdpZHRoIHtcclxuICAgICAgICAgIHdpZHRoOiAxMDAlOyB9XHJcbiAgXHJcbiAgICAuc3QtdGFibGUuYmxvY2steHMge1xyXG4gICAgICBkaXNwbGF5OiBibG9jazsgfVxyXG4gICAgICAuc3QtdGFibGUuYmxvY2steHMgLnN0LXRkIHtcclxuICAgICAgICBkaXNwbGF5OiBibG9jazsgfVxyXG4gIFxyXG4gICAgdWwucHJvZHVjdHMubGF5b3V0LWxpc3QgLnByb2R1Y3QtaW1hZ2UsIHVsLnByb2R1Y3RzLmxheW91dC1saXN0IC5wcm9kdWN0LW1ldGEtd3JhcCB7XHJcbiAgICAgIGZsb2F0OiBub25lO1xyXG4gICAgICB3aWR0aDogYXV0bzsgfVxyXG4gICAgdWwucHJvZHVjdHMubGF5b3V0LWxpc3QgLnByb2R1Y3QtaW1hZ2Uge1xyXG4gICAgICBib3JkZXItcmlnaHQtd2lkdGg6IDJweDsgfVxyXG4gIFxyXG4gICAgLmltYWdlLWJhbm5lciAuY2FwdGlvbi13cmFwcGVyLnBvc2l0aW9uLWxlZnQgaDIsIC5pbWFnZS1iYW5uZXIgLmNhcHRpb24td3JhcHBlci5wb3NpdGlvbi1yaWdodCBoMiB7XHJcbiAgICAgIGZvbnQtc2l6ZTogM2VtOyB9XHJcbiAgICAuaW1hZ2UtYmFubmVyIC5jYXB0aW9uLXdyYXBwZXIucG9zaXRpb24tbGVmdCAuY2FwdGlvbnMsIC5pbWFnZS1iYW5uZXIgLmNhcHRpb24td3JhcHBlci5wb3NpdGlvbi1yaWdodCAuY2FwdGlvbnMge1xyXG4gICAgICB3aWR0aDogOTYlOyB9XHJcbiAgICAuaW1hZ2UtYmFubmVyIC5jYXB0aW9uLXdyYXBwZXIucG9zaXRpb24tbGVmdCAuYWN0aW9uLCAuaW1hZ2UtYmFubmVyIC5jYXB0aW9uLXdyYXBwZXIucG9zaXRpb24tcmlnaHQgLmFjdGlvbiB7XHJcbiAgICAgIGZvbnQtc2l6ZTogMC45MTY3ZW07IH1cclxuICBcclxuICAgIC5hZGQtY2lyY2xlLWJveC1saW5lID4gLmNvbC1zbXMtNiwgLmFkZC1jaXJjbGUtYm94LWxpbmUgLmNvbC1zbS02IHtcclxuICAgICAgYm9yZGVyLXJpZ2h0OiBub25lOyB9XHJcbiAgXHJcbiAgICAud29vY29tbWVyY2UgdGFibGUuc2hvcF90YWJsZSB0Ym9keSB0ZCBpbWcge1xyXG4gICAgICBkaXNwbGF5OiBub25lOyB9XHJcbiAgICAud29vY29tbWVyY2UgdGFibGUuc2hvcF90YWJsZSB0Ym9keSAucHJvZHVjdC1xdWFudGl0eSAucXR5IHtcclxuICAgICAgd2lkdGg6IDQwcHg7IH1cclxuICAgIC53b29jb21tZXJjZSB0YWJsZS5zaG9wX3RhYmxlIHRib2R5IC5hY3Rpb25zIHtcclxuICAgICAgdGV4dC1hbGlnbjogbGVmdDsgfVxyXG4gICAgICAud29vY29tbWVyY2UgdGFibGUuc2hvcF90YWJsZSB0Ym9keSAuYWN0aW9ucyAuY291cG9uIHtcclxuICAgICAgICBmbG9hdDogbm9uZTsgfVxyXG4gICAgLndvb2NvbW1lcmNlIHRhYmxlLnNob3BfdGFibGUgLmNvdXBvbiAuaW5wdXQtdGV4dCwgLndvb2NvbW1lcmNlIHRhYmxlLnNob3BfdGFibGUgLmJ0biB7XHJcbiAgICAgIHdpZHRoOiAxMDAlOyB9XHJcbiAgXHJcbiAgICAuc29hcC1nYWxsZXJ5LmZyYW1lLWhvbGRlciB7XHJcbiAgICAgIHdpZHRoOiAzMDBweDtcclxuICAgICAgbWFyZ2luOiAwIGF1dG87XHJcbiAgICAgIHBhZGRpbmc6IDE5cHggMCAyMXB4OyB9XHJcbiAgICAgIC5zb2FwLWdhbGxlcnkuZnJhbWUtaG9sZGVyIC5vd2wtY2Fyb3VzZWwge1xyXG4gICAgICAgIHdpZHRoOiAxOTNweDsgfVxyXG4gICAgICAuc29hcC1nYWxsZXJ5LmZyYW1lLWhvbGRlci5lZmZlY3Qtc2hpbmUgLm93bC1jYXJvdXNlbDpiZWZvcmUge1xyXG4gICAgICAgIHJpZ2h0OiAtMTFweDtcclxuICAgICAgICB0b3A6IC0xMXB4O1xyXG4gICAgICAgIG1heC1oZWlnaHQ6IDEwMCU7XHJcbiAgICAgICAgd2lkdGg6IDEwN3B4OyB9XHJcbiAgICAgIC5zb2FwLWdhbGxlcnkuZnJhbWUtaG9sZGVyIC5vd2wtYnV0dG9ucyAub3dsLXByZXYge1xyXG4gICAgICAgIGxlZnQ6IC04MHB4OyB9XHJcbiAgICAgIC5zb2FwLWdhbGxlcnkuZnJhbWUtaG9sZGVyIC5vd2wtYnV0dG9ucyAub3dsLW5leHQge1xyXG4gICAgICAgIHJpZ2h0OiAtODBweDsgfVxyXG4gIFxyXG4gICAgLmNvbW1lbnRsaXN0IC5jb21tZW50IC5hdXRob3ItaW1nIHtcclxuICAgICAgZmxvYXQ6IG5vbmU7XHJcbiAgICAgIG1hcmdpbi1ib3R0b206IDE1cHg7IH1cclxuICAgIC5jb21tZW50bGlzdCAuY29tbWVudCAuY29tbWVudC1jb250ZW50IHtcclxuICAgICAgcGFkZGluZy1sZWZ0OiAwOyB9IH1cclxuICBcclxuICBcclxuICBAbWVkaWEgIChtYXgtd2lkdGg6IDM5MXB4KSB7XHJcbiAgICAjZ3JlZXRpbmctbmF2IHtcclxuICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXIhaW1wb3J0YW50O1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAjcHJvZmlsZS1waWMge1xyXG4gICAgICBkaXNwbGF5OiBibG9jayFpbXBvcnRhbnQ7XHJcbiAgICB9XHJcbiAgfVxyXG4gIFxyXG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDM0N3B4KSB7XHJcbiAgICAjaGVhZGVyMSAucm93IC5jb2wge1xyXG4gICAgICBtYXJnaW4tbGVmdDogYXV0bztcclxuICAgICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xyXG4gICAgICBwYWRkaW5nLWxlZnQ6IGF1dG87XHJcbiAgICAgIHBhZGRpbmctcmlnaHQ6IGF1dG87XHJcbiAgICB9XHJcbiAgICAjaGVhZGVyMSBkaXYge1xyXG4gICAgICBtYXJnaW4tbGVmdDogMDtcclxuICAgIH1cclxuICBcclxuICAgICNoZWFkZXIyIHtcclxuICAgICAgcGFkZGluZy1sZWZ0OiBhdXRvO1xyXG4gICAgICBwYWRkaW5nLXJpZ2h0OiBhdXRvO1xyXG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICB9XHJcbiAgXHJcbiAgICAjaGVhZGVyMiBidXR0b24ge1xyXG4gICAgICBtYXJnaW4tbGVmdDogYXV0bztcclxuICAgICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xyXG4gICAgfVxyXG4gIFxyXG4gICAgICAgICAgICAgIC5wYW5lbHMtY29udGFpbmVyIHtcclxuICAgICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XHJcbiAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMjQwcHg7XHJcbiAgICAgICAgICAgIH1cclxuICB9XHJcbiAgXHJcbiAgXHJcbiAgQG1lZGlhIChtYXgtd2lkdGg6IDM2NHB4KSB7XHJcbiAgLnBhbmVscy1jb250YWluZXIge1xyXG4gICAgICBoZWlnaHQ6IDEwMCU7XHJcbiAgICAgIC8qIG1hcmdpbi10b3A6IDIwMHB4OyAqL1xyXG4gICAgICBtYXJnaW4tdG9wOiA4cHg7ICAgICAgICAgICAgICAgICAgICAgICAgXHJcbiAgICAgICAgICAgIH1cclxuICBcclxuICAgIC5zZWdtZW50LWZvdXIgZm9ybSAucm93IHtcclxuICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuICB9XHJcbiAgXHJcbiAgXHJcbiAgfVxyXG4gIFxyXG4gIC8qIDExLiBTdHlsZXMgZm9yIGRldmljZXMoPD0zMjBweCApICovXHJcbiAgQG1lZGlhIChtYXgtd2lkdGg6IDMyMHB4KSB7XHJcbiAgICAucGFnZS1sb2FkaW5nLXdyYXBwZXIgLnByb2dyZXNzLWJhciB7XHJcbiAgICAgIHdpZHRoOiAyNTBweDsgfVxyXG4gIFxyXG4gIC8qICAuaXNvLWNvbnRhaW5lciB7XHJcbiAgICAgICYuc3R5bGUtbWFzb25yeSB7XHJcbiAgICAgICAgJi5pc28tY29sLTYgLmlzby1pdGVtLCAmLmlzby1jb2wtNSAuaXNvLWl0ZW0geyB3aWR0aDogMTAwJTsgfVxyXG4gICAgICB9IH1cclxuICAgICAgKi9cclxuICAgICAgLmlzby1jb250YWluZXIuaXNvLWNvbC02IC5pc28taXRlbSwgLmlzby1jb250YWluZXIuaXNvLWNvbC01IC5pc28taXRlbSB7XHJcbiAgICAgICAgd2lkdGg6IDEwMCU7IH0gfVxyXG4gIFxyXG4gIFxyXG4gIC8qIEZJTiBEVSBUUkFWQUlMIEFWRUMgTEVTIEJPUk5FUyBTVVBFUklFVVJTICovXHJcbiAgXHJcbiAgXHJcbiAgLyogREVCVVQgRFUgVFJBVkFJTCBBVkVDIExFUyBCT1JORVMgSU5GRVJJRVVSRVMgKi9cclxuICBAbWVkaWEgKG1pbi13aWR0aDogNDgxcHgpIHtcclxuICAgIC8qIGFkZCBjbGVhcmZpeCBpbiB0aGUgZ3JpZCBzeXN0ZW0gKi9cclxuICAgIC5yb3cuYWRkLWNsZWFyZml4ID4gLmNvbC1zbXMtMjpudGgtY2hpbGQoMm4rMSkge1xyXG4gICAgICBjbGVhcjogbm9uZTsgfVxyXG4gICAgLnJvdy5hZGQtY2xlYXJmaXggPiAuY29sLXNtcy0yOm50aC1jaGlsZCgzbisxKSB7XHJcbiAgICAgIGNsZWFyOiBub25lOyB9XHJcbiAgICAucm93LmFkZC1jbGVhcmZpeCA+IC5jb2wtc21zLTI6bnRoLWNoaWxkKDRuKzEpIHtcclxuICAgICAgY2xlYXI6IG5vbmU7IH1cclxuICAgIC5yb3cuYWRkLWNsZWFyZml4ID4gLmNvbC1zbXMtMjpudGgtY2hpbGQoNm4rMSkge1xyXG4gICAgICBjbGVhcjogYm90aDsgfVxyXG4gIFxyXG4gICAgLnJvdy5hZGQtY2xlYXJmaXggPiAuY29sLXNtcy0zOm50aC1jaGlsZCgybisxKSB7XHJcbiAgICAgIGNsZWFyOiBub25lOyB9XHJcbiAgICAucm93LmFkZC1jbGVhcmZpeCA+IC5jb2wtc21zLTM6bnRoLWNoaWxkKDNuKzEpIHtcclxuICAgICAgY2xlYXI6IG5vbmU7IH1cclxuICAgIC5yb3cuYWRkLWNsZWFyZml4ID4gLmNvbC1zbXMtMzpudGgtY2hpbGQoNG4rMSkge1xyXG4gICAgICBjbGVhcjogYm90aDsgfVxyXG4gIFxyXG4gICAgLnJvdy5hZGQtY2xlYXJmaXggPiAuY29sLXNtcy00Om50aC1jaGlsZCgybisxKSB7XHJcbiAgICAgIGNsZWFyOiBub25lOyB9XHJcbiAgICAucm93LmFkZC1jbGVhcmZpeCA+IC5jb2wtc21zLTQ6bnRoLWNoaWxkKDNuKzEpIHtcclxuICAgICAgY2xlYXI6IGJvdGg7IH1cclxuICBcclxuICAgIC5yb3cuYWRkLWNsZWFyZml4ID4gLmNvbC1zbXMtNjpudGgtY2hpbGQoMm4rMSkge1xyXG4gICAgICBjbGVhcjogYm90aDsgfSB9XHJcbiAgXHJcbiAgQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XHJcbiAgICAvKiBhZGQgY2xlYXJmaXggaW4gdGhlIGdyaWQgc3lzdGVtICovXHJcbiAgICAucm93LmFkZC1jbGVhcmZpeCA+IC5jb2wtc20tMjpudGgtY2hpbGQoMm4rMSkge1xyXG4gICAgICBjbGVhcjogbm9uZTsgfVxyXG4gICAgLnJvdy5hZGQtY2xlYXJmaXggPiAuY29sLXNtLTI6bnRoLWNoaWxkKDNuKzEpIHtcclxuICAgICAgY2xlYXI6IG5vbmU7IH1cclxuICAgIC5yb3cuYWRkLWNsZWFyZml4ID4gLmNvbC1zbS0yOm50aC1jaGlsZCg0bisxKSB7XHJcbiAgICAgIGNsZWFyOiBub25lOyB9XHJcbiAgICAucm93LmFkZC1jbGVhcmZpeCA+IC5jb2wtc20tMjpudGgtY2hpbGQoNm4rMSkge1xyXG4gICAgICBjbGVhcjogYm90aDsgfVxyXG4gIFxyXG4gICAgLnJvdy5hZGQtY2xlYXJmaXggPiAuY29sLXNtLTM6bnRoLWNoaWxkKDJuKzEpIHtcclxuICAgICAgY2xlYXI6IG5vbmU7IH1cclxuICAgIC5yb3cuYWRkLWNsZWFyZml4ID4gLmNvbC1zbS0zOm50aC1jaGlsZCgzbisxKSB7XHJcbiAgICAgIGNsZWFyOiBub25lOyB9XHJcbiAgICAucm93LmFkZC1jbGVhcmZpeCA+IC5jb2wtc20tMzpudGgtY2hpbGQoNG4rMSkge1xyXG4gICAgICBjbGVhcjogYm90aDsgfVxyXG4gIFxyXG4gICAgLnJvdy5hZGQtY2xlYXJmaXggPiAuY29sLXNtLTQ6bnRoLWNoaWxkKDJuKzEpIHtcclxuICAgICAgY2xlYXI6IG5vbmU7IH1cclxuICAgIC5yb3cuYWRkLWNsZWFyZml4ID4gLmNvbC1zbS00Om50aC1jaGlsZCgzbisxKSB7XHJcbiAgICAgIGNsZWFyOiBib3RoOyB9XHJcbiAgXHJcbiAgICAucm93LmFkZC1jbGVhcmZpeCA+IC5jb2wtc20tNjpudGgtY2hpbGQoMm4rMSkge1xyXG4gICAgICBjbGVhcjogYm90aDsgfSBcclxuICAgIFxyXG4gIC8qICAgLm5hdmJhci1leHBhbmQtbWQgLm5hdmJhci1jb2xsYXBzZSB7XHJcbiAgICAgIGRpc3BsYXk6IC1tcy1mbGV4Ym94ICFpbXBvcnRhbnQ7XHJcbiAgICAgIGRpc3BsYXk6IGZsZXggIWltcG9ydGFudDtcclxuICAgICAgLW1zLWZsZXgtcHJlZmVycmVkLXNpemU6IGF1dG87XHJcbiAgICAgIGZsZXgtYmFzaXM6IGF1dG87XHJcbiAgfSAqL1xyXG4gIFxyXG4gIC5hY3Rpb25fYm94LXRpdGxlIHtcclxuICAgICAgbWFyZ2luLWJvdHRvbTogMTVweDtcclxuICB9XHJcbiAgXHJcbiAgICB9XHJcbiAgXHJcbiAgQG1lZGlhIChtaW4td2lkdGg6IDk5MnB4KSB7XHJcbiAgICAubW9iaWxlLW1lbnUge1xyXG4gICAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7IH1cclxuICBcclxuICAgIC52aXNpYmxlLW1vYmlsZSB7XHJcbiAgICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsgfVxyXG4gIFxyXG4gICAgLyogYWRkIGNsZWFyZml4IGluIHRoZSBncmlkIHN5c3RlbSAqL1xyXG4gICAgLnJvdy5hZGQtY2xlYXJmaXggPiAuY29sLW1kLTI6bnRoLWNoaWxkKDJuKzEpIHtcclxuICAgICAgY2xlYXI6IG5vbmU7IH1cclxuICAgIC5yb3cuYWRkLWNsZWFyZml4ID4gLmNvbC1tZC0yOm50aC1jaGlsZCgzbisxKSB7XHJcbiAgICAgIGNsZWFyOiBub25lOyB9XHJcbiAgICAucm93LmFkZC1jbGVhcmZpeCA+IC5jb2wtbWQtMjpudGgtY2hpbGQoNG4rMSkge1xyXG4gICAgICBjbGVhcjogbm9uZTsgfVxyXG4gICAgLnJvdy5hZGQtY2xlYXJmaXggPiAuY29sLW1kLTI6bnRoLWNoaWxkKDZuKzEpIHtcclxuICAgICAgY2xlYXI6IGJvdGg7IH1cclxuICBcclxuICAgIC5yb3cuYWRkLWNsZWFyZml4ID4gLmNvbC1tZC0zOm50aC1jaGlsZCgybisxKSB7XHJcbiAgICAgIGNsZWFyOiBub25lOyB9XHJcbiAgICAucm93LmFkZC1jbGVhcmZpeCA+IC5jb2wtbWQtMzpudGgtY2hpbGQoM24rMSkge1xyXG4gICAgICBjbGVhcjogbm9uZTsgfVxyXG4gICAgLnJvdy5hZGQtY2xlYXJmaXggPiAuY29sLW1kLTM6bnRoLWNoaWxkKDRuKzEpIHtcclxuICAgICAgY2xlYXI6IGJvdGg7IH1cclxuICBcclxuICAgIC5yb3cuYWRkLWNsZWFyZml4ID4gLmNvbC1tZC00Om50aC1jaGlsZCgybisxKSB7XHJcbiAgICAgIGNsZWFyOiBub25lOyB9XHJcbiAgICAucm93LmFkZC1jbGVhcmZpeCA+IC5jb2wtbWQtNDpudGgtY2hpbGQoM24rMSkge1xyXG4gICAgICBjbGVhcjogYm90aDsgfVxyXG4gIFxyXG4gICAgLnJvdy5hZGQtY2xlYXJmaXggPiAuY29sLW1kLTY6bnRoLWNoaWxkKDJuKzEpIHtcclxuICAgICAgY2xlYXI6IGJvdGg7IH0gfVxyXG4gIFxyXG4gIEBtZWRpYSAobWluLXdpZHRoOiAxMjAwcHgpIHtcclxuICAgIC8qIGFkZCBjbGVhcmZpeCBpbiB0aGUgZ3JpZCBzeXN0ZW0gKi9cclxuICAgIC5yb3cuYWRkLWNsZWFyZml4ID4gLmNvbC1sZy0yOm50aC1jaGlsZCgybisxKSB7XHJcbiAgICAgIGNsZWFyOiBub25lOyB9XHJcbiAgICAucm93LmFkZC1jbGVhcmZpeCA+IC5jb2wtbGctMjpudGgtY2hpbGQoM24rMSkge1xyXG4gICAgICBjbGVhcjogbm9uZTsgfVxyXG4gICAgLnJvdy5hZGQtY2xlYXJmaXggPiAuY29sLWxnLTI6bnRoLWNoaWxkKDRuKzEpIHtcclxuICAgICAgY2xlYXI6IG5vbmU7IH1cclxuICAgIC5yb3cuYWRkLWNsZWFyZml4ID4gLmNvbC1sZy0yOm50aC1jaGlsZCg2bisxKSB7XHJcbiAgICAgIGNsZWFyOiBib3RoOyB9XHJcbiAgXHJcbiAgICAucm93LmFkZC1jbGVhcmZpeCA+IC5jb2wtbGctMzpudGgtY2hpbGQoMm4rMSkge1xyXG4gICAgICBjbGVhcjogbm9uZTsgfVxyXG4gICAgLnJvdy5hZGQtY2xlYXJmaXggPiAuY29sLWxnLTM6bnRoLWNoaWxkKDNuKzEpIHtcclxuICAgICAgY2xlYXI6IG5vbmU7IH1cclxuICAgIC5yb3cuYWRkLWNsZWFyZml4ID4gLmNvbC1sZy0zOm50aC1jaGlsZCg0bisxKSB7XHJcbiAgICAgIGNsZWFyOiBib3RoOyB9XHJcbiAgXHJcbiAgICAucm93LmFkZC1jbGVhcmZpeCA+IC5jb2wtbGctNDpudGgtY2hpbGQoMm4rMSkge1xyXG4gICAgICBjbGVhcjogbm9uZTsgfVxyXG4gICAgLnJvdy5hZGQtY2xlYXJmaXggPiAuY29sLWxnLTQ6bnRoLWNoaWxkKDNuKzEpIHtcclxuICAgICAgY2xlYXI6IGJvdGg7IH1cclxuICBcclxuICAgIC5yb3cuYWRkLWNsZWFyZml4ID4gLmNvbC1sZy02Om50aC1jaGlsZCgybisxKSB7XHJcbiAgICAgIGNsZWFyOiBib3RoOyB9IFxyXG4gICAgXHJcbiAgLmFjdGlvbl9ib3gtY29udGVudCB7XHJcbiAgICAgIGRpc3BsYXk6IHRhYmxlO1xyXG4gIH0gXHJcbiAgXHJcbiAgLmFjdGlvbl9ib3gtdGV4dCB7XHJcbiAgICAgIGRpc3BsYXk6IHRhYmxlLWNlbGw7XHJcbiAgfVxyXG4gIFxyXG4gIC5hY3Rpb25fYm94LWJ1dHRvbnMge1xyXG4gICAgICB0ZXh0LWFsaWduOiByaWdodDtcclxuICAgICAgZGlzcGxheTogdGFibGUtY2VsbDtcclxuICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcclxuICAgICAgcGFkZGluZy1sZWZ0OiAzMHB4O1xyXG4gIH1cclxuICAgIH1cclxuICBcclxuICAvKiAzLiBTdHlsZXMgZm9yIGRldmljZXMoPj0xMjAwcHgpICovXHJcbiAgLyogQG1lZGlhIChtaW4td2lkdGg6IDEyMDBweCkge1xyXG4gICAgLmNvbnRhaW5lciB7XHJcbiAgICAgIHBhZGRpbmctbGVmdDogMDtcclxuICAgICAgcGFkZGluZy1yaWdodDogMDsgfSB9ICovXHJcbiAgLyogRklOIERVIFRSQVZBSUwgQVZFQyBMRVMgQk9STkVTIElORkVSSUVVUkVTICovXHJcbiAgXHJcbiAgXHJcbiAgLyogREVCVVQgRFUgVFJBVkFJTCBBVkVDIExFUyBJTlRFUlZBTExFUyAqL1xyXG4gIEBtZWRpYSAobWluLXdpZHRoOiA0ODFweCkgYW5kIChtYXgtd2lkdGg6IDc2N3B4KSB7XHJcbiAgICAuY29sLXNtcy0xLCAuY29sLXNtcy0yLCAuY29sLXNtcy0zLCAuY29sLXNtcy00LCAuY29sLXNtcy01LCAuY29sLXNtcy02LCAuY29sLXNtcy03LCAuY29sLXNtcy04LCAuY29sLXNtcy05LCAuY29sLXNtcy0xMCwgLmNvbC1zbXMtMTEsIC5jb2wtc21zLTEyIHtcclxuICAgICAgZmxvYXQ6IGxlZnQ7IH1cclxuICBcclxuICAgIC5jb2wtc21zLTEyIHt3aWR0aDogMTAwJTsgfVxyXG4gIFxyXG4gICAgLmNvbC1zbXMtMTEge3dpZHRoOiA5MS42NjY2NjY2NyU7IH1cclxuICBcclxuICAgIC5jb2wtc21zLTEwIHt3aWR0aDogODMuMzMzMzMzMzMlOyB9XHJcbiAgXHJcbiAgICAuY29sLXNtcy05IHt3aWR0aDogNzUlOyB9XHJcbiAgXHJcbiAgICAuY29sLXNtcy04IHt3aWR0aDogNjYuNjY2NjY2NjclOyB9XHJcbiAgXHJcbiAgICAuY29sLXNtcy03IHt3aWR0aDogNTguMzMzMzMzMzMlOyB9XHJcbiAgXHJcbiAgICAuY29sLXNtcy02IHt3aWR0aDogNTAlOyB9XHJcbiAgXHJcbiAgICAuY29sLXNtcy01IHt3aWR0aDogNDEuNjY2NjY2NjclOyB9XHJcbiAgXHJcbiAgICAuY29sLXNtcy00IHt3aWR0aDogMzMuMzMzMzMzMzMlOyB9XHJcbiAgXHJcbiAgICAuY29sLXNtcy0zIHt3aWR0aDogMjUlOyB9XHJcbiAgXHJcbiAgICAuY29sLXNtcy0yIHt3aWR0aDogMTYuNjY2NjY2NjclOyB9XHJcbiAgXHJcbiAgICAuY29sLXNtcy0xIHt3aWR0aDogOC4zMzMzMzMzMyU7IH1cclxuICBcclxuICAgIC5jb2wtc21zLXB1bGwtMTIge3JpZ2h0OiAxMDAlOyB9XHJcbiAgXHJcbiAgICAuY29sLXNtcy1wdWxsLTExIHtyaWdodDogOTEuNjY2NjY2NjclOyB9XHJcbiAgXHJcbiAgICAuY29sLXNtcy1wdWxsLTEwIHtyaWdodDogODMuMzMzMzMzMzMlOyB9XHJcbiAgXHJcbiAgICAuY29sLXNtcy1wdWxsLTkge3JpZ2h0OiA3NSU7IH1cclxuICBcclxuICAgIC5jb2wtc21zLXB1bGwtOCB7cmlnaHQ6IDY2LjY2NjY2NjY3JTsgfVxyXG4gIFxyXG4gICAgLmNvbC1zbXMtcHVsbC03IHtyaWdodDogNTguMzMzMzMzMzMlOyB9XHJcbiAgXHJcbiAgICAuY29sLXNtcy1wdWxsLTYge3JpZ2h0OiA1MCU7IH1cclxuICBcclxuICAgIC5jb2wtc21zLXB1bGwtNSB7cmlnaHQ6IDQxLjY2NjY2NjY3JTsgfVxyXG4gIFxyXG4gICAgLmNvbC1zbXMtcHVsbC00IHtyaWdodDogMzMuMzMzMzMzMzMlOyB9XHJcbiAgXHJcbiAgICAuY29sLXNtcy1wdWxsLTMge3JpZ2h0OiAyNSU7IH1cclxuICBcclxuICAgIC5jb2wtc21zLXB1bGwtMiB7cmlnaHQ6IDE2LjY2NjY2NjY3JTsgfVxyXG4gIFxyXG4gICAgLmNvbC1zbXMtcHVsbC0xIHtyaWdodDogOC4zMzMzMzMzMyU7IH1cclxuICBcclxuICAgIC5jb2wtc21zLXB1bGwtMCB7cmlnaHQ6IDAlOyB9XHJcbiAgXHJcbiAgICAuY29sLXNtcy1wdXNoLTEyIHtsZWZ0OiAxMDAlOyB9XHJcbiAgXHJcbiAgICAuY29sLXNtcy1wdXNoLTExIHtsZWZ0OiA5MS42NjY2NjY2NyU7IH1cclxuICBcclxuICAgIC5jb2wtc21zLXB1c2gtMTAge2xlZnQ6IDgzLjMzMzMzMzMzJTsgfVxyXG4gIFxyXG4gICAgLmNvbC1zbXMtcHVzaC05IHtsZWZ0OiA3NSU7IH1cclxuICBcclxuICAgIC5jb2wtc21zLXB1c2gtOCB7bGVmdDogNjYuNjY2NjY2NjclOyB9XHJcbiAgXHJcbiAgICAuY29sLXNtcy1wdXNoLTcge2xlZnQ6IDU4LjMzMzMzMzMzJTsgfVxyXG4gIFxyXG4gICAgLmNvbC1zbXMtcHVzaC02IHtsZWZ0OiA1MCU7IH1cclxuICBcclxuICAgIC5jb2wtc21zLXB1c2gtNSB7bGVmdDogNDEuNjY2NjY2NjclOyB9XHJcbiAgXHJcbiAgICAuY29sLXNtcy1wdXNoLTQge2xlZnQ6IDMzLjMzMzMzMzMzJTsgfVxyXG4gIFxyXG4gICAgLmNvbC1zbXMtcHVzaC0zIHtsZWZ0OiAyNSU7IH1cclxuICBcclxuICAgIC5jb2wtc21zLXB1c2gtMiB7bGVmdDogMTYuNjY2NjY2NjclOyB9XHJcbiAgXHJcbiAgICAuY29sLXNtcy1wdXNoLTEge2xlZnQ6IDguMzMzMzMzMzMlOyB9XHJcbiAgXHJcbiAgICAuY29sLXNtcy1wdXNoLTAge2xlZnQ6IDAlOyB9XHJcbiAgXHJcbiAgICAuY29sLXNtcy1vZmZzZXQtMTIge21hcmdpbi1sZWZ0OiAxMDAlOyB9XHJcbiAgXHJcbiAgICAuY29sLXNtcy1vZmZzZXQtMTEge21hcmdpbi1sZWZ0OiA5MS42NjY2NjY2NyU7IH1cclxuICBcclxuICAgIC5jb2wtc21zLW9mZnNldC0xMCB7bWFyZ2luLWxlZnQ6IDgzLjMzMzMzMzMzJTsgfVxyXG4gIFxyXG4gICAgLmNvbC1zbXMtb2Zmc2V0LTkge21hcmdpbi1sZWZ0OiA3NSU7IH1cclxuICBcclxuICAgIC5jb2wtc21zLW9mZnNldC04IHttYXJnaW4tbGVmdDogNjYuNjY2NjY2NjclOyB9XHJcbiAgXHJcbiAgICAuY29sLXNtcy1vZmZzZXQtNyB7bWFyZ2luLWxlZnQ6IDU4LjMzMzMzMzMzJTsgfVxyXG4gIFxyXG4gICAgLmNvbC1zbXMtb2Zmc2V0LTYge21hcmdpbi1sZWZ0OiA1MCU7IH1cclxuICBcclxuICAgIC5jb2wtc21zLW9mZnNldC01IHttYXJnaW4tbGVmdDogNDEuNjY2NjY2NjclOyB9XHJcbiAgXHJcbiAgICAuY29sLXNtcy1vZmZzZXQtNCB7bWFyZ2luLWxlZnQ6IDMzLjMzMzMzMzMzJTsgfVxyXG4gIFxyXG4gICAgLmNvbC1zbXMtb2Zmc2V0LTMge21hcmdpbi1sZWZ0OiAyNSU7IH1cclxuICBcclxuICAgIC5jb2wtc21zLW9mZnNldC0yIHttYXJnaW4tbGVmdDogMTYuNjY2NjY2NjclOyB9XHJcbiAgXHJcbiAgICAuY29sLXNtcy1vZmZzZXQtMSB7bWFyZ2luLWxlZnQ6IDguMzMzMzMzMzMlOyB9XHJcbiAgXHJcbiAgICAuY29sLXNtcy1vZmZzZXQtMCB7bWFyZ2luLWxlZnQ6IDAlOyB9IFxyXG4gICAgXHJcbiAgfVxyXG5cclxuICAgIC8qIDIuIEFkZCBjbGVhcmZpeCBpbiB0aGUgZ3JpZCBzeXN0ZW0gKi9cclxuICAgIC5yb3cuYWRkLWNsZWFyZml4ID4gLmNvbC14cy0yOm50aC1jaGlsZCg2bisxKSB7Y2xlYXI6IGJvdGg7IH1cclxuICAgIFxyXG4gICAgLnJvdy5hZGQtY2xlYXJmaXggPiAuY29sLXhzLTM6bnRoLWNoaWxkKDRuKzEpIHtjbGVhcjogYm90aDsgfVxyXG4gICAgXHJcbiAgICAucm93LmFkZC1jbGVhcmZpeCA+IC5jb2wteHMtNDpudGgtY2hpbGQoM24rMSkge2NsZWFyOiBib3RoOyB9XHJcbiAgICBcclxuICAgIC5yb3cuYWRkLWNsZWFyZml4ID4gLmNvbC14cy02Om50aC1jaGlsZCgybisxKSB7Y2xlYXI6IGJvdGg7IH1cclxuICBcclxuICAvKiA5LiBTdHlsZXMgZm9yIGRldmljZXMoPj00ODFweCBhbmQgPD0gNzY3cHgpICovXHJcbiAgQG1lZGlhIChtaW4td2lkdGg6IDQ4MXB4KSBhbmQgKG1heC13aWR0aDogNzY3cHgpIHtcclxuICAgIC5jb2xvcnMtc2VjdGlvbiAubG9nby1pY29uIHttYXgtd2lkdGg6IDcwJTsgfVxyXG4gIFxyXG4gICAgLmhpZGRlbi1zbXMge2Rpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsgfVxyXG4gIFxyXG4gICAgLmhpZGRlbi14cyB7ZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDsgfSBcclxuICB9XHJcbiAgXHJcbiAgLyogUHJpcyBhdmVjIGxlIENTUyBkZXMgZm9vdGVyICovXHJcbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkgYW5kIChtYXgtd2lkdGg6IDk5MXB4KSB7XHJcbiAgICAubWQtbWItMzAge21hcmdpbi1ib3R0b206IDMwcHg7IH0gICBcclxuICB9XHJcbiAgXHJcbiAgLyogNC4gU3R5bGVzIGZvciBkZXZpY2VzKD49OTkycHggYW5kIDw9MTE5OXB4KSAqL1xyXG4gIEBtZWRpYSAobWluLXdpZHRoOiA5OTJweCkgYW5kIChtYXgtd2lkdGg6IDExOTlweCkge1xyXG4gICAgLmNvbnRhaW5lciB7cGFkZGluZy1sZWZ0OiAwOyBwYWRkaW5nLXJpZ2h0OiAwO30gXHJcbiAgfVxyXG4gIFxyXG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDE0NDBweCkgYW5kIChtaW4td2lkdGg6IDEyMDBweCkge1xyXG4gICAgLnBhbmVsLWJ0bi1hcmVhIC5idG4ge3doaXRlLXNwYWNlOiBub3JtYWw7ICB9XHJcbiAgXHJcbiAgICAucGFuZWwtYnRuLWFyZWEge2Zsb2F0OiBub25lOyBtYXgtd2lkdGg6IDEwMCU7ICB9XHJcbiAgXHJcbiAgICAucGFuZWwtdGl0bGUge3dvcmQtYnJlYWs6IGJyZWFrLXdvcmQ7IH1cclxuICB9XHJcbiAgLyogRklOIERVIFRSQVZBSUwgQVZFQyBMRVMgSU5URVJWQUxMRVMgKi8iLCIvKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgIPCfjJAgR2xvYmFsIHZhcmlhYmxlcyAmIHV0aWxpdGllc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuQGltcG9ydCAnLi92YXJpYWJsZXMuY3NzJztcbkBpbXBvcnQgJy4vdXRpbGl0aWVzLmNzcyc7XG5cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAg8J+nsSBCYXNlIGVsZW1lbnRzICYgY29tcG9uZW50c1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuQGltcG9ydCAnLi9odG1sLWVsZW1lbnRzLmNzcyc7XG5AaW1wb3J0ICcuL3N0eWxlcy5jc3MnO1xuXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgIPCfjqggT3ZlcnJpZGVzICYgdHlwb2dyYXBoeVxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuQGltcG9ydCAnLi9ib290c3RyYXAtb3ZlcnJpZGVzLmNzcyc7XG5AaW1wb3J0ICcuL3R5cG9ncmFwaHkuY3NzJztcblxuXG5AaW1wb3J0IFwiLi9jb21wb25lbnRzL0hlYWRlclBhbmVsLmNzc1wiOyBcblxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gICDwn5OxIFJlc3BvbnNpdmUgYWRqdXN0bWVudHNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbkBpbXBvcnQgJy4vcmVzcG9uc2l2ZS5jc3MnO1xuXG5cbi8qIEBpbXBvcnQgJy4vb3ZlcnJpZGVzLmNzcyc7ICovXG5cbi8qIEBpbXBvcnQgJy4vYW5pbWF0aW9ucy5jc3MnOyAqLyAvKiBJbXBvcnRhdGlvbiDDoCBsYSBmaW4gKi8iLCIuZ3JlZXRpbmdOYXYge1xyXG4gICAgYmFja2dyb3VuZDogcmdiKDIzLCAxODQsIDE4NCk7XHJcbn1cclxuXHJcbi5ncmVldGluZyB7XHJcbiAgICBtYXJnaW4tbGVmdDogMTBweDtcclxufVxyXG5cclxuLnRoZURhdGUge1xyXG4gICAgbWFyZ2luLXJpZ2h0OiAxMHB4O1xyXG59IiwiLmhlYWRlcjEge1xyXG4gICAgZGlzcGxheTogZmxleDtcclxuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcclxuXHJcbiAgICBwYWRkaW5nLWxlZnQ6IDIuNXJlbTtcclxuICAgIHBhZGRpbmctcmlnaHQ6IDIuNXJlbTtcclxufVxyXG5cclxuLnNpdGUtaGVhZGVyLW1haW4td3JhcHBlciB7XHJcbiAgICAvKiBiYWNrZ3JvdW5kOiByZ2JhKDAsMCwwLC43KTsgKi9cclxuICAgIGJhY2tncm91bmQ6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC45KTtcclxuXHJcbn1cclxuXHJcbi5zbG9nYW4ge1xyXG4gICAgZm9udC1mYW1pbHk6ICdUcmVidWNoZXQgTVMnLCAnTHVjaWRhIFNhbnMgVW5pY29kZScsICdMdWNpZGEgR3JhbmRlJywgJ0x1Y2lkYSBTYW5zJywgQXJpYWwsIHNhbnMtc2VyaWY7XHJcbiAgICAvKiBjb2xvcjogcmdiKDI1NSwgMjU1LCAyNTUpOyAqL1xyXG4gICAgY29sb3I6IHJnYigxMiwgNTQsIDI0MSk7XHJcbiAgICBmb250LXNpemU6IDI4cHg7XHJcbn1cclxuXHJcbi50b3Bzb2NpYWwtbGluayBhIHtcclxuICAgIC8qICAgIGJhY2tncm91bmQ6ICM0OTQ4NDg7Ki9cclxuICAgIHdpZHRoOiA0MHB4O1xyXG4gICAgaGVpZ2h0OiA0MHB4O1xyXG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gICAgYm9yZGVyLXJhZGl1czogNTAlO1xyXG59XHJcblxyXG4udG9wc29jaWFsLWxpbmsgYSBpIHtcclxuICAgIC8qICAgIGNvbG9yOiAjZmZmOyovXHJcbiAgICBmb250LXNpemU6IDIwcHg7XHJcbiAgICBwYWRkaW5nOiAxMHB4IDEycHg7XHJcblxyXG59XHJcblxyXG4vKiBGYWNlYm9vayAqL1xyXG4uYS1mYWNlYm9vay10IHtcclxuICAgIGJhY2tncm91bmQ6ICMzYjU5OTg7XHJcbn1cclxuXHJcbi5hLWZhY2Vib29rLXQ6aG92ZXIge1xyXG4gICAgYmFja2dyb3VuZDogI2ZmZmZmZjtcclxufVxyXG5cclxuLnRvcHNvY2lhbC1saW5rIC5mYS1mYWNlYm9vayB7XHJcbiAgICBjb2xvcjogI2ZmZmZmZjtcclxufVxyXG5cclxuLnRvcHNvY2lhbC1saW5rIC5mYS1mYWNlYm9vazpob3ZlciB7XHJcbiAgICBjb2xvcjogIzNiNTk5ODtcclxufSIsIi5oZWFkaW5nLWJveCB7XHJcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICBmbG9hdDogbm9uZTtcclxuICAgIG1hcmdpbjogMCBhdXRvIDQwcHg7XHJcbn1cclxuXHJcbi5oZWFkaW5nLWJveCAuYm94LXRpdGxlIHtcclxuICAgIGZvbnQtc2l6ZTogMi41ZW07XHJcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xyXG59XHJcblxyXG4uaGVhZGluZy1ib3ggaDIge1xyXG4gICAgbWFyZ2luOiAwIDAgMjBweDtcclxuICAgIGZvbnQtd2VpZ2h0OiAzMDA7XHJcbiAgICBjb2xvcjogIzFiNDI2ODtcclxuICAgIGxpbmUtaGVpZ2h0OiAxLjI1ZW07XHJcbiAgICBmb250LWZhbWlseTogaW5oZXJpdDtcclxuXHJcbn1cclxuXHJcbi5oZWFkaW5nLWJveCAuZGVzYy1sZyB7XHJcbiAgICBmb250LXNpemU6IDEuNjY2N2VtO1xyXG59XHJcblxyXG4uaGVhZGluZy1ib3ggW2NsYXNzXj1cImRlc2MtXCJdIHtcclxuICAgIGZvbnQtd2VpZ2h0OiAzMDA7XHJcbiAgICBtYXJnaW4tdG9wOiAwO1xyXG59XHJcblxyXG5cclxuXHJcblxyXG4vKiBJY29uIGJveCAoVGhlIGZpcnN0cyB3aXRoIHRvcCBpY29uKSAqL1xyXG5cclxuLmljb24tYm94IHtcclxuICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XHJcbn1cclxuXHJcbi5pY29uLWJveC5ib3gge1xyXG4gICAgbWFyZ2luLWJvdHRvbTogMzBweDtcclxufVxyXG5cclxuLmljb24tYm94LmJveC1sZyB7XHJcbiAgICBtYXJnaW4tYm90dG9tOiA0MHB4O1xyXG59XHJcblxyXG4uaWNvbi1ib3guYmxvY2sge1xyXG4gICAgbWFyZ2luLWJvdHRvbTogNjBweDtcclxufVxyXG5cclxuLmljb24tYm94IC5ib3gtY29udGVudCBwIHtcclxuICAgIGxpbmUtaGVpZ2h0OiAxLjg0NjFlbTtcclxufVxyXG5cclxuLmljb24tYm94IC5ib3gtY29udGVudD4qOmxhc3QtY2hpbGQge1xyXG4gICAgbWFyZ2luLWJvdHRvbTogMDtcclxufVxyXG5cclxuXHJcbi5pY29uLWJveFtjbGFzcyo9XCIgc3R5bGUtYm94ZWQtXCJdLnN0eWxlLWJveGVkLTEsXHJcbi5pY29uLWJveFtjbGFzcyo9XCIgc3R5bGUtYm94ZWQtXCJdLnN0eWxlLWJveGVkLTMge1xyXG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgYm9yZGVyOiAxcHggc29saWQgI2VkZjZmZjtcclxufVxyXG5cclxuLmljb24tYm94W2NsYXNzKj1cIiBzdHlsZS1ib3hlZC1cIl0uc3R5bGUtYm94ZWQtMSAuaWNvbi1jb250YWluZXIsXHJcbi5pY29uLWJveFtjbGFzcyo9XCIgc3R5bGUtYm94ZWQtXCJdLnN0eWxlLWJveGVkLTMgLmljb24tY29udGFpbmVyIHtcclxuICAgIGZvbnQtc2l6ZTogMzBweDtcclxufVxyXG5cclxuXHJcbi8qIFJvdW5kIHRoZSBpY29uLWNvbnRlbnQgYW5kIGl0cyBiYWNrZ3JvdW5nLWNvbG9yICovXHJcbi5pY29uLWJveFtjbGFzcyo9XCIgc3R5bGUtYm94ZWQtXCJdLnN0eWxlLWJveGVkLTEgLmljb24tY29udGFpbmVyIGksXHJcbi5pY29uLWJveFtjbGFzcyo9XCIgc3R5bGUtYm94ZWQtXCJdLnN0eWxlLWJveGVkLTMgLmljb24tY29udGFpbmVyIGkge1xyXG4gICAgd2lkdGg6IDMuNWVtO1xyXG4gICAgaGVpZ2h0OiAzLjVlbTtcclxuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgIGxpbmUtaGVpZ2h0OiAzLjVlbTtcclxuICAgIC13ZWJraXQtYm9yZGVyLXJhZGl1czogNTAlIDUwJSA1MCUgNTAlO1xyXG4gICAgLW1vei1ib3JkZXItcmFkaXVzOiA1MCUgNTAlIDUwJSA1MCU7XHJcbiAgICAtbXMtYm9yZGVyLXJhZGl1czogNTAlIDUwJSA1MCUgNTAlO1xyXG4gICAgYm9yZGVyLXJhZGl1czogNTAlIDUwJSA1MCUgNTAlO1xyXG4gICAgYmFja2dyb3VuZDogI2ZmNjYwMDtcclxuICAgIGNvbG9yOiAjZmZmO1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgY3Vyc29yOiBkZWZhdWx0O1xyXG59XHJcblxyXG5cclxuLmljb24tYm94W2NsYXNzKj1cIiBzdHlsZS1ib3hlZC1cIl0uc3R5bGUtYm94ZWQtMSAuaWNvbi1jb250YWluZXIgaTpiZWZvcmUsXHJcbi5pY29uLWJveFtjbGFzcyo9XCIgc3R5bGUtYm94ZWQtXCJdLnN0eWxlLWJveGVkLTMgLmljb24tY29udGFpbmVyIGk6YmVmb3JlIHtcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgIHotaW5kZXg6IDE7XHJcbn1cclxuXHJcblxyXG4uaWNvbi1ib3hbY2xhc3MqPVwiIHN0eWxlLWJveGVkLVwiXS5zdHlsZS1ib3hlZC0xIC5pY29uLWNvbnRhaW5lciBpOmFmdGVyLFxyXG4uaWNvbi1ib3hbY2xhc3MqPVwiIHN0eWxlLWJveGVkLVwiXS5zdHlsZS1ib3hlZC0zIC5pY29uLWNvbnRhaW5lciBpOmFmdGVyIHtcclxuICAgIGNvbnRlbnQ6IFwiXCI7XHJcbiAgICBkaXNwbGF5OiBibG9jaztcclxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgIGxlZnQ6IDA7XHJcbiAgICB0b3A6IDA7XHJcbiAgICB3aWR0aDogMy41ZW07XHJcbiAgICBoZWlnaHQ6IDEuNzVlbTtcclxuICAgIC13ZWJraXQtYm9yZGVyLXJhZGl1czogMS43NWVtIDEuNzVlbSAwIDA7XHJcbiAgICAtbW96LWJvcmRlci1yYWRpdXM6IDEuNzVlbSAxLjc1ZW0gMCAwO1xyXG4gICAgLW1zLWJvcmRlci1yYWRpdXM6IDEuNzVlbSAxLjc1ZW0gMCAwO1xyXG4gICAgYm9yZGVyLXJhZGl1czogMS43NWVtIDEuNzVlbSAwIDA7XHJcbiAgICBiYWNrZ3JvdW5kOiAjZmY3ZDI2O1xyXG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSg0NWRlZyk7XHJcbiAgICAtbW96LXRyYW5zZm9ybTogcm90YXRlKDQ1ZGVnKTtcclxuICAgIC1tcy10cmFuc2Zvcm06IHJvdGF0ZSg0NWRlZyk7XHJcbiAgICAtby10cmFuc2Zvcm06IHJvdGF0ZSg0NWRlZyk7XHJcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSg0NWRlZyk7XHJcbiAgICAtd2Via2l0LXRyYW5zZm9ybS1vcmlnaW46IDUwJSAxMDAlO1xyXG4gICAgLW1vei10cmFuc2Zvcm0tb3JpZ2luOiA1MCUgMTAwJTtcclxuICAgIC1tcy10cmFuc2Zvcm0tb3JpZ2luOiA1MCUgMTAwJTtcclxuICAgIC1vLXRyYW5zZm9ybS1vcmlnaW46IDUwJSAxMDAlO1xyXG4gICAgdHJhbnNmb3JtLW9yaWdpbjogNTAlIDEwMCU7XHJcbn1cclxuXHJcbi8qIC5pY29uLWJveFtjbGFzcyo9XCIgc3R5bGUtYm94ZWQtXCJdLnN0eWxlLWJveGVkLTEgLmljb24tY29udGFpbmVyIGksXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAuaWNvbi1ib3hbY2xhc3MqPVwiIHN0eWxlLWJveGVkLVwiXS5zdHlsZS1ib3hlZC0xIC5pY29uLWNvbnRhaW5lciBpOmFmdGVyLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLmljb24tYm94W2NsYXNzKj1cIiBzdHlsZS1ib3hlZC1cIl0uc3R5bGUtYm94ZWQtMyAuaWNvbi1jb250YWluZXIgaSxcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC5pY29uLWJveFtjbGFzcyo9XCIgc3R5bGUtYm94ZWQtXCJdLnN0eWxlLWJveGVkLTMgLmljb24tY29udGFpbmVyIGk6YWZ0ZXIge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIHRyYW5zaXRpb24oYWxsLCAwLjNzLCBlYXNlKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0gKi9cclxuXHJcbi8qIGJsdWUgYmFja2dyb3VuZC1jb2xvciBmb3IgdGhlIG1pZGRsZSBhcmVhIChsZWZ0IGJvdHRvbSkgKi9cclxuLmljb24tYm94W2NsYXNzKj1cIiBzdHlsZS1ib3hlZC1cIl0uc3R5bGUtYm94ZWQtMS5pY29uLWNvbG9yLWJsdWUgLmljb24tY29udGFpbmVyIGksXHJcbi5pY29uLWJveFtjbGFzcyo9XCIgc3R5bGUtYm94ZWQtXCJdLnN0eWxlLWJveGVkLTMuaWNvbi1jb2xvci1ibHVlIC5pY29uLWNvbnRhaW5lciBpIHtcclxuICAgIGJhY2tncm91bmQtY29sb3I6ICMxYjQyNjg7XHJcbn1cclxuXHJcbi5pY29uLWJveFtjbGFzcyo9XCIgc3R5bGUtYm94ZWQtXCJdLnN0eWxlLWJveGVkLTEuaWNvbi1jb2xvci1ibHVlIC5pY29uLWNvbnRhaW5lciBpOmFmdGVyLFxyXG4uaWNvbi1ib3hbY2xhc3MqPVwiIHN0eWxlLWJveGVkLVwiXS5zdHlsZS1ib3hlZC0zLmljb24tY29sb3ItYmx1ZSAuaWNvbi1jb250YWluZXIgaTphZnRlciB7XHJcbiAgICBiYWNrZ3JvdW5kOiAjMjI0ODZkO1xyXG59XHJcblxyXG4uaWNvbi1ib3hbY2xhc3MqPVwiIHN0eWxlLWJveGVkLVwiXS5zdHlsZS1ib3hlZC0xIHtcclxuICAgIHBhZGRpbmc6IDcycHggMzBweCAzMHB4O1xyXG4gICAgbWFyZ2luLXRvcDogNTJweDtcclxufVxyXG5cclxuLyogRGlzcGxheSB0aGUgaWNvbiBhdCBhbiBhYnNvbHV0ZSBwb3NpdGlvbiwgb24gdGhlIHRvcCAuLi4gKi9cclxuLmljb24tYm94W2NsYXNzKj1cIiBzdHlsZS1ib3hlZC1cIl0uc3R5bGUtYm94ZWQtMSAuaWNvbi1jb250YWluZXIge1xyXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgbGVmdDogNTAlO1xyXG4gICAgdG9wOiAtMS43NWVtO1xyXG4gICAgbWFyZ2luLWxlZnQ6IC0xLjc1ZW07XHJcbn1cclxuXHJcblxyXG4uaWNvbi1ib3hbY2xhc3MqPVwiIHN0eWxlLWJveGVkLVwiXS5zdHlsZS1ib3hlZC0xIC5pY29uLWNvbnRhaW5lcjpiZWZvcmUge1xyXG4gICAgY29udGVudDogXCJcIjtcclxuICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgbGVmdDogLTAuNDVlbTtcclxuICAgIHRvcDogLTAuNDVlbTtcclxuICAgIHdpZHRoOiA0LjRlbTtcclxuICAgIGhlaWdodDogMi4yZW07XHJcbiAgICBib3JkZXI6IDFweCBzb2xpZCAjZWRmNmZmO1xyXG4gICAgYm9yZGVyLWJvdHRvbTogbm9uZTtcclxuICAgIC13ZWJraXQtYm9yZGVyLXJhZGl1czogMi4yZW0gMi4yZW0gMCAwO1xyXG4gICAgLW1vei1ib3JkZXItcmFkaXVzOiAyLjJlbSAyLjJlbSAwIDA7XHJcbiAgICAtbXMtYm9yZGVyLXJhZGl1czogMi4yZW0gMi4yZW0gMCAwO1xyXG4gICAgYm9yZGVyLXJhZGl1czogMi4yZW0gMi4yZW0gMCAwO1xyXG4gICAgYmFja2dyb3VuZDogI2ZmZjtcclxufVxyXG5cclxuLyogQSByZWQgYmFja2dyb3VkLWNvbG9yIGZvciB0aGUgaG92ZXIgb2YgdGhlIGljb24tYm94IGNvbnRhaW5lciAqL1xyXG4uaWNvbi1ib3hbY2xhc3MqPVwiIHN0eWxlLWJveGVkLVwiXS5zdHlsZS1ib3hlZC0xOmhvdmVyIC5pY29uLWNvbnRhaW5lciBpIHtcclxuICAgIGJhY2tncm91bmQ6ICNmZjY2MDA7XHJcbn1cclxuXHJcbi8qIEEgcmVkIGJhY2tncm91ZC1jb2xvciBmb3IgdGhlIGhvdmVyIG9mIHRoZSBpY29uLWJveCBjb250YWluZXIgKHRoZSBib3R0b20gbGVmdCkgKi9cclxuLmljb24tYm94W2NsYXNzKj1cIiBzdHlsZS1ib3hlZC1cIl0uc3R5bGUtYm94ZWQtMTpob3ZlciAuaWNvbi1jb250YWluZXIgaTphZnRlciB7XHJcbiAgICBiYWNrZ3JvdW5kOiAjZmY3ZDI2O1xyXG59XHJcblxyXG5cclxuLyogSWNvbiBib3ggKFRoZSBzZWNvbmRzIHdpdGggdG9wIGljb24pICovXHJcbi5pY29uLWJveFtjbGFzcyo9XCIgc3R5bGUtYm94ZWQtXCJdLnN0eWxlLWJveGVkLTQge1xyXG4gICAgYm9yZGVyOiAycHggc29saWQgI2VkZjZmZjtcclxuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxufVxyXG5cclxuLmljb24tYm94W2NsYXNzKj1cIiBzdHlsZS1ib3hlZC1cIl0uc3R5bGUtYm94ZWQtNCAuaWNvbi1jb250YWluZXIge1xyXG4gICAgcGFkZGluZzogMzVweCAwO1xyXG4gICAgY29sb3I6ICNmZjY2MDA7XHJcbn1cclxuXHJcbi5pY29uLWJveFtjbGFzcyo9XCIgc3R5bGUtYm94ZWQtXCJdLnN0eWxlLWJveGVkLTQgLmljb24tY29udGFpbmVyIGkge1xyXG4gICAgZm9udC1zaXplOiAzMHB4O1xyXG59XHJcblxyXG4uaWNvbi1ib3hbY2xhc3MqPVwiIHN0eWxlLWJveGVkLVwiXS5zdHlsZS1ib3hlZC00IC5ib3gtY29udGVudCB7XHJcbiAgICBwYWRkaW5nOiAzMHB4O1xyXG4gICAgYmFja2dyb3VuZDogI2VkZjZmZjtcclxufSJdLCJuYW1lcyI6W10sInNvdXJjZVJvb3QiOiIifQ==*/