/*!**************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[1].oneOf[1].use[1]!./assets/styles/app.css ***!
  \**************************************************************************************************************/
@import url(https://fonts.googleapis.com/css2?family=Poppins:ital,wght@0,100;0,200;0,300;0,400;0,500;0,600;0,700;0,800;0,900;1,100;1,200;1,300;1,400;1,500;1,600;1,700;1,800;1,900&display=swap);
/*!******************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[1].oneOf[1].use[1]!./assets/styles/app.css (1) ***!
  \******************************************************************************************************************/
:root {
    --color-primary: #171738;
    --color-secondary: #59c6f2;
    --color-light: #FFFFFF;
    --color-dark: #262626;
    --color-gray: #ecf1f2;
    --font-body: "Poppins", sans-serif;
}

.dark-mode {
    --color-light: #282828;
    --color-dark: #FFFFFF;
    --color-gray: #121212;
}

body {
    font-family: var(--font-body)!important;
    font-size: 14px;
    line-height: 24px;
    margin: 0;
    display: flex;
    background-color: var(--color-gray);
    overflow-x: hidden;
    animation: fadeIn 0.5s ease-in forwards;
}

@keyframes fadeIn {
    from {
        opacity: 0;
    }
    to {
        opacity: 1;
    }
}

body.dark-mode {
    color: #FFFFFF!important;
}

main {
    margin-left: 250px;
    width: 100%;
    height: 100vh;
}

main .content {
    padding: 20px 30px 50px 30px;
}

a {
    text-decoration: none;
    color: var(--color-dark);
    transition: color 0.3s ease;
}

h1 {
    font-size: 30px!important;
    line-height: 40px!important;
    color: var(--color-primary);
}

.dark-mode h1 {
    color: #FFFFFF;
}

h2 {
    font-size: 25px!important;
    line-height: 35px!important;
    font-weight: 400!important;
}

p {
    margin: 0!important;
}

.banner-page {
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.banner-page .group-btns {
    display: flex;
    gap: 10px;
}

.bloc-content {
    background-color: var(--color-light);
    padding: 20px;
    border-radius: 15px;
    box-shadow: rgba(149, 157, 165, 0.2) 0px 8px 24px;
    display: grid;
    gap: 10px;
    margin-bottom: 20px;
}

.dark-mode .bloc-content {
    box-shadow: none;
}

.informations {
    display: flex;
    gap: 10px;
    align-items: center;
}

.informations a {
    color: var(--color-secondary);
}

.informations a:hover {
    color: var(--color-primary);
}

.tuto {
    margin-top: 30px;
    display: flex;
    gap: 20px;
}

.card-tuto {
    background-color: var(--color-light);
    display: grid;
    gap: 10px;
    padding: 20px;
    width: 100%;
    border-radius: 10px;
    box-shadow: rgba(100, 100, 111, 0.2) 0px 7px 29px 0px;
}

.dark-mode .card-tuto {
    box-shadow: none;
}

.card-tuto .title {
    font-size: 18px;
    line-height: 28px;
    font-weight: bold;
}
/*!*****************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[1].oneOf[1].use[1]!./assets/styles/header.css ***!
  \*****************************************************************************************************************/
header {
    background-color: var(--color-light);
    color: var(--color-primary);
    height: 100vh;
    position: fixed;
    max-width: 210px;
    width: 230px;
    display: flex;
    gap: 10px;
    padding: 20px;
    flex-direction: column;
    box-shadow: rgba(149, 157, 165, 0.2) 0px 8px 24px;
}

.dark-mode header {
    color: #FFFFFF;
    box-shadow: none;
}

.nav-item {
    position: relative;
    width: 100%;
}

.nav-item:first-child {
    margin-bottom: 20px;
    margin-top: 20px;
}

.nav-item .nav-link {
    background-color: transparent;
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 10px;
    border-radius: 5px;
    transition: background-color 0.2s ease;
    cursor: pointer;
}

.nav-item .nav-link:hover {
    background-color: var(--color-secondary);
}

.nav-link {
    cursor: pointer;
    font-weight: bold;
}

.nav-item.active .nav-link {
    color: var(--color-primary);
    background-color: var(--color-secondary);
}

.dark-mode .nav-item.active .nav-link {
    color: #FFFFFF;
}

.submenu {
    display: grid;
    height: 0;
    overflow: hidden;
    gap: 20px;
    z-index: 10;
    padding: 0 15px;
    margin-top: 0;
    transition: height 0.5s ease, margin-top 0.5s ease;
}

.submenu.show,
.nav-item.active .submenu {
    margin-top: 10px;
}

.nav-item.active .submenu {
    height: auto;
}

.submenu a {
    display: block;
    text-decoration: none;
}

.submenu a.active {
    color: var(--color-secondary);
}

.submenu a:hover { 
    color: var(--color-secondary);
 }

 header .credits {
    position: absolute;
    bottom: 60px;
    left: 20px;
 }

 .credits {
    font-size: 10px;
    line-height: 18px;
 }
/*!******************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[1].oneOf[1].use[1]!./assets/styles/nav_bar.css ***!
  \******************************************************************************************************************/
.nav-bar {
    background-color: var(--color-light);
    padding: 20px;
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.nav-bar .breadcrumb p {
    font-weight: 300;
    font-size: 18px;
    line-height: 2;
}

.nav-bar .notifications-user {
    display: flex;
    gap: 20px;
    align-items: center;
}

.nav-bar .notifications-user #theme-switch {
  position: relative;
    background-color: var(--color-gray);
    border: none;
    display: flex;
    gap: 30px;
    padding: 10px 10px;
    border-radius: 25px;
    cursor: pointer;
}

.nav-bar .notifications-user #theme-switch::after {
    content: "";
    position: absolute;
    left: 4px;
    top: 4px;
    display: block;
    width: 32px;
    height: 32px;
    border-radius: 25px;
    z-index: 1;
    background-color: var(--color-light);
    transition: left 0.5s ease;
}

.dark-mode .nav-bar .notifications-user #theme-switch::after {
      left: 50px;
}

.nav-bar .notifications-user #theme-switch i {
  position: relative;
  z-index: 2;
}

.nav-bar .notifications-user i {
    color: var(--color-primary);
    cursor: pointer;
    font-size: 20px;
    line-height: 20px;
}

.dark-mode .nav-bar .notifications-user i {
    color: #FFFFFF;
}

.nav-bar .notifications-user .notifications {
    display: none;
    background: var(--color-light);
    height: 100%;
    position: absolute;
    top: 0;
    right: 0;
    width: 250px;
    padding: 20px;
    z-index: 4;
    box-shadow: rgba(100, 100, 111, 0.2) 0px 7px 29px 0px;
    -webkit-animation: slide-in-right 0.5s cubic-bezier(0.250, 0.460, 0.450, 0.940) both;
    animation: slide-in-right 0.5s cubic-bezier(0.250, 0.460, 0.450, 0.940) both;
}

.dark-mode .nav-bar .notifications-user .notifications {
    box-shadow: none;
}

@-webkit-keyframes slide-in-right {
    0% {
        -webkit-transform: translateX(1000px);
        transform: translateX(1000px);
        opacity: 0;
    }
    100% {
        -webkit-transform: translateX(0);
        transform: translateX(0);
        opacity: 1;
    }
}

@keyframes slide-in-right {
    0% {
        -webkit-transform: translateX(1000px);
        transform: translateX(1000px);
        opacity: 0;
    }
    100% {
        -webkit-transform: translateX(0);
        transform: translateX(0);
        opacity: 1;
    }
}

.nav-bar .notifications-user .notifications .title {
    font-weight: bold;
    font-size: 20px;
    line-height: 30px;
    margin-bottom: 20px!important;
}

.nav-bar .user {
    display: flex;
    align-items: center;
    gap: 10px;
}

.nav-bar .user img {
    width: 30px;
    height: 30px;
    border-radius: 30px;
    object-fit: cover;
    border: solid 3px var(--color-secondary);
    box-shadow: rgba(100, 100, 111, 0.2) 0px 7px 29px 0px;
}
/*!*****************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[1].oneOf[1].use[1]!./assets/styles/button.css ***!
  \*****************************************************************************************************************/
.btn-1, .btn-2, .btn-delete {
    font-family: var(--font-body)!important;
    display: inline-block;
    border-radius: 10px;
    padding: 10px 30px;
    cursor: pointer;
    border: none;
    width: fit-content;
    font-weight: bold;
    font-size: 16px;
    text-decoration: none;
    transition: background-color .3s ease, color .3s ease
}

.btn-1 {
    background-color : var(--color-secondary);
    color: var(--color-light);
}

.btn-1:hover {
    background-color: var(--color-primary);
}

.btn-2 {
    background-color : var(--color-primary);
    color: var(--color-light);
}

.btn-2:hover {
    background-color: var(--color-secondary);
}

.dark-mode .btn-1,
.dark-mode .btn-2 {
    color: #FFFFFF;
}

.btn-delete {
    background-color : #f8d7da;
    color: #721c24;
}

.btn-delete:hover {
    background-color: #721c24;
    color: #f8d7da;
}
/*!***************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[1].oneOf[1].use[1]!./assets/styles/form.css ***!
  \***************************************************************************************************************/
form,
form > div {
    display: grid;
    gap: 20px;
}

label {
    width: 100%;
    display: block;
    margin-bottom: 5px;
}

select, input, textarea {
    width: -webkit-fill-available!important;
    padding: 10px;
    font-family: var(--font-body)!important;
    border: solid 1px #d1d1d1!important;
    border-radius: 5px;
}

.dark-mode select, .dark-mode input, .dark-mode textarea, .dark-mode .ck-content, .dark-mode .ck-toolbar {
    background-color: var(--color-gray)!important;
    color: #FFFFFF!important;
}

input[type="color"]{
    height: 50px;
}

input[type="checkbox"]{
    width: fit-content!important;
}

.search-form {
    display: flex;
    gap: 30px;
    align-items: flex-end;
}

.search-form > div {
    gap: 0;
    width: 100%;
}

.search-form .categories {
    max-width: 300px!important;
}

.btns-form {
    display: flex;
    gap: 10px;
}
/*!****************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[1].oneOf[1].use[1]!./assets/styles/table.css ***!
  \****************************************************************************************************************/
.title-table {
    font-weight: bold;
    font-size: 18px;
    line-height: 28px;
}

.table {
    display: flex;
    gap: 10px;
    min-height: 500px;
    flex-direction: column;
}

figure.table {
    min-height: auto!important;
}

.table .header,
.table .line {
    display: flex;
    border-radius: 5px;
    align-items: center;
    height: fit-content;
}

.table .header {
    padding: 10px;
    background-color: var(--color-gray);
}

.table .line {
    padding: 5px 10px;
    background-color: transparent;
    cursor: pointer;
    transition: background-color 0.3s ease;
}

.table .line:hover {
    background-color: var(--color-gray);
}

.table .header>div,
.table .line>div {
    width: 100%;
    padding: 0 5px;
}

.table .header>div:last-child,
.table .line>div:last-child,
#site-table .table .header>div:first-child,
#site-table .table .line>div:first-child  {
    min-width: 40px;
    width: 40px;
}

.table .header>div a {
    display: flex;
    align-items: center;
    gap: 5px;
}

.table .line>div:last-child {
    display: flex;
    gap: 5px;
}

.table .line a {
    color: var(--color-primary);
    transition: color 0.3s ease;
}

.dark-mode .table .line a {
    color: #FFFFFF;
}

.table .line a:hover {
    color: var(--color-secondary);
}

.table .separator {
    width: 98%;
    margin: 0 auto;
    border-bottom: solid 1px var(--color-gray);
}

.active-pellet {
    width: 10px;
    height: 10px;
    border-radius: 10px;
    background-color: #ff6666;
}

.active-pellet.active {
    background-color: #86ff66;
}
/*!****************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[1].oneOf[1].use[1]!./assets/styles/alert.css ***!
  \****************************************************************************************************************/
.alert {
    padding: 20px;
    margin-bottom: 15px;
    border-radius: 5px;
    display: flex;
    justify-content: space-between;
    align-items: center;
} 

.alert.alert-success {
    color: #155724;
    background-color: #d4edda;
    border-color: #c3e6cb;
}
/*!*********************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[1].oneOf[1].use[1]!./assets/styles/pagination.css ***!
  \*********************************************************************************************************************/
.pagination {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
}

.pagination a {
    display: block;
    padding: 5px 12px;
    font-size: 14px;
    border-radius: 5px;
    background-color: var(--color-secondary);
    color: var(--color-light)!important;
    transition: background-color 0.5s ease;
}

.dark-mode .pagination a {
    color: #FFFFFF!important;
}

.pagination a.active,
.pagination a:hover {
    background-color: var(--color-primary);
}
/*!*****************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[1].oneOf[1].use[1]!./assets/styles/access.css ***!
  \*****************************************************************************************************************/
.access{
    display: flex;
    align-items: center;
    justify-content: center;
    height: 100vh;
}

.access main{
    width: 30%;
    margin: auto;
    height: auto;
    background-color: var(--color-light);
    padding: 20px;
    border-radius: 10px;
}

.access .message {
    font-style: italic;
    margin-bottom: 10px!important;
}
/*!********************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[1].oneOf[1].use[1]!./assets/styles/generator.css ***!
  \********************************************************************************************************************/
.ck.ck-editor__main>.ck-editor__editable {
    height: 40vh;
    margin-bottom: 15px;
}

.content-generator {
    display: flex;
    gap: 30px;
}

.content-generator .content {
    width: 50%;
    padding: 0;
}

.content-generator textarea {
    height: 200px;
}

.ck-editor a {
    color: var(--color-secondary);
}
/*!***************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[1].oneOf[1].use[1]!./assets/styles/site.css ***!
  \***************************************************************************************************************/
.category-site {
    width: fit-content;
    border-radius: 5px;
    padding: 5px 10px;
    color: var(--color-light);
}

.dark-mode .category-site {
    color: #FFFFFF;
}

/*# sourceMappingURL=data:application/json;charset=utf-8;base64,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SUFDekIscUJBQXFCO0FBQ3pCLEM7Ozs7QUNiQTtJQUNJLGFBQWE7SUFDYixtQkFBbUI7SUFDbkIsdUJBQXVCO0lBQ3ZCLFNBQVM7QUFDYjs7QUFFQTtJQUNJLGNBQWM7SUFDZCxpQkFBaUI7SUFDakIsZUFBZTtJQUNmLGtCQUFrQjtJQUNsQix3Q0FBd0M7SUFDeEMsbUNBQW1DO0lBQ25DLHNDQUFzQztBQUMxQzs7QUFFQTtJQUNJLHdCQUF3QjtBQUM1Qjs7QUFFQTs7SUFFSSxzQ0FBc0M7QUFDMUMsQzs7OztBQ3hCQTtJQUNJLGFBQWE7SUFDYixtQkFBbUI7SUFDbkIsdUJBQXVCO0lBQ3ZCLGFBQWE7QUFDakI7O0FBRUE7SUFDSSxVQUFVO0lBQ1YsWUFBWTtJQUNaLFlBQVk7SUFDWixvQ0FBb0M7SUFDcEMsYUFBYTtJQUNiLG1CQUFtQjtBQUN2Qjs7QUFFQTtJQUNJLGtCQUFrQjtJQUNsQiw2QkFBNkI7QUFDakMsQzs7OztBQ25CQTtJQUNJLFlBQVk7SUFDWixtQkFBbUI7QUFDdkI7O0FBRUE7SUFDSSxhQUFhO0lBQ2IsU0FBUztBQUNiOztBQUVBO0lBQ0ksVUFBVTtJQUNWLFVBQVU7QUFDZDs7QUFFQTtJQUNJLGFBQWE7QUFDakI7O0FBRUE7SUFDSSw2QkFBNkI7QUFDakMsQzs7OztBQ3JCQTtJQUNJLGtCQUFrQjtJQUNsQixrQkFBa0I7SUFDbEIsaUJBQWlCO0lBQ2pCLHlCQUF5QjtBQUM3Qjs7QUFFQTtJQUNJLGNBQWM7QUFDbEIsQyIsInNvdXJjZXMiOlsid2VicGFjazovLy8uL2Fzc2V0cy9zdHlsZXMvYXBwLmNzcyIsIndlYnBhY2s6Ly8vLi9hc3NldHMvc3R5bGVzL2hlYWRlci5jc3MiLCJ3ZWJwYWNrOi8vLy4vYXNzZXRzL3N0eWxlcy9uYXZfYmFyLmNzcyIsIndlYnBhY2s6Ly8vLi9hc3NldHMvc3R5bGVzL2J1dHRvbi5jc3MiLCJ3ZWJwYWNrOi8vLy4vYXNzZXRzL3N0eWxlcy9mb3JtLmNzcyIsIndlYnBhY2s6Ly8vLi9hc3NldHMvc3R5bGVzL3RhYmxlLmNzcyIsIndlYnBhY2s6Ly8vLi9hc3NldHMvc3R5bGVzL2FsZXJ0LmNzcyIsIndlYnBhY2s6Ly8vLi9hc3NldHMvc3R5bGVzL3BhZ2luYXRpb24uY3NzIiwid2VicGFjazovLy8uL2Fzc2V0cy9zdHlsZXMvYWNjZXNzLmNzcyIsIndlYnBhY2s6Ly8vLi9hc3NldHMvc3R5bGVzL2dlbmVyYXRvci5jc3MiLCJ3ZWJwYWNrOi8vLy4vYXNzZXRzL3N0eWxlcy9zaXRlLmNzcyJdLCJzb3VyY2VzQ29udGVudCI6WyJAaW1wb3J0IHVybCgnaHR0cHM6Ly9mb250cy5nb29nbGVhcGlzLmNvbS9jc3MyP2ZhbWlseT1Qb3BwaW5zOml0YWwsd2dodEAwLDEwMDswLDIwMDswLDMwMDswLDQwMDswLDUwMDswLDYwMDswLDcwMDswLDgwMDswLDkwMDsxLDEwMDsxLDIwMDsxLDMwMDsxLDQwMDsxLDUwMDsxLDYwMDsxLDcwMDsxLDgwMDsxLDkwMCZkaXNwbGF5PXN3YXAnKTtcbjpyb290IHtcbiAgICAtLWNvbG9yLXByaW1hcnk6ICMxNzE3Mzg7XG4gICAgLS1jb2xvci1zZWNvbmRhcnk6ICM1OWM2ZjI7XG4gICAgLS1jb2xvci1saWdodDogI0ZGRkZGRjtcbiAgICAtLWNvbG9yLWRhcms6ICMyNjI2MjY7XG4gICAgLS1jb2xvci1ncmF5OiAjZWNmMWYyO1xuICAgIC0tZm9udC1ib2R5OiBcIlBvcHBpbnNcIiwgc2Fucy1zZXJpZjtcbn1cblxuLmRhcmstbW9kZSB7XG4gICAgLS1jb2xvci1saWdodDogIzI4MjgyODtcbiAgICAtLWNvbG9yLWRhcms6ICNGRkZGRkY7XG4gICAgLS1jb2xvci1ncmF5OiAjMTIxMjEyO1xufVxuXG5ib2R5IHtcbiAgICBmb250LWZhbWlseTogdmFyKC0tZm9udC1ib2R5KSFpbXBvcnRhbnQ7XG4gICAgZm9udC1zaXplOiAxNHB4O1xuICAgIGxpbmUtaGVpZ2h0OiAyNHB4O1xuICAgIG1hcmdpbjogMDtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWdyYXkpO1xuICAgIG92ZXJmbG93LXg6IGhpZGRlbjtcbiAgICBhbmltYXRpb246IGZhZGVJbiAwLjVzIGVhc2UtaW4gZm9yd2FyZHM7XG59XG5cbkBrZXlmcmFtZXMgZmFkZUluIHtcbiAgICBmcm9tIHtcbiAgICAgICAgb3BhY2l0eTogMDtcbiAgICB9XG4gICAgdG8ge1xuICAgICAgICBvcGFjaXR5OiAxO1xuICAgIH1cbn1cblxuYm9keS5kYXJrLW1vZGUge1xuICAgIGNvbG9yOiAjRkZGRkZGIWltcG9ydGFudDtcbn1cblxubWFpbiB7XG4gICAgbWFyZ2luLWxlZnQ6IDI1MHB4O1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTAwdmg7XG59XG5cbm1haW4gLmNvbnRlbnQge1xuICAgIHBhZGRpbmc6IDIwcHggMzBweCA1MHB4IDMwcHg7XG59XG5cbmEge1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICBjb2xvcjogdmFyKC0tY29sb3ItZGFyayk7XG4gICAgdHJhbnNpdGlvbjogY29sb3IgMC4zcyBlYXNlO1xufVxuXG5oMSB7XG4gICAgZm9udC1zaXplOiAzMHB4IWltcG9ydGFudDtcbiAgICBsaW5lLWhlaWdodDogNDBweCFpbXBvcnRhbnQ7XG4gICAgY29sb3I6IHZhcigtLWNvbG9yLXByaW1hcnkpO1xufVxuXG4uZGFyay1tb2RlIGgxIHtcbiAgICBjb2xvcjogI0ZGRkZGRjtcbn1cblxuaDIge1xuICAgIGZvbnQtc2l6ZTogMjVweCFpbXBvcnRhbnQ7XG4gICAgbGluZS1oZWlnaHQ6IDM1cHghaW1wb3J0YW50O1xuICAgIGZvbnQtd2VpZ2h0OiA0MDAhaW1wb3J0YW50O1xufVxuXG5wIHtcbiAgICBtYXJnaW46IDAhaW1wb3J0YW50O1xufVxuXG4uYmFubmVyLXBhZ2Uge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG59XG5cbi5iYW5uZXItcGFnZSAuZ3JvdXAtYnRucyB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBnYXA6IDEwcHg7XG59XG5cbi5ibG9jLWNvbnRlbnQge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWxpZ2h0KTtcbiAgICBwYWRkaW5nOiAyMHB4O1xuICAgIGJvcmRlci1yYWRpdXM6IDE1cHg7XG4gICAgYm94LXNoYWRvdzogcmdiYSgxNDksIDE1NywgMTY1LCAwLjIpIDBweCA4cHggMjRweDtcbiAgICBkaXNwbGF5OiBncmlkO1xuICAgIGdhcDogMTBweDtcbiAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xufVxuXG4uZGFyay1tb2RlIC5ibG9jLWNvbnRlbnQge1xuICAgIGJveC1zaGFkb3c6IG5vbmU7XG59XG5cbi5pbmZvcm1hdGlvbnMge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZ2FwOiAxMHB4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG59XG5cbi5pbmZvcm1hdGlvbnMgYSB7XG4gICAgY29sb3I6IHZhcigtLWNvbG9yLXNlY29uZGFyeSk7XG59XG5cbi5pbmZvcm1hdGlvbnMgYTpob3ZlciB7XG4gICAgY29sb3I6IHZhcigtLWNvbG9yLXByaW1hcnkpO1xufVxuXG4udHV0byB7XG4gICAgbWFyZ2luLXRvcDogMzBweDtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGdhcDogMjBweDtcbn1cblxuLmNhcmQtdHV0byB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItbGlnaHQpO1xuICAgIGRpc3BsYXk6IGdyaWQ7XG4gICAgZ2FwOiAxMHB4O1xuICAgIHBhZGRpbmc6IDIwcHg7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgYm9yZGVyLXJhZGl1czogMTBweDtcbiAgICBib3gtc2hhZG93OiByZ2JhKDEwMCwgMTAwLCAxMTEsIDAuMikgMHB4IDdweCAyOXB4IDBweDtcbn1cblxuLmRhcmstbW9kZSAuY2FyZC10dXRvIHtcbiAgICBib3gtc2hhZG93OiBub25lO1xufVxuXG4uY2FyZC10dXRvIC50aXRsZSB7XG4gICAgZm9udC1zaXplOiAxOHB4O1xuICAgIGxpbmUtaGVpZ2h0OiAyOHB4O1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xufSIsImhlYWRlciB7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1saWdodCk7XHJcbiAgICBjb2xvcjogdmFyKC0tY29sb3ItcHJpbWFyeSk7XHJcbiAgICBoZWlnaHQ6IDEwMHZoO1xyXG4gICAgcG9zaXRpb246IGZpeGVkO1xyXG4gICAgbWF4LXdpZHRoOiAyMTBweDtcclxuICAgIHdpZHRoOiAyMzBweDtcclxuICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICBnYXA6IDEwcHg7XHJcbiAgICBwYWRkaW5nOiAyMHB4O1xyXG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuICAgIGJveC1zaGFkb3c6IHJnYmEoMTQ5LCAxNTcsIDE2NSwgMC4yKSAwcHggOHB4IDI0cHg7XHJcbn1cclxuXHJcbi5kYXJrLW1vZGUgaGVhZGVyIHtcclxuICAgIGNvbG9yOiAjRkZGRkZGO1xyXG4gICAgYm94LXNoYWRvdzogbm9uZTtcclxufVxyXG5cclxuLm5hdi1pdGVtIHtcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgIHdpZHRoOiAxMDAlO1xyXG59XHJcblxyXG4ubmF2LWl0ZW06Zmlyc3QtY2hpbGQge1xyXG4gICAgbWFyZ2luLWJvdHRvbTogMjBweDtcclxuICAgIG1hcmdpbi10b3A6IDIwcHg7XHJcbn1cclxuXHJcbi5uYXYtaXRlbSAubmF2LWxpbmsge1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XHJcbiAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcclxuICAgIHBhZGRpbmc6IDEwcHg7XHJcbiAgICBib3JkZXItcmFkaXVzOiA1cHg7XHJcbiAgICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDAuMnMgZWFzZTtcclxuICAgIGN1cnNvcjogcG9pbnRlcjtcclxufVxyXG5cclxuLm5hdi1pdGVtIC5uYXYtbGluazpob3ZlciB7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1zZWNvbmRhcnkpO1xyXG59XHJcblxyXG4ubmF2LWxpbmsge1xyXG4gICAgY3Vyc29yOiBwb2ludGVyO1xyXG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XHJcbn1cclxuXHJcbi5uYXYtaXRlbS5hY3RpdmUgLm5hdi1saW5rIHtcclxuICAgIGNvbG9yOiB2YXIoLS1jb2xvci1wcmltYXJ5KTtcclxuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLXNlY29uZGFyeSk7XHJcbn1cclxuXHJcbi5kYXJrLW1vZGUgLm5hdi1pdGVtLmFjdGl2ZSAubmF2LWxpbmsge1xyXG4gICAgY29sb3I6ICNGRkZGRkY7XHJcbn1cclxuXHJcbi5zdWJtZW51IHtcclxuICAgIGRpc3BsYXk6IGdyaWQ7XHJcbiAgICBoZWlnaHQ6IDA7XHJcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gICAgZ2FwOiAyMHB4O1xyXG4gICAgei1pbmRleDogMTA7XHJcbiAgICBwYWRkaW5nOiAwIDE1cHg7XHJcbiAgICBtYXJnaW4tdG9wOiAwO1xyXG4gICAgdHJhbnNpdGlvbjogaGVpZ2h0IDAuNXMgZWFzZSwgbWFyZ2luLXRvcCAwLjVzIGVhc2U7XHJcbn1cclxuXHJcbi5zdWJtZW51LnNob3csXHJcbi5uYXYtaXRlbS5hY3RpdmUgLnN1Ym1lbnUge1xyXG4gICAgbWFyZ2luLXRvcDogMTBweDtcclxufVxyXG5cclxuLm5hdi1pdGVtLmFjdGl2ZSAuc3VibWVudSB7XHJcbiAgICBoZWlnaHQ6IGF1dG87XHJcbn1cclxuXHJcbi5zdWJtZW51IGEge1xyXG4gICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XHJcbn1cclxuXHJcbi5zdWJtZW51IGEuYWN0aXZlIHtcclxuICAgIGNvbG9yOiB2YXIoLS1jb2xvci1zZWNvbmRhcnkpO1xyXG59XHJcblxyXG4uc3VibWVudSBhOmhvdmVyIHsgXHJcbiAgICBjb2xvcjogdmFyKC0tY29sb3Itc2Vjb25kYXJ5KTtcclxuIH1cclxuXHJcbiBoZWFkZXIgLmNyZWRpdHMge1xyXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgYm90dG9tOiA2MHB4O1xyXG4gICAgbGVmdDogMjBweDtcclxuIH1cclxuXHJcbiAuY3JlZGl0cyB7XHJcbiAgICBmb250LXNpemU6IDEwcHg7XHJcbiAgICBsaW5lLWhlaWdodDogMThweDtcclxuIH0iLCIubmF2LWJhciB7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1saWdodCk7XHJcbiAgICBwYWRkaW5nOiAyMHB4O1xyXG4gICAgZGlzcGxheTogZmxleDtcclxuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcclxuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbn1cclxuXHJcbi5uYXYtYmFyIC5icmVhZGNydW1iIHAge1xyXG4gICAgZm9udC13ZWlnaHQ6IDMwMDtcclxuICAgIGZvbnQtc2l6ZTogMThweDtcclxuICAgIGxpbmUtaGVpZ2h0OiAyO1xyXG59XHJcblxyXG4ubmF2LWJhciAubm90aWZpY2F0aW9ucy11c2VyIHtcclxuICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICBnYXA6IDIwcHg7XHJcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG59XHJcblxyXG4ubmF2LWJhciAubm90aWZpY2F0aW9ucy11c2VyICN0aGVtZS1zd2l0Y2gge1xyXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWdyYXkpO1xyXG4gICAgYm9yZGVyOiBub25lO1xyXG4gICAgZGlzcGxheTogZmxleDtcclxuICAgIGdhcDogMzBweDtcclxuICAgIHBhZGRpbmc6IDEwcHggMTBweDtcclxuICAgIGJvcmRlci1yYWRpdXM6IDI1cHg7XHJcbiAgICBjdXJzb3I6IHBvaW50ZXI7XHJcbn1cclxuXHJcbi5uYXYtYmFyIC5ub3RpZmljYXRpb25zLXVzZXIgI3RoZW1lLXN3aXRjaDo6YWZ0ZXIge1xyXG4gICAgY29udGVudDogXCJcIjtcclxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgIGxlZnQ6IDRweDtcclxuICAgIHRvcDogNHB4O1xyXG4gICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICB3aWR0aDogMzJweDtcclxuICAgIGhlaWdodDogMzJweDtcclxuICAgIGJvcmRlci1yYWRpdXM6IDI1cHg7XHJcbiAgICB6LWluZGV4OiAxO1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItbGlnaHQpO1xyXG4gICAgdHJhbnNpdGlvbjogbGVmdCAwLjVzIGVhc2U7XHJcbn1cclxuXHJcbi5kYXJrLW1vZGUgLm5hdi1iYXIgLm5vdGlmaWNhdGlvbnMtdXNlciAjdGhlbWUtc3dpdGNoOjphZnRlciB7XHJcbiAgICAgIGxlZnQ6IDUwcHg7XHJcbn1cclxuXHJcbi5uYXYtYmFyIC5ub3RpZmljYXRpb25zLXVzZXIgI3RoZW1lLXN3aXRjaCBpIHtcclxuICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgei1pbmRleDogMjtcclxufVxyXG5cclxuLm5hdi1iYXIgLm5vdGlmaWNhdGlvbnMtdXNlciBpIHtcclxuICAgIGNvbG9yOiB2YXIoLS1jb2xvci1wcmltYXJ5KTtcclxuICAgIGN1cnNvcjogcG9pbnRlcjtcclxuICAgIGZvbnQtc2l6ZTogMjBweDtcclxuICAgIGxpbmUtaGVpZ2h0OiAyMHB4O1xyXG59XHJcblxyXG4uZGFyay1tb2RlIC5uYXYtYmFyIC5ub3RpZmljYXRpb25zLXVzZXIgaSB7XHJcbiAgICBjb2xvcjogI0ZGRkZGRjtcclxufVxyXG5cclxuLm5hdi1iYXIgLm5vdGlmaWNhdGlvbnMtdXNlciAubm90aWZpY2F0aW9ucyB7XHJcbiAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgYmFja2dyb3VuZDogdmFyKC0tY29sb3ItbGlnaHQpO1xyXG4gICAgaGVpZ2h0OiAxMDAlO1xyXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgdG9wOiAwO1xyXG4gICAgcmlnaHQ6IDA7XHJcbiAgICB3aWR0aDogMjUwcHg7XHJcbiAgICBwYWRkaW5nOiAyMHB4O1xyXG4gICAgei1pbmRleDogNDtcclxuICAgIGJveC1zaGFkb3c6IHJnYmEoMTAwLCAxMDAsIDExMSwgMC4yKSAwcHggN3B4IDI5cHggMHB4O1xyXG4gICAgLXdlYmtpdC1hbmltYXRpb246IHNsaWRlLWluLXJpZ2h0IDAuNXMgY3ViaWMtYmV6aWVyKDAuMjUwLCAwLjQ2MCwgMC40NTAsIDAuOTQwKSBib3RoO1xyXG4gICAgYW5pbWF0aW9uOiBzbGlkZS1pbi1yaWdodCAwLjVzIGN1YmljLWJlemllcigwLjI1MCwgMC40NjAsIDAuNDUwLCAwLjk0MCkgYm90aDtcclxufVxyXG5cclxuLmRhcmstbW9kZSAubmF2LWJhciAubm90aWZpY2F0aW9ucy11c2VyIC5ub3RpZmljYXRpb25zIHtcclxuICAgIGJveC1zaGFkb3c6IG5vbmU7XHJcbn1cclxuXHJcbkAtd2Via2l0LWtleWZyYW1lcyBzbGlkZS1pbi1yaWdodCB7XHJcbiAgICAwJSB7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMTAwMHB4KTtcclxuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMTAwMHB4KTtcclxuICAgICAgICBvcGFjaXR5OiAwO1xyXG4gICAgfVxyXG4gICAgMTAwJSB7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApO1xyXG4gICAgICAgIG9wYWNpdHk6IDE7XHJcbiAgICB9XHJcbn1cclxuXHJcbkBrZXlmcmFtZXMgc2xpZGUtaW4tcmlnaHQge1xyXG4gICAgMCUge1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDEwMDBweCk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDEwMDBweCk7XHJcbiAgICAgICAgb3BhY2l0eTogMDtcclxuICAgIH1cclxuICAgIDEwMCUge1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApO1xyXG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKTtcclxuICAgICAgICBvcGFjaXR5OiAxO1xyXG4gICAgfVxyXG59XHJcblxyXG4ubmF2LWJhciAubm90aWZpY2F0aW9ucy11c2VyIC5ub3RpZmljYXRpb25zIC50aXRsZSB7XHJcbiAgICBmb250LXdlaWdodDogYm9sZDtcclxuICAgIGZvbnQtc2l6ZTogMjBweDtcclxuICAgIGxpbmUtaGVpZ2h0OiAzMHB4O1xyXG4gICAgbWFyZ2luLWJvdHRvbTogMjBweCFpbXBvcnRhbnQ7XHJcbn1cclxuXHJcbi5uYXYtYmFyIC51c2VyIHtcclxuICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgZ2FwOiAxMHB4O1xyXG59XHJcblxyXG4ubmF2LWJhciAudXNlciBpbWcge1xyXG4gICAgd2lkdGg6IDMwcHg7XHJcbiAgICBoZWlnaHQ6IDMwcHg7XHJcbiAgICBib3JkZXItcmFkaXVzOiAzMHB4O1xyXG4gICAgb2JqZWN0LWZpdDogY292ZXI7XHJcbiAgICBib3JkZXI6IHNvbGlkIDNweCB2YXIoLS1jb2xvci1zZWNvbmRhcnkpO1xyXG4gICAgYm94LXNoYWRvdzogcmdiYSgxMDAsIDEwMCwgMTExLCAwLjIpIDBweCA3cHggMjlweCAwcHg7XHJcbn0iLCIuYnRuLTEsIC5idG4tMiwgLmJ0bi1kZWxldGUge1xyXG4gICAgZm9udC1mYW1pbHk6IHZhcigtLWZvbnQtYm9keSkhaW1wb3J0YW50O1xyXG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gICAgYm9yZGVyLXJhZGl1czogMTBweDtcclxuICAgIHBhZGRpbmc6IDEwcHggMzBweDtcclxuICAgIGN1cnNvcjogcG9pbnRlcjtcclxuICAgIGJvcmRlcjogbm9uZTtcclxuICAgIHdpZHRoOiBmaXQtY29udGVudDtcclxuICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xyXG4gICAgZm9udC1zaXplOiAxNnB4O1xyXG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xyXG4gICAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAuM3MgZWFzZSwgY29sb3IgLjNzIGVhc2VcclxufVxyXG5cclxuLmJ0bi0xIHtcclxuICAgIGJhY2tncm91bmQtY29sb3IgOiB2YXIoLS1jb2xvci1zZWNvbmRhcnkpO1xyXG4gICAgY29sb3I6IHZhcigtLWNvbG9yLWxpZ2h0KTtcclxufVxyXG5cclxuLmJ0bi0xOmhvdmVyIHtcclxuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLXByaW1hcnkpO1xyXG59XHJcblxyXG4uYnRuLTIge1xyXG4gICAgYmFja2dyb3VuZC1jb2xvciA6IHZhcigtLWNvbG9yLXByaW1hcnkpO1xyXG4gICAgY29sb3I6IHZhcigtLWNvbG9yLWxpZ2h0KTtcclxufVxyXG5cclxuLmJ0bi0yOmhvdmVyIHtcclxuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLXNlY29uZGFyeSk7XHJcbn1cclxuXHJcbi5kYXJrLW1vZGUgLmJ0bi0xLFxyXG4uZGFyay1tb2RlIC5idG4tMiB7XHJcbiAgICBjb2xvcjogI0ZGRkZGRjtcclxufVxyXG5cclxuLmJ0bi1kZWxldGUge1xyXG4gICAgYmFja2dyb3VuZC1jb2xvciA6ICNmOGQ3ZGE7XHJcbiAgICBjb2xvcjogIzcyMWMyNDtcclxufVxyXG5cclxuLmJ0bi1kZWxldGU6aG92ZXIge1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzcyMWMyNDtcclxuICAgIGNvbG9yOiAjZjhkN2RhO1xyXG59IiwiZm9ybSxcclxuZm9ybSA+IGRpdiB7XHJcbiAgICBkaXNwbGF5OiBncmlkO1xyXG4gICAgZ2FwOiAyMHB4O1xyXG59XHJcblxyXG5sYWJlbCB7XHJcbiAgICB3aWR0aDogMTAwJTtcclxuICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgbWFyZ2luLWJvdHRvbTogNXB4O1xyXG59XHJcblxyXG5zZWxlY3QsIGlucHV0LCB0ZXh0YXJlYSB7XHJcbiAgICB3aWR0aDogLXdlYmtpdC1maWxsLWF2YWlsYWJsZSFpbXBvcnRhbnQ7XHJcbiAgICBwYWRkaW5nOiAxMHB4O1xyXG4gICAgZm9udC1mYW1pbHk6IHZhcigtLWZvbnQtYm9keSkhaW1wb3J0YW50O1xyXG4gICAgYm9yZGVyOiBzb2xpZCAxcHggI2QxZDFkMSFpbXBvcnRhbnQ7XHJcbiAgICBib3JkZXItcmFkaXVzOiA1cHg7XHJcbn1cclxuXHJcbi5kYXJrLW1vZGUgc2VsZWN0LCAuZGFyay1tb2RlIGlucHV0LCAuZGFyay1tb2RlIHRleHRhcmVhLCAuZGFyay1tb2RlIC5jay1jb250ZW50LCAuZGFyay1tb2RlIC5jay10b29sYmFyIHtcclxuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWdyYXkpIWltcG9ydGFudDtcclxuICAgIGNvbG9yOiAjRkZGRkZGIWltcG9ydGFudDtcclxufVxyXG5cclxuaW5wdXRbdHlwZT1cImNvbG9yXCJde1xyXG4gICAgaGVpZ2h0OiA1MHB4O1xyXG59XHJcblxyXG5pbnB1dFt0eXBlPVwiY2hlY2tib3hcIl17XHJcbiAgICB3aWR0aDogZml0LWNvbnRlbnQhaW1wb3J0YW50O1xyXG59XHJcblxyXG4uc2VhcmNoLWZvcm0ge1xyXG4gICAgZGlzcGxheTogZmxleDtcclxuICAgIGdhcDogMzBweDtcclxuICAgIGFsaWduLWl0ZW1zOiBmbGV4LWVuZDtcclxufVxyXG5cclxuLnNlYXJjaC1mb3JtID4gZGl2IHtcclxuICAgIGdhcDogMDtcclxuICAgIHdpZHRoOiAxMDAlO1xyXG59XHJcblxyXG4uc2VhcmNoLWZvcm0gLmNhdGVnb3JpZXMge1xyXG4gICAgbWF4LXdpZHRoOiAzMDBweCFpbXBvcnRhbnQ7XHJcbn1cclxuXHJcbi5idG5zLWZvcm0ge1xyXG4gICAgZGlzcGxheTogZmxleDtcclxuICAgIGdhcDogMTBweDtcclxufSIsIi50aXRsZS10YWJsZSB7XHJcbiAgICBmb250LXdlaWdodDogYm9sZDtcclxuICAgIGZvbnQtc2l6ZTogMThweDtcclxuICAgIGxpbmUtaGVpZ2h0OiAyOHB4O1xyXG59XHJcblxyXG4udGFibGUge1xyXG4gICAgZGlzcGxheTogZmxleDtcclxuICAgIGdhcDogMTBweDtcclxuICAgIG1pbi1oZWlnaHQ6IDUwMHB4O1xyXG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxufVxyXG5cclxuZmlndXJlLnRhYmxlIHtcclxuICAgIG1pbi1oZWlnaHQ6IGF1dG8haW1wb3J0YW50O1xyXG59XHJcblxyXG4udGFibGUgLmhlYWRlcixcclxuLnRhYmxlIC5saW5lIHtcclxuICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICBib3JkZXItcmFkaXVzOiA1cHg7XHJcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgaGVpZ2h0OiBmaXQtY29udGVudDtcclxufVxyXG5cclxuLnRhYmxlIC5oZWFkZXIge1xyXG4gICAgcGFkZGluZzogMTBweDtcclxuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWdyYXkpO1xyXG59XHJcblxyXG4udGFibGUgLmxpbmUge1xyXG4gICAgcGFkZGluZzogNXB4IDEwcHg7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcclxuICAgIGN1cnNvcjogcG9pbnRlcjtcclxuICAgIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMC4zcyBlYXNlO1xyXG59XHJcblxyXG4udGFibGUgLmxpbmU6aG92ZXIge1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItZ3JheSk7XHJcbn1cclxuXHJcbi50YWJsZSAuaGVhZGVyPmRpdixcclxuLnRhYmxlIC5saW5lPmRpdiB7XHJcbiAgICB3aWR0aDogMTAwJTtcclxuICAgIHBhZGRpbmc6IDAgNXB4O1xyXG59XHJcblxyXG4udGFibGUgLmhlYWRlcj5kaXY6bGFzdC1jaGlsZCxcclxuLnRhYmxlIC5saW5lPmRpdjpsYXN0LWNoaWxkLFxyXG4jc2l0ZS10YWJsZSAudGFibGUgLmhlYWRlcj5kaXY6Zmlyc3QtY2hpbGQsXHJcbiNzaXRlLXRhYmxlIC50YWJsZSAubGluZT5kaXY6Zmlyc3QtY2hpbGQgIHtcclxuICAgIG1pbi13aWR0aDogNDBweDtcclxuICAgIHdpZHRoOiA0MHB4O1xyXG59XHJcblxyXG4udGFibGUgLmhlYWRlcj5kaXYgYSB7XHJcbiAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgIGdhcDogNXB4O1xyXG59XHJcblxyXG4udGFibGUgLmxpbmU+ZGl2Omxhc3QtY2hpbGQge1xyXG4gICAgZGlzcGxheTogZmxleDtcclxuICAgIGdhcDogNXB4O1xyXG59XHJcblxyXG4udGFibGUgLmxpbmUgYSB7XHJcbiAgICBjb2xvcjogdmFyKC0tY29sb3ItcHJpbWFyeSk7XHJcbiAgICB0cmFuc2l0aW9uOiBjb2xvciAwLjNzIGVhc2U7XHJcbn1cclxuXHJcbi5kYXJrLW1vZGUgLnRhYmxlIC5saW5lIGEge1xyXG4gICAgY29sb3I6ICNGRkZGRkY7XHJcbn1cclxuXHJcbi50YWJsZSAubGluZSBhOmhvdmVyIHtcclxuICAgIGNvbG9yOiB2YXIoLS1jb2xvci1zZWNvbmRhcnkpO1xyXG59XHJcblxyXG4udGFibGUgLnNlcGFyYXRvciB7XHJcbiAgICB3aWR0aDogOTglO1xyXG4gICAgbWFyZ2luOiAwIGF1dG87XHJcbiAgICBib3JkZXItYm90dG9tOiBzb2xpZCAxcHggdmFyKC0tY29sb3ItZ3JheSk7XHJcbn1cclxuXHJcbi5hY3RpdmUtcGVsbGV0IHtcclxuICAgIHdpZHRoOiAxMHB4O1xyXG4gICAgaGVpZ2h0OiAxMHB4O1xyXG4gICAgYm9yZGVyLXJhZGl1czogMTBweDtcclxuICAgIGJhY2tncm91bmQtY29sb3I6ICNmZjY2NjY7XHJcbn1cclxuXHJcbi5hY3RpdmUtcGVsbGV0LmFjdGl2ZSB7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjODZmZjY2O1xyXG59IiwiLmFsZXJ0IHtcclxuICAgIHBhZGRpbmc6IDIwcHg7XHJcbiAgICBtYXJnaW4tYm90dG9tOiAxNXB4O1xyXG4gICAgYm9yZGVyLXJhZGl1czogNXB4O1xyXG4gICAgZGlzcGxheTogZmxleDtcclxuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcclxuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbn0gXHJcblxyXG4uYWxlcnQuYWxlcnQtc3VjY2VzcyB7XHJcbiAgICBjb2xvcjogIzE1NTcyNDtcclxuICAgIGJhY2tncm91bmQtY29sb3I6ICNkNGVkZGE7XHJcbiAgICBib3JkZXItY29sb3I6ICNjM2U2Y2I7XHJcbn0iLCIucGFnaW5hdGlvbiB7XHJcbiAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG4gICAgZ2FwOiAxMHB4O1xyXG59XHJcblxyXG4ucGFnaW5hdGlvbiBhIHtcclxuICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgcGFkZGluZzogNXB4IDEycHg7XHJcbiAgICBmb250LXNpemU6IDE0cHg7XHJcbiAgICBib3JkZXItcmFkaXVzOiA1cHg7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1zZWNvbmRhcnkpO1xyXG4gICAgY29sb3I6IHZhcigtLWNvbG9yLWxpZ2h0KSFpbXBvcnRhbnQ7XHJcbiAgICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDAuNXMgZWFzZTtcclxufVxyXG5cclxuLmRhcmstbW9kZSAucGFnaW5hdGlvbiBhIHtcclxuICAgIGNvbG9yOiAjRkZGRkZGIWltcG9ydGFudDtcclxufVxyXG5cclxuLnBhZ2luYXRpb24gYS5hY3RpdmUsXHJcbi5wYWdpbmF0aW9uIGE6aG92ZXIge1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItcHJpbWFyeSk7XHJcbn0iLCIuYWNjZXNze1xyXG4gICAgZGlzcGxheTogZmxleDtcclxuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuICAgIGhlaWdodDogMTAwdmg7XHJcbn1cclxuXHJcbi5hY2Nlc3MgbWFpbntcclxuICAgIHdpZHRoOiAzMCU7XHJcbiAgICBtYXJnaW46IGF1dG87XHJcbiAgICBoZWlnaHQ6IGF1dG87XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1saWdodCk7XHJcbiAgICBwYWRkaW5nOiAyMHB4O1xyXG4gICAgYm9yZGVyLXJhZGl1czogMTBweDtcclxufVxyXG5cclxuLmFjY2VzcyAubWVzc2FnZSB7XHJcbiAgICBmb250LXN0eWxlOiBpdGFsaWM7XHJcbiAgICBtYXJnaW4tYm90dG9tOiAxMHB4IWltcG9ydGFudDtcclxufSIsIi5jay5jay1lZGl0b3JfX21haW4+LmNrLWVkaXRvcl9fZWRpdGFibGUge1xyXG4gICAgaGVpZ2h0OiA0MHZoO1xyXG4gICAgbWFyZ2luLWJvdHRvbTogMTVweDtcclxufVxyXG5cclxuLmNvbnRlbnQtZ2VuZXJhdG9yIHtcclxuICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICBnYXA6IDMwcHg7XHJcbn1cclxuXHJcbi5jb250ZW50LWdlbmVyYXRvciAuY29udGVudCB7XHJcbiAgICB3aWR0aDogNTAlO1xyXG4gICAgcGFkZGluZzogMDtcclxufVxyXG5cclxuLmNvbnRlbnQtZ2VuZXJhdG9yIHRleHRhcmVhIHtcclxuICAgIGhlaWdodDogMjAwcHg7XHJcbn1cclxuXHJcbi5jay1lZGl0b3IgYSB7XHJcbiAgICBjb2xvcjogdmFyKC0tY29sb3Itc2Vjb25kYXJ5KTtcclxufSIsIi5jYXRlZ29yeS1zaXRlIHtcclxuICAgIHdpZHRoOiBmaXQtY29udGVudDtcclxuICAgIGJvcmRlci1yYWRpdXM6IDVweDtcclxuICAgIHBhZGRpbmc6IDVweCAxMHB4O1xyXG4gICAgY29sb3I6IHZhcigtLWNvbG9yLWxpZ2h0KTtcclxufVxyXG5cclxuLmRhcmstbW9kZSAuY2F0ZWdvcnktc2l0ZSB7XHJcbiAgICBjb2xvcjogI0ZGRkZGRjtcclxufSJdLCJuYW1lcyI6W10sInNvdXJjZVJvb3QiOiIifQ==*/