NxTIC/css/global/expanded.css

688 lines
73 KiB
CSS

@charset "UTF-8";
/* [1] COULEURS
=========================================================*/
/* (1) COULEURS DU THEME $DEFAULT */
/* (2) COULEURS DE THEME $DARK */
/* (3) Couleurs du theme pour la timeline */
/* [2] DIMENSIONS
=========================================================*/
/* (1) Layout de base */
/* [3] Mixins
=========================================================*/
/* [4] Functions
=========================================================*/
/* [1] Panel list (tokens, utilisateurs, etc)
=========================================================*/
/* [1] COULEURS
=========================================================*/
/* (1) COULEURS DU THEME $DEFAULT */
/* (2) COULEURS DE THEME $DARK */
/* (3) Couleurs du theme pour la timeline */
/* [2] DIMENSIONS
=========================================================*/
/* (1) Layout de base */
/* [3] Mixins
=========================================================*/
/* [4] Functions
=========================================================*/
/* [1] Panneau d'ajout/suppression d'elements
=========================================================*/
#WRAPPER > #CONTAINER section[data-panel-list] {
display: block;
position: relative;
border-radius: 3px;
border: 1px solid #ccc;
background-color: #fff;
font-size: .9em;
color: #000;
/* (1) Header (titre + ajout) */
/* (2) Description (sous le header) */
/* (3) Liste des elements */
/* (5) Formulaire d'ajout d'un nouvel element */
}
#WRAPPER > #CONTAINER section[data-panel-list] > div[data-header] {
display: flex;
position: relative;
flex-direction: row;
flex-wrap: nowrap;
justify-content: space-between;
align-items: center;
padding: .5em .7em;
border-radius: 3px 3px 0 0;
border-bottom: 1px solid #ccc;
background-color: #f5f5f5;
box-shadow: inset 0 0 5px #eee;
}
#WRAPPER > #CONTAINER section[data-panel-list] > div[data-header] > span,
#WRAPPER > #CONTAINER section[data-panel-list] > div[data-header] > button {
color: #333;
font-weight: bold;
line-height: 2em;
}
#WRAPPER > #CONTAINER section[data-panel-list] > div[data-header] > button {
padding: .1em .7em;
border-radius: 3px;
border: 1px solid #777;
background: #ecf0f1;
-webkit-transition: all 0.1s ease-in-out;
transition: all 0.1s ease-in-out;
color: #777;
}
#WRAPPER > #CONTAINER section[data-panel-list] > div[data-header] > button:hover {
background: #399ced;
border-color: #1484df;
color: #fff;
}
#WRAPPER > #CONTAINER section[data-panel-list] > div[data-description] {
display: block;
position: relative;
border-bottom: 1px solid #ccc;
padding: .7em .7em;
color: #555;
}
#WRAPPER > #CONTAINER section[data-panel-list] > ul[data-list] {
display: flex;
position: relative;
flex-direction: column;
justify-content: flex-start;
flex-wrap: nowrap;
margin: 0;
padding: 0;
list-style: none;
/* (4) Chaque element de la liste */
}
#WRAPPER > #CONTAINER section[data-panel-list] > ul[data-list] > li[data-element] {
display: flex;
flex-direction: row;
justify-content: space-between;
align-items: center;
flex-wrap: nowrap;
padding: 1em;
/* (4.1) Logo et type d'element */
/* (4.2) Donnees descriptives */
/* (4.3) Bouton de suppression */
}
#WRAPPER > #CONTAINER section[data-panel-list] > ul[data-list] > li[data-element]:not(:last-child) {
border-bottom: 1px solid #ccc;
}
#WRAPPER > #CONTAINER section[data-panel-list] > ul[data-list] > li[data-element] > div:nth-child(1) {
display: flex;
width: 10em;
height: 6em;
flex-direction: column;
justify-content: flex-end;
align-items: center;
background-size: auto 50%;
}
#WRAPPER > #CONTAINER section[data-panel-list] > ul[data-list] > li[data-element] > div:nth-child(1)[data-token] {
background: url("/f/svg/token/st/container/666666") center 1em no-repeat;
}
#WRAPPER > #CONTAINER section[data-panel-list] > ul[data-list] > li[data-element] > div:nth-child(1)[data-token].active {
background-image: url("/f/svg/token/st/container/399ced");
}
#WRAPPER > #CONTAINER section[data-panel-list] > ul[data-list] > li[data-element] > div:nth-child(1)[data-user] {
background: url("/f/svg/user/st/container/666666") center 1em no-repeat;
}
#WRAPPER > #CONTAINER section[data-panel-list] > ul[data-list] > li[data-element] > div:nth-child(1)[data-user].active {
background-image: url("/f/svg/user/st/container/399ced");
}
#WRAPPER > #CONTAINER section[data-panel-list] > ul[data-list] > li[data-element] > div:nth-child(1)[data-number] {
background: url("/f/svg/phone_number/st/container/666666") center 1em no-repeat;
}
#WRAPPER > #CONTAINER section[data-panel-list] > ul[data-list] > li[data-element] > div:nth-child(1)[data-number].active {
background-image: url("/f/svg/phone_number/st/container/399ced");
}
#WRAPPER > #CONTAINER section[data-panel-list] > ul[data-list] > li[data-element] > div:nth-child(1) > span {
display: block;
padding: 0 .4em;
border-radius: 3px;
border: 1px solid #ddd;
font-size: .8em;
color: #555;
text-transform: uppercase;
font-weight: bold;
}
#WRAPPER > #CONTAINER section[data-panel-list] > ul[data-list] > li[data-element] > div:nth-child(n+2) {
display: flex;
position: relative;
flex: 10em;
padding: 1em;
flex-direction: column;
justify-content: flex-start;
align-items: flex-start;
font-size: 1em;
color: #000;
font-weight: bold;
}
#WRAPPER > #CONTAINER section[data-panel-list] > ul[data-list] > li[data-element] > div:nth-child(n+2) > span[data-prefix]:before {
content: attr(data-prefix) ": ";
font-weight: normal;
}
#WRAPPER > #CONTAINER section[data-panel-list] > ul[data-list] > li[data-element] > button {
padding: .1em .7em;
height: 2em;
border-radius: 3px;
border: 1px solid #de2b08;
background: #fff;
color: #de2b08;
font-weight: bold;
-webkit-transition: all 0.2s ease-in-out;
transition: all 0.2s ease-in-out;
}
#WRAPPER > #CONTAINER section[data-panel-list] > ul[data-list] > li[data-element] > button:hover {
background: #de2b08;
color: #fff;
}
#WRAPPER > #CONTAINER section[data-panel-list] > div[data-add] {
display: none;
position: relative;
padding: 1em;
border-bottom: 1px solid #ccc;
background-color: #ecf0f1;
/* (5.1) Description du champ de texte */
/* (5.2) Champs de texte */
/* (5.3) Bouton de creation animation de @hover*/
}
#WRAPPER > #CONTAINER section[data-panel-list] > div[data-add].active {
display: block;
}
#WRAPPER > #CONTAINER section[data-panel-list] > div[data-add] > .label {
display: inline-block;
width: 18em;
padding-right: 2em;
text-align: right;
color: #3b494c;
}
#WRAPPER > #CONTAINER section[data-panel-list] > div[data-add] > input[type='text'],
#WRAPPER > #CONTAINER section[data-panel-list] > div[data-add] > input[type='email'],
#WRAPPER > #CONTAINER section[data-panel-list] > div[data-add] > input[type='password'] {
margin: 1em 0;
padding: .5em .7em;
border-radius: 3px;
border: 1px solid #ddd;
background-color: #fff;
color: #000;
font-weight: normal;
}
#WRAPPER > #CONTAINER section[data-panel-list] > div[data-add] > input[type='text']:focus,
#WRAPPER > #CONTAINER section[data-panel-list] > div[data-add] > input[type='email']:focus,
#WRAPPER > #CONTAINER section[data-panel-list] > div[data-add] > input[type='password']:focus {
border-color: #399ced;
box-shadow: inset 0 0 2px #ddd;
}
#WRAPPER > #CONTAINER section[data-panel-list] > div[data-add] > input[type='submit']:hover {
background: #399ced;
border-color: #1484df;
color: #fff;
}
/* [2] Formulaire de type 'timeline'
=========================================================*/
/* [1] COULEURS
=========================================================*/
/* (1) COULEURS DU THEME $DEFAULT */
/* (2) COULEURS DE THEME $DARK */
/* (3) Couleurs du theme pour la timeline */
/* [2] DIMENSIONS
=========================================================*/
/* (1) Layout de base */
/* [3] Mixins
=========================================================*/
/* [4] Functions
=========================================================*/
/* [1] Formulaire de type timeline
=========================================================*/
#WRAPPER > #CONTAINER section[data-timeline] {
display: block;
position: relative;
background-color: #fff;
font-size: .9em;
color: #000;
/* (1) On ajoute le liseré à droite pour TOUS les éléments */
/* (2) Titres de sections */
/* (3) Titres des sous-sections */
/* (4) Titres genre text message */
/* (5) 'Tags' -> textes sur le liseré gauche */
/* (6) Input d'upload de fichier (css hack) */
/* Contiendra l'input*/
/* Animation de hover*/
/* Animation de .active*/
/* (7) Inputs de type text */
/* (8) Gestion des espacements */
/* (10) Gestion des espacements verticaux */
/* (11) Gestion des custom <select> */
/* (12) Gestion des coloris pour les titres */
/* (13) Gestion de la navigation fléchée */
/* (14) Gestion de l'affichage des MINI fiches et des FICHES relations */
}
#WRAPPER > #CONTAINER section[data-timeline] h5,
#WRAPPER > #CONTAINER section[data-timeline] h4,
#WRAPPER > #CONTAINER section[data-timeline] h3,
#WRAPPER > #CONTAINER section[data-timeline] *.line, #WRAPPER > #CONTAINER section[data-timeline] [data-space] {
display: block;
color: #333;
margin: 0 40px;
padding: 5px 60px;
border-left: 2px solid #d8e0e9;
}
#WRAPPER > #CONTAINER section[data-timeline] h3 {
display: block;
padding: 20px 40px;
font-size: 1.4em;
color: #000;
font-weight: bold;
/* TODO: Transformer les background en ::before pour que ca soit juste un cercle avec bg et border*/
/* FIXME: Corriger le liseré pour les autres navigateurs que FF*/
/* Gestion du before (compteur css) //*/
}
#WRAPPER > #CONTAINER section[data-timeline] h3[data-n]:before {
content: attr(data-n);
display: inline-block;
position: absolute;
margin-top: .6em;
margin-left: -41px;
padding: 3px 12px;
border-radius: 50%;
/* Contour blanc*/
box-shadow: 0 0 0 3px #fff;
background-color: #738394;
font-size: 1.3em;
color: #fff;
font-weight: bold;
/* On centre sur la ligne*/
transform: translateX(-50%) translateY(-50%);
-moz-transform: translateX(-50%) translateY(-50%);
-o-transform: translateX(-50%) translateY(-50%);
-ms-transform: translateX(-50%) translateY(-50%);
-webkit-transform: translateX(-50%) translateY(-50%);
}
#WRAPPER > #CONTAINER section[data-timeline] h4 {
display: block;
padding: 20px 40px;
font-size: 1.2em;
color: #46505b;
font-weight: bold;
/* Gestion du before (compteur css) //*/
}
#WRAPPER > #CONTAINER section[data-timeline] h4[data-icon]:before {
content: attr(data-icon);
display: inline-block;
position: absolute;
margin-top: .9em;
margin-left: -41px;
padding: 9px;
border-radius: 50%;
/* Contour blanc*/
box-shadow: 0 0 0 2px #fff;
background-color: #738394;
font-size: .9em;
font-family: 'icomoon';
color: #fff;
font-weight: bold;
/* On centre sur la ligne*/
transform: translateX(-50%) translateY(-50%);
-moz-transform: translateX(-50%) translateY(-50%);
-o-transform: translateX(-50%) translateY(-50%);
-ms-transform: translateX(-50%) translateY(-50%);
-webkit-transform: translateX(-50%) translateY(-50%);
}
#WRAPPER > #CONTAINER section[data-timeline] h5 {
display: block;
padding: 20px 40px;
font-size: 1.2em;
color: #46505b;
font-weight: bold;
/* Gestion du before (compteur css) //*/
/* Texte genre text message*/
}
#WRAPPER > #CONTAINER section[data-timeline] h5:before {
content: '';
display: inline-block;
position: absolute;
margin-top: .7em;
margin-left: -41px;
padding: 7px;
border-radius: 50%;
/* Contour blanc*/
box-shadow: 0 0 0 2px #fff;
background-color: #738394;
/* On centre sur la ligne*/
transform: translateX(-50%) translateY(-50%);
-moz-transform: translateX(-50%) translateY(-50%);
-o-transform: translateX(-50%) translateY(-50%);
-ms-transform: translateX(-50%) translateY(-50%);
-webkit-transform: translateX(-50%) translateY(-50%);
}
#WRAPPER > #CONTAINER section[data-timeline] h5[data-text]:after {
content: attr(data-text);
padding: 6px 10px;
border-radius: 3px;
background: #738394;
color: #fff;
font-weight: normal;
}
#WRAPPER > #CONTAINER section[data-timeline] [data-tag] {
display: block;
padding: 40px 60px;
}
#WRAPPER > #CONTAINER section[data-timeline] [data-tag]:before {
content: attr(data-tag);
display: inline-block;
position: absolute;
margin-top: .5em;
margin-left: -41px;
padding: 2px;
background-color: #fff;
font-size: 1.2em;
color: #738394;
font-weight: bold;
/* On centre sur la ligne*/
transform: translateX(-50%) translateY(-50%);
-moz-transform: translateX(-50%) translateY(-50%);
-o-transform: translateX(-50%) translateY(-50%);
-ms-transform: translateX(-50%) translateY(-50%);
-webkit-transform: translateX(-50%) translateY(-50%);
}
#WRAPPER > #CONTAINER section[data-timeline] input[type='file'] {
position: relative;
opacity: 0;
z-index: 8;
cursor: pointer;
}
#WRAPPER > #CONTAINER section[data-timeline] input[type='file'] + span.file-input {
display: inline-block;
position: absolute;
margin-top: -1px;
margin-left: -290px;
width: calc( 290px - 2*15px);
height: 30px;
padding: 0 15px;
border-radius: 3px;
background: #e64e3e;
color: #222;
line-height: 30px;
font-weight: normal;
z-index: 9;
cursor: pointer;
pointer-events: none;
/* Icone d'upload*/
-webkit-transition: background 0.1s ease-in-out;
transition: background 0.1s ease-in-out;
}
#WRAPPER > #CONTAINER section[data-timeline] input[type='file'] + span.file-input:before {
content: 'e ';
font-size: 1em;
font-family: 'icomoon';
color: #222;
font-weight: bold;
}
#WRAPPER > #CONTAINER section[data-timeline] input[type='file']:hover + span.file-input {
background: #d52d1c;
box-shadow: inset 0 0 5px #888;
}
#WRAPPER > #CONTAINER section[data-timeline] input[type='file'].active + span.file-input {
background: #738394;
color: #fff;
}
#WRAPPER > #CONTAINER section[data-timeline] input[type='file'].active + span.file-input:before {
content: 'v ';
color: #fff;
}
#WRAPPER > #CONTAINER section[data-timeline] input[type='text'],
#WRAPPER > #CONTAINER section[data-timeline] input[type='password'],
#WRAPPER > #CONTAINER section[data-timeline] input[type='number'],
#WRAPPER > #CONTAINER section[data-timeline] input[type='button'],
#WRAPPER > #CONTAINER section[data-timeline] input[type='submit'],
#WRAPPER > #CONTAINER section[data-timeline] input[type='mail'] {
display: inline;
width: auto;
margin: unset;
padding: 5px 10px;
margin-bottom: 5px;
margin-right: 15px;
border-radius: 0;
border: 0;
border-bottom: 1px solid #555;
font-size: .8em;
font-weight: normal;
color: #333;
-webkit-transition: border 0.2s ease-in-out, background 0.2s ease-in-out, color 0.2s ease-in-out;
transition: border 0.2s ease-in-out, background 0.2s ease-in-out, color 0.2s ease-in-out;
/* Animation de @focus*/
}
#WRAPPER > #CONTAINER section[data-timeline] input[type='text']:focus,
#WRAPPER > #CONTAINER section[data-timeline] input[type='password']:focus,
#WRAPPER > #CONTAINER section[data-timeline] input[type='number']:focus,
#WRAPPER > #CONTAINER section[data-timeline] input[type='button']:focus,
#WRAPPER > #CONTAINER section[data-timeline] input[type='submit']:focus,
#WRAPPER > #CONTAINER section[data-timeline] input[type='mail']:focus {
border-color: #10baa3;
}
#WRAPPER > #CONTAINER section[data-timeline] input[type='submit'] {
border-color: #085c51;
background: #10baa3;
color: #fff;
}
#WRAPPER > #CONTAINER section[data-timeline] input[type='submit']:hover, #WRAPPER > #CONTAINER section[data-timeline] input[type='submit']:focus {
background: #0ea38e;
}
#WRAPPER > #CONTAINER section[data-timeline] label {
color: #555;
}
#WRAPPER > #CONTAINER section[data-timeline] [data-space] {
padding-top: 20px;
padding-bottom: 20px;
}
#WRAPPER > #CONTAINER section[data-timeline] .spacetop, #WRAPPER > #CONTAINER section[data-timeline] .spaced {
margin-top: 20px !important;
}
#WRAPPER > #CONTAINER section[data-timeline] .spacebtm, #WRAPPER > #CONTAINER section[data-timeline] .spaced {
margin-bottom: 20px !important;
}
#WRAPPER > #CONTAINER section[data-timeline] .nobold,
#WRAPPER > #CONTAINER section[data-timeline] .nobold * {
font-weight: normal !important;
}
#WRAPPER > #CONTAINER section[data-timeline] select {
width: auto;
display: inline-block;
background: transparent;
border: 0;
-webkit-appearance: none;
-moz-appearance: none;
text-indent: 1px;
text-overflow: '';
font-size: .9em;
}
#WRAPPER > #CONTAINER section[data-timeline] select option:not(:disabled) {
padding-left: 1.5em;
}
#WRAPPER > #CONTAINER section[data-timeline] select option:disabled:not(:first-child) {
font-size: 1.2em;
color: #000;
font-weight: bold;
}
#WRAPPER > #CONTAINER section[data-timeline] select option.pad {
padding-left: 2.5em;
}
#WRAPPER > #CONTAINER section[data-timeline] .select-container select {
display: inline-block;
padding: 2px;
padding-right: 30px;
border: none;
border-bottom: 1px solid #333;
background: #fff url("/f/svg/bottom_arrow/st/container/333333") right 10px center no-repeat;
background-size: 10px auto;
overflow: hidden;
}
#WRAPPER > #CONTAINER section[data-timeline] .select-container select:focus {
border-color: #10baa3;
background-image: url("/f/svg/bottom_arrow/st/container/10baa3");
}
#WRAPPER > #CONTAINER section[data-timeline] h5.color0,
#WRAPPER > #CONTAINER section[data-timeline] h4.color0,
#WRAPPER > #CONTAINER section[data-timeline] h3.color0 {
color: #399ced;
}
#WRAPPER > #CONTAINER section[data-timeline] h5.color0:before, #WRAPPER > #CONTAINER section[data-timeline] h5.color0:after,
#WRAPPER > #CONTAINER section[data-timeline] h4.color0:before,
#WRAPPER > #CONTAINER section[data-timeline] h4.color0:after,
#WRAPPER > #CONTAINER section[data-timeline] h3.color0:before,
#WRAPPER > #CONTAINER section[data-timeline] h3.color0:after {
background-color: #399ced;
}
#WRAPPER > #CONTAINER section[data-timeline] h5.color1,
#WRAPPER > #CONTAINER section[data-timeline] h4.color1,
#WRAPPER > #CONTAINER section[data-timeline] h3.color1 {
color: #e64e3e;
}
#WRAPPER > #CONTAINER section[data-timeline] h5.color1:before, #WRAPPER > #CONTAINER section[data-timeline] h5.color1:after,
#WRAPPER > #CONTAINER section[data-timeline] h4.color1:before,
#WRAPPER > #CONTAINER section[data-timeline] h4.color1:after,
#WRAPPER > #CONTAINER section[data-timeline] h3.color1:before,
#WRAPPER > #CONTAINER section[data-timeline] h3.color1:after {
background-color: #e64e3e;
}
#WRAPPER > #CONTAINER section[data-timeline] h5.color2,
#WRAPPER > #CONTAINER section[data-timeline] h4.color2,
#WRAPPER > #CONTAINER section[data-timeline] h3.color2 {
color: #10baa3;
}
#WRAPPER > #CONTAINER section[data-timeline] h5.color2:before, #WRAPPER > #CONTAINER section[data-timeline] h5.color2:after,
#WRAPPER > #CONTAINER section[data-timeline] h4.color2:before,
#WRAPPER > #CONTAINER section[data-timeline] h4.color2:after,
#WRAPPER > #CONTAINER section[data-timeline] h3.color2:before,
#WRAPPER > #CONTAINER section[data-timeline] h3.color2:after {
background-color: #10baa3;
}
#WRAPPER > #CONTAINER section[data-timeline] h5.color3,
#WRAPPER > #CONTAINER section[data-timeline] h4.color3,
#WRAPPER > #CONTAINER section[data-timeline] h3.color3 {
color: #b14be7;
}
#WRAPPER > #CONTAINER section[data-timeline] h5.color3:before, #WRAPPER > #CONTAINER section[data-timeline] h5.color3:after,
#WRAPPER > #CONTAINER section[data-timeline] h4.color3:before,
#WRAPPER > #CONTAINER section[data-timeline] h4.color3:after,
#WRAPPER > #CONTAINER section[data-timeline] h3.color3:before,
#WRAPPER > #CONTAINER section[data-timeline] h3.color3:after {
background-color: #b14be7;
}
#WRAPPER > #CONTAINER section[data-timeline] h5.color4,
#WRAPPER > #CONTAINER section[data-timeline] h4.color4,
#WRAPPER > #CONTAINER section[data-timeline] h3.color4 {
color: #053b5d;
}
#WRAPPER > #CONTAINER section[data-timeline] h5.color4:before, #WRAPPER > #CONTAINER section[data-timeline] h5.color4:after,
#WRAPPER > #CONTAINER section[data-timeline] h4.color4:before,
#WRAPPER > #CONTAINER section[data-timeline] h4.color4:after,
#WRAPPER > #CONTAINER section[data-timeline] h3.color4:before,
#WRAPPER > #CONTAINER section[data-timeline] h3.color4:after {
background-color: #053b5d;
}
#WRAPPER > #CONTAINER section[data-timeline] .arrow-container span {
display: inline-block;
position: relative;
margin: .3em 0;
padding: .5em .8em;
border: 1px solid #b7c6d7;
color: #7692b2;
cursor: pointer;
-webkit-transition: 0.2s ease-in-out;
transition: 0.2s ease-in-out;
}
#WRAPPER > #CONTAINER section[data-timeline] .arrow-container span:not(:last-child) {
border-right: 0;
}
#WRAPPER > #CONTAINER section[data-timeline] .arrow-container span:first-child {
border-radius: 5px 0 0 5px;
}
#WRAPPER > #CONTAINER section[data-timeline] .arrow-container span:last-child {
border-radius: 0 5px 5px 0;
}
#WRAPPER > #CONTAINER section[data-timeline] .arrow-container span:hover, #WRAPPER > #CONTAINER section[data-timeline] .arrow-container span.active {
border-color: #10baa3;
background: #10baa3;
color: #fff;
}
#WRAPPER > #CONTAINER section[data-timeline] article > article {
display: none;
}
#WRAPPER > #CONTAINER section[data-timeline] article > article.active {
display: block;
}
/*# sourceMappingURL=data:application/json;base64,ewoJInZlcnNpb24iOiAzLAoJImZpbGUiOiAiZXhwYW5kZWQuY3NzIiwKCSJzb3VyY2VzIjogWwoJCSIuLi9nbG9iYWwuc2NzcyIsCgkJIi4uL2NvbnN0YW50cy5zY3NzIiwKCQkiLi4vcGFuZWwtbGlzdC5zY3NzIiwKCQkiLi4vdGltZWxpbmUtZm9ybS5zY3NzIgoJXSwKCSJzb3VyY2VzQ29udGVudCI6IFsKCQkiQGltcG9ydCAnY29uc3RhbnRzJztcblxuLyogWzFdIFBhbmVsIGxpc3QgKHRva2VucywgdXRpbGlzYXRldXJzLCBldGMpXG49PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0qL1xuQGltcG9ydCAncGFuZWwtbGlzdCc7XG5cbi8qIFsyXSBGb3JtdWxhaXJlIGRlIHR5cGUgJ3RpbWVsaW5lJ1xuPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ki9cbkBpbXBvcnQgJ3RpbWVsaW5lLWZvcm0nO1xuIiwKCQkiLyogWzFdIENPVUxFVVJTXG49PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0qL1xuLyogKDEpIENPVUxFVVJTIERVIFRIRU1FICRERUZBVUxUICovXG4kdGhlbWUtYmc6ICAgICAgICAgI2U4ZThlODtcbiR0aGVtZS1iZy1wcmltYXJ5OiAjZmZmZmZmO1xuJHRoZW1lLWZnOiAgICAgICAgICM1MTUxNTE7XG4kdGhlbWUtZmctcHJpbWFyeTogIzM5OWNlZDtcblxuLyogKDIpIENPVUxFVVJTIERFIFRIRU1FICREQVJLICovXG4kZGFyay1iZzogICAgICAgICAjMzEzNTQxO1xuJGRhcmstYmctcHJpbWFyeTogIzI5MjgyZTtcbiRkYXJrLWZnOiAgICAgICAgICM5MzkzOTM7XG4kZGFyay1mZy1wcmltYXJ5OiAjZmZmZmZmO1xuXG4kaGVhZGVyLWRhcms6ICAgICAjMzMzMzMzO1xuXG4vKiAoMykgQ291bGV1cnMgZHUgdGhlbWUgcG91ciBsYSB0aW1lbGluZSAqL1xuJHRpbWVsaW5lLWNvbG9yOiAjNzM4Mzk0O1xuJHRpbWVsaW5lLTA6ICMzOTljZWQ7XG4kdGltZWxpbmUtMTogI2U2NGUzZTtcbiR0aW1lbGluZS0yOiAjMTBiYWEzO1xuJHRpbWVsaW5lLTM6ICNiMTRiZTc7XG4kdGltZWxpbmUtNDogIzA1M2I1ZDtcblxuXG4vKiBbMl0gRElNRU5TSU9OU1xuPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ki9cbi8qICgxKSBMYXlvdXQgZGUgYmFzZSAqL1xuJG1lbnUtc2lkZS13aWR0aDogMTVlbTtcbiRoZWFkZXItaGVpZ2h0OiAgIDRlbTtcblxuXG5cbi8qIFszXSBNaXhpbnNcbj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSovXG5AbWl4aW4gdHJhbnNmb3JtKCR2YWx1ZS4uLikge1xuICAgIHRyYW5zZm9ybTogJHZhbHVlO1xuXHQtbW96LXRyYW5zZm9ybTogJHZhbHVlO1xuXHQtby10cmFuc2Zvcm06ICR2YWx1ZTtcblx0LW1zLXRyYW5zZm9ybTogJHZhbHVlO1xuXHQtd2Via2l0LXRyYW5zZm9ybTogJHZhbHVlO1xufVxuXG5cbkBtaXhpbiB0cmFuc2l0aW9uKCR2YWx1ZS4uLikge1xuICAgIC13ZWJraXQtdHJhbnNpdGlvbjogJHZhbHVlO1xuICAgIHRyYW5zaXRpb246ICR2YWx1ZTtcbn1cblxuLyogWzRdIEZ1bmN0aW9uc1xuPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ki9cbi8vIFRyYW5zZm9ybWUgdW5lIGNvdWxldXIgaGV4IGVuIHN0cmluZyBzYW5zIGxlICNcbkBmdW5jdGlvbiBjb2xvci1zdHIoJGNvbG9yKXtcbiAgICBAcmV0dXJuIHN0ci1zbGljZSgjeyRjb2xvcn0sIDIsIHN0ci1sZW5ndGgoI3skY29sb3J9KSk7XG59XG4iLAoJCSJAaW1wb3J0ICdjb25zdGFudHMnO1xuXG4vKiBbMV0gUGFubmVhdSBkJ2Fqb3V0L3N1cHByZXNzaW9uIGQnZWxlbWVudHNcbj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSovXG4jV1JBUFBFUiA+ICNDT05UQUlORVIgc2VjdGlvbltkYXRhLXBhbmVsLWxpc3Rde1xuXHRkaXNwbGF5OiBibG9jaztcblx0cG9zaXRpb246IHJlbGF0aXZlO1xuXG5cdGJvcmRlci1yYWRpdXM6IDNweDtcblx0Ym9yZGVyOiAxcHggc29saWQgI2NjYztcblxuXHRiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuXG5cdGZvbnQtc2l6ZTogLjllbTtcblx0Y29sb3I6ICMwMDA7XG5cblxuXHQvKiAoMSkgSGVhZGVyICh0aXRyZSArIGFqb3V0KSAqL1xuXHQmID4gZGl2W2RhdGEtaGVhZGVyXXtcblx0XHRkaXNwbGF5OiBmbGV4O1xuXHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuXHRcdC8vIGZsZXggcHJvcGVydGllc1xuXHRcdGZsZXgtZGlyZWN0aW9uOiByb3c7XG5cdFx0ZmxleC13cmFwOiBub3dyYXA7XG5cdFx0anVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuXHRcdGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cblx0XHRwYWRkaW5nOiAuNWVtIC43ZW07XG5cblx0XHRib3JkZXItcmFkaXVzOiAzcHggM3B4IDAgMDtcblx0XHRib3JkZXItYm90dG9tOiAxcHggc29saWQgI2NjYztcblxuXHRcdGJhY2tncm91bmQtY29sb3I6ICNmNWY1ZjU7XG5cdFx0Ym94LXNoYWRvdzogaW5zZXQgMCAwIDVweCAjZWVlO1xuXG5cdFx0Ly8gTGliZWxsZSBkdSBwYW5lbFxuXHRcdCYgPiBzcGFuLFxuXHRcdCYgPiBidXR0b257XG5cdFx0XHRjb2xvcjogIzMzMztcblx0XHRcdGZvbnQtd2VpZ2h0OiBib2xkO1xuXHRcdFx0bGluZS1oZWlnaHQ6IDJlbTtcblx0XHR9XG5cblx0XHQvLyBCb3V0b24gYWpvdXRlclxuXHRcdCYgPiBidXR0b257XG5cdFx0XHRwYWRkaW5nOiAuMWVtIC43ZW07XG5cblx0XHRcdGJvcmRlci1yYWRpdXM6IDNweDtcblx0XHRcdGJvcmRlcjogMXB4IHNvbGlkICM3Nzc7XG5cblx0XHRcdGJhY2tncm91bmQ6ICNlY2YwZjE7XG5cblx0XHRcdEBpbmNsdWRlIHRyYW5zaXRpb24oIGFsbCAuMXMgZWFzZS1pbi1vdXQgKTtcblxuXHRcdFx0Y29sb3I6ICM3Nzc7XG5cblx0XHRcdC8vIEFuaW1hdGlvbiBkZSBAaG92ZXJcblx0XHRcdCY6aG92ZXJ7XG5cdFx0XHRcdGJhY2tncm91bmQ6ICR0aGVtZS1mZy1wcmltYXJ5O1xuXHRcdFx0XHRib3JkZXItY29sb3I6IGRhcmtlbigkdGhlbWUtZmctcHJpbWFyeSwgMTApO1xuXHRcdFx0XHRjb2xvcjogI2ZmZjtcblx0XHRcdH1cblx0XHR9XG5cblx0fVxuXG5cblx0LyogKDIpIERlc2NyaXB0aW9uIChzb3VzIGxlIGhlYWRlcikgKi9cblx0JiA+IGRpdltkYXRhLWRlc2NyaXB0aW9uXXtcblx0XHRkaXNwbGF5OiBibG9jaztcblx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cblx0XHRib3JkZXItYm90dG9tOiAxcHggc29saWQgI2NjYztcblxuXHRcdHBhZGRpbmc6IC43ZW0gLjdlbTtcblxuXHRcdGNvbG9yOiAjNTU1O1xuXHR9XG5cblxuXG5cdC8qICgzKSBMaXN0ZSBkZXMgZWxlbWVudHMgKi9cblx0JiA+IHVsW2RhdGEtbGlzdF17XG5cdFx0ZGlzcGxheTogZmxleDtcblx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cblx0XHQvLyBmbGV4IHByb3BlcnRpZXNcblx0XHRmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuXHRcdGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcblx0XHRmbGV4LXdyYXA6IG5vd3JhcDtcblxuXHRcdG1hcmdpbjogMDtcblx0XHRwYWRkaW5nOiAwO1xuXG5cdFx0bGlzdC1zdHlsZTogbm9uZTtcblxuXG5cdFx0LyogKDQpIENoYXF1ZSBlbGVtZW50IGRlIGxhIGxpc3RlICovXG5cdFx0JiA+IGxpW2RhdGEtZWxlbWVudF17XG5cdFx0XHRkaXNwbGF5OiBmbGV4O1xuXG5cdFx0XHQvLyBmbGV4IHByb3BlcnRpZXNcblx0XHRcdGZsZXgtZGlyZWN0aW9uOiByb3c7XG5cdFx0XHRqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG5cdFx0XHRhbGlnbi1pdGVtczogY2VudGVyO1xuXHRcdFx0ZmxleC13cmFwOiBub3dyYXA7XG5cblx0XHRcdHBhZGRpbmc6IDFlbTtcblxuXHRcdFx0Ly8gcmVib3JkIGVuIGJhcyBzYXVmIGRlcm5pZXJcblx0XHRcdCY6bm90KDpsYXN0LWNoaWxkKXtcblx0XHRcdFx0Ym9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNjY2M7XG5cdFx0XHR9XG5cblx0XHRcdC8qICg0LjEpIExvZ28gZXQgdHlwZSBkJ2VsZW1lbnQgKi9cblx0XHRcdCYgPiBkaXY6bnRoLWNoaWxkKDEpe1xuXHRcdFx0XHRkaXNwbGF5OiBmbGV4O1xuXHRcdFx0XHRcdHdpZHRoOiAxMGVtO1xuXHRcdFx0XHRcdGhlaWdodDogNmVtO1xuXG5cdFx0XHRcdC8vIGZsZXggcHJvcGVydGllc1xuXHRcdFx0XHRmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuXHRcdFx0XHRqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xuXHRcdFx0XHRhbGlnbi1pdGVtczogY2VudGVyO1xuXG5cdFx0XHRcdC8vIEltYWdlIHBvdXIgdG9rZW5cblx0XHRcdFx0JltkYXRhLXRva2VuXXtcblx0XHRcdFx0XHRiYWNrZ3JvdW5kOiB1cmwoJy9mL3N2Zy90b2tlbi9zdC9jb250YWluZXIvNjY2NjY2JykgY2VudGVyIDFlbSBuby1yZXBlYXQ7XG5cdFx0XHRcdFx0Ly8gU2kgbGUgdG9rZW4gZXN0IGFjdGlmXG5cdFx0XHRcdFx0Ji5hY3RpdmV7XG5cdFx0XHRcdFx0XHRiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJy9mL3N2Zy90b2tlbi9zdC9jb250YWluZXIvI3tjb2xvci1zdHIoJHRoZW1lLWZnLXByaW1hcnkpfScpO1xuXHRcdFx0XHRcdH1cblx0XHRcdFx0fVxuXG5cblx0XHRcdFx0Ly8gSW1hZ2UgcG91ciB1dGlsaXNhdGV1clxuXHRcdFx0XHQmW2RhdGEtdXNlcl17XG5cdFx0XHRcdFx0YmFja2dyb3VuZDogdXJsKCcvZi9zdmcvdXNlci9zdC9jb250YWluZXIvNjY2NjY2JykgY2VudGVyIDFlbSBuby1yZXBlYXQ7XG5cdFx0XHRcdFx0Ly8gU2kgbGUgdG9rZW4gZXN0IGFjdGlmXG5cdFx0XHRcdFx0Ji5hY3RpdmV7XG5cdFx0XHRcdFx0XHRiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJy9mL3N2Zy91c2VyL3N0L2NvbnRhaW5lci8je2NvbG9yLXN0cigkdGhlbWUtZmctcHJpbWFyeSl9Jyk7XG5cdFx0XHRcdFx0fVxuXHRcdFx0XHR9XG5cblxuXHRcdFx0XHQvLyBJbWFnZSBwb3VyIHV0aWxpc2F0ZXVyXG5cdFx0XHRcdCZbZGF0YS1udW1iZXJde1xuXHRcdFx0XHRcdGJhY2tncm91bmQ6IHVybCgnL2Yvc3ZnL3Bob25lX251bWJlci9zdC9jb250YWluZXIvNjY2NjY2JykgY2VudGVyIDFlbSBuby1yZXBlYXQ7XG5cdFx0XHRcdFx0Ly8gU2kgbGUgdG9rZW4gZXN0IGFjdGlmXG5cdFx0XHRcdFx0Ji5hY3RpdmV7XG5cdFx0XHRcdFx0XHRiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJy9mL3N2Zy9waG9uZV9udW1iZXIvc3QvY29udGFpbmVyLyN7Y29sb3Itc3RyKCR0aGVtZS1mZy1wcmltYXJ5KX0nKTtcblx0XHRcdFx0XHR9XG5cdFx0XHRcdH1cblxuXHRcdFx0XHRiYWNrZ3JvdW5kLXNpemU6IGF1dG8gNTAlO1xuXG5cblxuXHRcdFx0XHQvLyBUZXh0ZSBwb3VyIGxlIHR5cGUgZCdlbGVtZW50XG5cdFx0XHRcdCYgPiBzcGFue1xuXHRcdFx0XHRcdGRpc3BsYXk6IGJsb2NrO1xuXG5cdFx0XHRcdFx0cGFkZGluZzogMCAuNGVtO1xuXG5cdFx0XHRcdFx0Ym9yZGVyLXJhZGl1czogM3B4O1xuXHRcdFx0XHRcdGJvcmRlcjogMXB4IHNvbGlkICNkZGQ7XG5cblx0XHRcdFx0XHRmb250LXNpemU6IC44ZW07XG5cdFx0XHRcdFx0Y29sb3I6ICM1NTU7XG5cdFx0XHRcdFx0dGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcblx0XHRcdFx0XHRmb250LXdlaWdodDogYm9sZDtcblx0XHRcdFx0fVxuXG5cdFx0XHR9XG5cblx0XHRcdC8qICg0LjIpIERvbm5lZXMgZGVzY3JpcHRpdmVzICovXG5cdFx0XHQmID4gZGl2Om50aC1jaGlsZChuKzIpe1xuXHRcdFx0XHRkaXNwbGF5OiBmbGV4O1xuXHRcdFx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cblx0XHRcdFx0ZmxleDogMTBlbTtcblxuXHRcdFx0XHRwYWRkaW5nOiAxZW07XG5cblx0XHRcdFx0Ly8gZmxleCBwcm9wZXJ0aWVzXG5cdFx0XHRcdGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG5cdFx0XHRcdGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcblx0XHRcdFx0YWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG5cblx0XHRcdFx0Zm9udC1zaXplOiAxZW07XG5cdFx0XHRcdGNvbG9yOiAjMDAwO1xuXHRcdFx0XHRmb250LXdlaWdodDogYm9sZDtcblxuXHRcdFx0XHQvLyBPbiBwcmVmaXhlIGNoYXF1ZSBkb25uZWVcblx0XHRcdFx0JiA+IHNwYW5bZGF0YS1wcmVmaXhdOmJlZm9yZXtcblx0XHRcdFx0XHRjb250ZW50OiBhdHRyKGRhdGEtcHJlZml4KSBcIjogXCI7XG5cdFx0XHRcdFx0Zm9udC13ZWlnaHQ6IG5vcm1hbDtcblx0XHRcdFx0fVxuXHRcdFx0fVxuXG5cdFx0XHQvKiAoNC4zKSBCb3V0b24gZGUgc3VwcHJlc3Npb24gKi9cblx0XHRcdCYgPiBidXR0b257XG5cdFx0XHRcdHBhZGRpbmc6IC4xZW0gLjdlbTtcblx0XHRcdFx0XHRoZWlnaHQ6IDJlbTtcblxuXHRcdFx0XHRib3JkZXItcmFkaXVzOiAzcHg7XG5cdFx0XHRcdGJvcmRlcjogMXB4IHNvbGlkICNkZTJiMDg7XG5cblx0XHRcdFx0YmFja2dyb3VuZDogI2ZmZjtcblxuXHRcdFx0XHRjb2xvcjogI2RlMmIwODtcblx0XHRcdFx0Zm9udC13ZWlnaHQ6IGJvbGQ7XG5cblx0XHRcdFx0QGluY2x1ZGUgdHJhbnNpdGlvbiggYWxsIC4ycyBlYXNlLWluLW91dCApO1xuXG5cdFx0XHRcdC8vIEFuaW1hdGlvbiBkZSBAaG92ZXJcblx0XHRcdFx0Jjpob3Zlcntcblx0XHRcdFx0XHRiYWNrZ3JvdW5kOiAjZGUyYjA4O1xuXHRcdFx0XHRcdGNvbG9yOiAjZmZmO1xuXHRcdFx0XHR9XG5cdFx0XHR9XG5cblx0XHR9XG5cdH1cblxuXG5cdC8qICg1KSBGb3JtdWxhaXJlIGQnYWpvdXQgZCd1biBub3V2ZWwgZWxlbWVudCAqL1xuXHQmID4gZGl2W2RhdGEtYWRkXXtcblx0XHRkaXNwbGF5OiBub25lO1xuXG5cdFx0Ly8gQWZmaWNoYWdlIHF1YW5kIC5hY3RpdmVcblx0XHQmLmFjdGl2ZXtcblx0XHRcdGRpc3BsYXk6IGJsb2NrO1xuXHRcdH1cblxuXHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuXHRcdHBhZGRpbmc6IDFlbTtcblxuXHRcdGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjY2NjO1xuXG5cdFx0YmFja2dyb3VuZC1jb2xvcjogI2VjZjBmMTtcblxuXHRcdC8vIGZvbnQtd2VpZ2h0OiBib2xkO1xuXG5cdFx0LyogKDUuMSkgRGVzY3JpcHRpb24gZHUgY2hhbXAgZGUgdGV4dGUgKi9cblx0XHQmID4gLmxhYmVse1xuXHRcdFx0ZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXHRcdFx0d2lkdGg6IDE4ZW07XG5cdFx0XHRwYWRkaW5nLXJpZ2h0OiAyZW07XG5cdFx0XHR0ZXh0LWFsaWduOiByaWdodDtcblx0XHRcdGNvbG9yOiAjM2I0OTRjO1xuXHRcdH1cblxuXG5cdFx0LyogKDUuMikgQ2hhbXBzIGRlIHRleHRlICovXG5cdFx0JiA+IGlucHV0W3R5cGU9J3RleHQnXSxcblx0XHQmID4gaW5wdXRbdHlwZT0nZW1haWwnXSxcblx0XHQmID4gaW5wdXRbdHlwZT0ncGFzc3dvcmQnXXtcblx0XHRcdG1hcmdpbjogMWVtIDA7XG5cdFx0XHRwYWRkaW5nOiAuNWVtIC43ZW07XG5cblx0XHRcdGJvcmRlci1yYWRpdXM6IDNweDtcblx0XHRcdGJvcmRlcjogMXB4IHNvbGlkICNkZGQ7XG5cblx0XHRcdGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG5cblx0XHRcdGNvbG9yOiAjMDAwO1xuXHRcdFx0Zm9udC13ZWlnaHQ6IG5vcm1hbDtcblxuXHRcdFx0Ly8gQW5pbWF0aW9uIGRlIEBmb2N1c1xuXHRcdFx0Jjpmb2N1c3tcblx0XHRcdFx0Ym9yZGVyLWNvbG9yOiAkdGhlbWUtZmctcHJpbWFyeTtcblx0XHRcdFx0Ym94LXNoYWRvdzogaW5zZXQgMCAwIDJweCAjZGRkO1xuXHRcdFx0fVxuXHRcdH1cblxuXG5cdFx0LyogKDUuMykgQm91dG9uIGRlIGNyZWF0aW9uIGFuaW1hdGlvbiBkZSBAaG92ZXIqL1xuXHRcdCYgPiBpbnB1dFt0eXBlPSdzdWJtaXQnXTpob3Zlcntcblx0XHRcdGJhY2tncm91bmQ6ICR0aGVtZS1mZy1wcmltYXJ5O1xuXHRcdFx0Ym9yZGVyLWNvbG9yOiBkYXJrZW4oJHRoZW1lLWZnLXByaW1hcnksIDEwKTtcblx0XHRcdGNvbG9yOiAjZmZmO1xuXHRcdH1cblx0fVxuXG59XG4iLAoJCSJAaW1wb3J0ICdjb25zdGFudHMnO1xuXG4vKiBbMV0gRm9ybXVsYWlyZSBkZSB0eXBlIHRpbWVsaW5lXG49PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0qL1xuI1dSQVBQRVIgPiAjQ09OVEFJTkVSIHNlY3Rpb25bZGF0YS10aW1lbGluZV17XG5cdGRpc3BsYXk6IGJsb2NrO1xuXHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cblx0YmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcblxuXHRmb250LXNpemU6IC45ZW07XG5cdGNvbG9yOiAjMDAwO1xuXG5cdC8qICgxKSBPbiBham91dGUgbGUgbGlzZXLDqSDDoCBkcm9pdGUgcG91ciBUT1VTIGxlcyDDqWzDqW1lbnRzICovXG5cdCYgaDUsXG5cdCYgaDQsXG5cdCYgaDMsXG5cdCYgKi5saW5le1xuXHRcdGRpc3BsYXk6IGJsb2NrO1xuXG5cdFx0Y29sb3I6ICMzMzM7XG5cblx0XHRtYXJnaW46IDAgNDBweDtcblx0XHRwYWRkaW5nOiA1cHggNjBweDtcblxuICAgICAgICBib3JkZXItbGVmdDogMnB4IHNvbGlkICNkOGUwZTk7XG5cblx0fVxuXG5cblx0LyogKDIpIFRpdHJlcyBkZSBzZWN0aW9ucyAqL1xuXHQmIGgze1xuXHRcdGRpc3BsYXk6IGJsb2NrO1xuXHRcdHBhZGRpbmc6IDIwcHggNDBweDtcblxuXHRcdGZvbnQtc2l6ZTogMS40ZW07XG5cdFx0Y29sb3I6ICMwMDA7XG5cdFx0Zm9udC13ZWlnaHQ6IGJvbGQ7XG5cbiAgICAgICAgLy8gYmFja2dyb3VuZC1jb2xvcjogJHRpbWVsaW5lLWNvbG9yO1xuXG5cdFx0LyogVE9ETzogVHJhbnNmb3JtZXIgbGVzIGJhY2tncm91bmQgZW4gOjpiZWZvcmUgcG91ciBxdWUgY2Egc29pdCBqdXN0ZSB1biBjZXJjbGUgYXZlYyBiZyBldCBib3JkZXIqL1xuXHRcdC8qIEZJWE1FOiBDb3JyaWdlciBsZSBsaXNlcsOpIHBvdXIgbGVzIGF1dHJlcyBuYXZpZ2F0ZXVycyBxdWUgRkYqL1xuXG5cdFx0LyogR2VzdGlvbiBkdSBiZWZvcmUgKGNvbXB0ZXVyIGNzcykgLy8qL1xuXHRcdCZbZGF0YS1uXTpiZWZvcmV7XG4gICAgICAgICAgICBjb250ZW50OiBhdHRyKGRhdGEtbik7XG5cbiAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IC42ZW07XG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogLTQxcHg7XG4gICAgICAgICAgICBwYWRkaW5nOiAzcHggMTJweDtcblxuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgICAgICAgICAgLyogQ29udG91ciBibGFuYyovXG4gICAgICAgICAgICBib3gtc2hhZG93OiAwIDAgMCAzcHggI2ZmZjtcblxuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHRpbWVsaW5lLWNvbG9yO1xuXG5cdFx0XHRmb250LXNpemU6IDEuM2VtO1xuXHRcdFx0Y29sb3I6ICNmZmY7XG5cdFx0XHRmb250LXdlaWdodDogYm9sZDtcblxuICAgICAgICAgICAgLyogT24gY2VudHJlIHN1ciBsYSBsaWduZSovXG4gICAgICAgICAgICBAaW5jbHVkZSB0cmFuc2Zvcm0oIHRyYW5zbGF0ZVgoLTUwJSkgdHJhbnNsYXRlWSgtNTAlKSApO1xuXG5cdFx0fVxuXHR9XG5cblx0LyogKDMpIFRpdHJlcyBkZXMgc291cy1zZWN0aW9ucyAqL1xuXHQmIGg0e1xuXHRcdGRpc3BsYXk6IGJsb2NrO1xuXG5cdFx0cGFkZGluZzogMjBweCA0MHB4O1xuXG5cdFx0Zm9udC1zaXplOiAxLjJlbTtcblx0XHRjb2xvcjogZGFya2VuKCR0aW1lbGluZS1jb2xvciwgMjApO1xuXHRcdGZvbnQtd2VpZ2h0OiBib2xkO1xuXG5cdFx0LyogR2VzdGlvbiBkdSBiZWZvcmUgKGNvbXB0ZXVyIGNzcykgLy8qL1xuXHRcdCZbZGF0YS1pY29uXTpiZWZvcmV7XG5cdFx0XHRjb250ZW50OiBhdHRyKGRhdGEtaWNvbik7XG5cbiAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IC45ZW07XG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogLTQxcHg7XG4gICAgICAgICAgICBwYWRkaW5nOiA5cHg7XG5cbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICAgICAgICAgIC8qIENvbnRvdXIgYmxhbmMqL1xuICAgICAgICAgICAgYm94LXNoYWRvdzogMCAwIDAgMnB4ICNmZmY7XG5cbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR0aW1lbGluZS1jb2xvcjtcblxuXHRcdFx0Zm9udC1zaXplOiAuOWVtO1xuXHRcdFx0Zm9udC1mYW1pbHk6ICdpY29tb29uJztcblx0XHRcdGNvbG9yOiAjZmZmO1xuXHRcdFx0Zm9udC13ZWlnaHQ6IGJvbGQ7XG5cbiAgICAgICAgICAgIC8qIE9uIGNlbnRyZSBzdXIgbGEgbGlnbmUqL1xuICAgICAgICAgICAgQGluY2x1ZGUgdHJhbnNmb3JtKCB0cmFuc2xhdGVYKC01MCUpIHRyYW5zbGF0ZVkoLTUwJSkgKTtcblx0XHR9XG5cdH1cblxuXHQvKiAoNCkgVGl0cmVzIGdlbnJlIHRleHQgbWVzc2FnZSAqL1xuXHQmIGg1e1xuXHRcdGRpc3BsYXk6IGJsb2NrO1xuXG5cdFx0cGFkZGluZzogMjBweCA0MHB4O1xuXG5cdFx0Zm9udC1zaXplOiAxLjJlbTtcblx0XHRjb2xvcjogZGFya2VuKCR0aW1lbGluZS1jb2xvciwgMjApO1xuXHRcdGZvbnQtd2VpZ2h0OiBib2xkO1xuXG5cdFx0LyogR2VzdGlvbiBkdSBiZWZvcmUgKGNvbXB0ZXVyIGNzcykgLy8qL1xuXHRcdCY6YmVmb3Jle1xuXHRcdFx0Y29udGVudDogJyc7XG5cbiAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IC43ZW07XG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogLTQxcHg7XG4gICAgICAgICAgICBwYWRkaW5nOiA3cHg7XG5cbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICAgICAgICAgIC8qIENvbnRvdXIgYmxhbmMqL1xuICAgICAgICAgICAgYm94LXNoYWRvdzogMCAwIDAgMnB4ICNmZmY7XG5cbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR0aW1lbGluZS1jb2xvcjtcblxuICAgICAgICAgICAgLyogT24gY2VudHJlIHN1ciBsYSBsaWduZSovXG4gICAgICAgICAgICBAaW5jbHVkZSB0cmFuc2Zvcm0oIHRyYW5zbGF0ZVgoLTUwJSkgdHJhbnNsYXRlWSgtNTAlKSApO1xuXHRcdH1cblxuICAgICAgICAvKiBUZXh0ZSBnZW5yZSB0ZXh0IG1lc3NhZ2UqL1xuICAgICAgICAmW2RhdGEtdGV4dF06YWZ0ZXJ7XG4gICAgICAgICAgICBjb250ZW50OiBhdHRyKGRhdGEtdGV4dCk7XG4gICAgICAgICAgICBwYWRkaW5nOiA2cHggMTBweDtcblxuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogM3B4O1xuXG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiAkdGltZWxpbmUtY29sb3I7XG5cbiAgICAgICAgICAgIGNvbG9yOiAjZmZmO1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICAgICAgfVxuXHR9XG5cblx0LyogKDUpICdUYWdzJyAtPiB0ZXh0ZXMgc3VyIGxlIGxpc2Vyw6kgZ2F1Y2hlICovXG5cdCYgW2RhdGEtdGFnXXtcblx0XHRkaXNwbGF5OiBibG9jaztcblxuXHRcdHBhZGRpbmc6IDQwcHggNjBweDtcblxuICAgICAgICAmOmJlZm9yZXtcbiAgICBcdFx0Y29udGVudDogYXR0cihkYXRhLXRhZyk7XG5cbiAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IC41ZW07XG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogLTQxcHg7XG4gICAgICAgICAgICBwYWRkaW5nOiAycHg7XG5cbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG5cbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMS4yZW07XG4gICAgICAgICAgICBjb2xvcjogJHRpbWVsaW5lLWNvbG9yO1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG5cbiAgICAgICAgICAgIC8qIE9uIGNlbnRyZSBzdXIgbGEgbGlnbmUqL1xuICAgICAgICAgICAgQGluY2x1ZGUgdHJhbnNmb3JtKCB0cmFuc2xhdGVYKC01MCUpIHRyYW5zbGF0ZVkoLTUwJSkgKTtcbiAgICAgICAgfVxuXHR9XG5cbiAgICAvKiAoNikgSW5wdXQgZCd1cGxvYWQgZGUgZmljaGllciAoY3NzIGhhY2spICovXG4gICAgJiBpbnB1dFt0eXBlPSdmaWxlJ117XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgb3BhY2l0eTogMDtcblxuICAgICAgICB6LWluZGV4OiA4O1xuXG4gICAgICAgIGN1cnNvcjogcG9pbnRlcjtcblxuICAgIH1cblxuICAgIC8qIENvbnRpZW5kcmEgbCdpbnB1dCovXG4gICAgJiBpbnB1dFt0eXBlPSdmaWxlJ10gKyBzcGFuLmZpbGUtaW5wdXR7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogLTFweDtcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAtMjkwcHg7XG4gICAgICAgICAgICB3aWR0aDogY2FsYyggMjkwcHggLSAyKjE1cHggKTtcbiAgICAgICAgICAgIGhlaWdodDogMzBweDtcblxuICAgICAgICBwYWRkaW5nOiAwIDE1cHg7XG5cbiAgICAgICAgYm9yZGVyLXJhZGl1czogM3B4O1xuICAgICAgICBiYWNrZ3JvdW5kOiAkdGltZWxpbmUtMTtcblxuICAgICAgICBjb2xvcjogIzIyMjtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDMwcHg7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG5cbiAgICAgICAgei1pbmRleDogOTtcblxuICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG5cblx0XHRwb2ludGVyLWV2ZW50czogbm9uZTtcblxuICAgICAgICAvKiBJY29uZSBkJ3VwbG9hZCovXG4gICAgICAgICY6YmVmb3Jle1xuICAgICAgICAgICAgY29udGVudDogJ2UgJztcblxuICAgICAgICAgICAgZm9udC1zaXplOiAxZW07XG5cdFx0XHRmb250LWZhbWlseTogJ2ljb21vb24nO1xuXHRcdFx0Y29sb3I6ICMyMjI7XG5cdFx0XHRmb250LXdlaWdodDogYm9sZDtcbiAgICAgICAgfVxuXG5cdFx0QGluY2x1ZGUgdHJhbnNpdGlvbiggYmFja2dyb3VuZCAuMXMgZWFzZS1pbi1vdXQgKTtcbiAgICB9XG5cblxuXHQvKiBBbmltYXRpb24gZGUgaG92ZXIqL1xuXHQmIGlucHV0W3R5cGU9J2ZpbGUnXTpob3ZlciArIHNwYW4uZmlsZS1pbnB1dHtcblx0XHRiYWNrZ3JvdW5kOiBkYXJrZW4oJHRpbWVsaW5lLTEsIDEwKTtcblx0XHRib3gtc2hhZG93OiBpbnNldCAwIDAgNXB4ICM4ODg7XG5cdH1cblxuXG5cdC8qIEFuaW1hdGlvbiBkZSAuYWN0aXZlKi9cblx0JiBpbnB1dFt0eXBlPSdmaWxlJ10uYWN0aXZlICsgc3Bhbi5maWxlLWlucHV0e1xuXHRcdGJhY2tncm91bmQ6ICR0aW1lbGluZS1jb2xvcjtcblx0XHRjb2xvcjogI2ZmZjtcblx0XHQvLyBPbiBjaGFuZ2UgbCdpY8O0bmVcblx0XHQmOmJlZm9yZXtcbiAgICAgICAgICAgIGNvbnRlbnQ6ICd2ICc7XG5cdFx0XHRjb2xvcjogI2ZmZjtcblx0XHR9XG5cdH1cblxuXHQvKiAoNykgSW5wdXRzIGRlIHR5cGUgdGV4dCAqL1xuXHQmIGlucHV0W3R5cGU9J3RleHQnXSxcblx0JiBpbnB1dFt0eXBlPSdwYXNzd29yZCddLFxuXHQmIGlucHV0W3R5cGU9J251bWJlciddLFxuXHQmIGlucHV0W3R5cGU9J2J1dHRvbiddLFxuXHQmIGlucHV0W3R5cGU9J3N1Ym1pdCddLFxuXHQmIGlucHV0W3R5cGU9J21haWwnXXtcblx0XHRkaXNwbGF5OiBpbmxpbmU7XG5cdFx0d2lkdGg6IGF1dG87XG5cblx0XHRtYXJnaW46IHVuc2V0O1xuXHRcdHBhZGRpbmc6IDVweCAxMHB4O1xuXHRcdG1hcmdpbi1ib3R0b206IDVweDtcblx0XHRtYXJnaW4tcmlnaHQ6IDE1cHg7XG5cblx0XHRib3JkZXItcmFkaXVzOiAwO1xuXHRcdGJvcmRlcjogMDtcblx0XHRib3JkZXItYm90dG9tOiAxcHggc29saWQgIzU1NTtcblxuXHRcdGZvbnQtc2l6ZTogLjhlbTtcblx0XHRmb250LXdlaWdodDogbm9ybWFsO1xuXHRcdGNvbG9yOiAjMzMzO1xuXG5cdFx0QGluY2x1ZGUgdHJhbnNpdGlvbiggYm9yZGVyIC4ycyBlYXNlLWluLW91dCwgYmFja2dyb3VuZCAuMnMgZWFzZS1pbi1vdXQsIGNvbG9yIC4ycyBlYXNlLWluLW91dCApO1xuXG5cdFx0LyogQW5pbWF0aW9uIGRlIEBmb2N1cyovXG5cdFx0Jjpmb2N1c3tcblx0XHRcdGJvcmRlci1jb2xvcjogJHRpbWVsaW5lLTI7XG5cdFx0fVxuXHR9XG5cblx0Ly8gQm91dG9uc1xuXHQmIGlucHV0W3R5cGU9J3N1Ym1pdCdde1xuXHRcdGJvcmRlci1jb2xvcjogZGFya2VuKCR0aW1lbGluZS0yLCAyMCk7XG5cblx0XHRiYWNrZ3JvdW5kOiAkdGltZWxpbmUtMjtcblxuXHRcdGNvbG9yOiAjZmZmO1xuXG5cdFx0Ly8gQW5pbWF0aW9uIGRlIEBob3ZlciBwb3VyIGxlcyBib3V0b25zXG5cdFx0Jjpob3Zlcixcblx0XHQmOmZvY3Vze1xuXHRcdFx0YmFja2dyb3VuZDogZGFya2VuKCR0aW1lbGluZS0yLCA1KTtcblx0XHR9XG5cdH1cblxuXG5cblxuXHQmIGxhYmVse1xuXHRcdGNvbG9yOiAjNTU1O1xuXHR9XG5cblx0LyogKDgpIEdlc3Rpb24gZGVzIGVzcGFjZW1lbnRzICovXG5cdCYgW2RhdGEtc3BhY2Vde1xuXHRcdEBleHRlbmQgKi5saW5lO1xuXG5cdFx0cGFkZGluZy10b3A6IDIwcHg7XG5cdFx0cGFkZGluZy1ib3R0b206IDIwcHg7XG5cdH1cblxuXHQvKiAoMTApIEdlc3Rpb24gZGVzIGVzcGFjZW1lbnRzIHZlcnRpY2F1eCAqL1xuXHQmIC5zcGFjZXRvcHsgbWFyZ2luLXRvcDogMjBweCAgICAgICAhaW1wb3J0YW50OyB9XG5cdCYgLnNwYWNlYnRteyBtYXJnaW4tYm90dG9tOiAyMHB4ICAgICFpbXBvcnRhbnQ7IH1cblxuXHQmIC5zcGFjZWR7XG5cdFx0QGV4dGVuZCAuc3BhY2V0b3A7XG5cdFx0QGV4dGVuZCAuc3BhY2VidG07XG5cdH1cblxuXHQmIC5ub2JvbGQsXG5cdCYgLm5vYm9sZCAqe1xuXHRcdGZvbnQtd2VpZ2h0OiBub3JtYWwgIWltcG9ydGFudDtcblx0fVxuXG5cdC8qICgxMSkgR2VzdGlvbiBkZXMgY3VzdG9tIDxzZWxlY3Q+ICovXG5cdCYgc2VsZWN0e1xuXHQgICAgd2lkdGg6IGF1dG87XG5cdCAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cdCAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcblx0ICAgIGJvcmRlcjogMDtcblxuXHQgICAgLy8gSGlkZXMgcmlnaHQgYXJyb3dcblx0ICAgIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcblx0ICAgIC1tb3otYXBwZWFyYW5jZTogbm9uZTtcblx0ICAgIHRleHQtaW5kZW50OiAxcHg7XG5cdCAgICB0ZXh0LW92ZXJmbG93OiAnJztcblx0ICAgIGZvbnQtc2l6ZTogLjllbTtcblxuXHRcdCYgb3B0aW9uOm5vdCg6ZGlzYWJsZWQpe1xuXHRcdFx0cGFkZGluZy1sZWZ0OiAxLjVlbTtcblx0XHR9XG5cblx0XHQmIG9wdGlvbjpkaXNhYmxlZDpub3QoOmZpcnN0LWNoaWxkKXtcblx0XHRcdGZvbnQtc2l6ZTogMS4yZW07XG5cdFx0XHRjb2xvcjogIzAwMDtcblx0XHRcdGZvbnQtd2VpZ2h0OiBib2xkO1xuXHRcdH1cblxuXHRcdCYgb3B0aW9uLnBhZHtcblx0XHRcdHBhZGRpbmctbGVmdDogMi41ZW07XG5cdFx0fVxuXHR9XG5cblx0JiAuc2VsZWN0LWNvbnRhaW5lciBzZWxlY3R7XG5cdCAgICAvLyB3aWR0aDogYXV0bztcblx0ICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcblx0ICAgIHBhZGRpbmc6IDJweDtcblx0ICAgIHBhZGRpbmctcmlnaHQ6IDMwcHg7XG5cblx0XHRib3JkZXI6IG5vbmU7XG5cdCAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIzMzMztcblxuXHQgICAgYmFja2dyb3VuZDogI2ZmZiB1cmwoJy9mL3N2Zy9ib3R0b21fYXJyb3cvc3QvY29udGFpbmVyLzMzMzMzMycpIHJpZ2h0IDEwcHggY2VudGVyIG5vLXJlcGVhdDtcblx0ICAgIGJhY2tncm91bmQtc2l6ZTogMTBweCBhdXRvO1xuXG5cdCAgICBvdmVyZmxvdzogaGlkZGVuO1xuXG5cdFx0Ly8gQW5pbWF0aW9uIGRlIEBmb2N1c1xuXHRcdCY6Zm9jdXN7XG5cdFx0XHRib3JkZXItY29sb3I6ICR0aW1lbGluZS0yO1xuXHRcdFx0YmFja2dyb3VuZC1pbWFnZTp1cmwoJy9mL3N2Zy9ib3R0b21fYXJyb3cvc3QvY29udGFpbmVyLyN7Y29sb3Itc3RyKCR0aW1lbGluZS0yKX0nKTtcblx0XHR9XG5cblx0fVxuXG5cdC8qICgxMikgR2VzdGlvbiBkZXMgY29sb3JpcyBwb3VyIGxlcyB0aXRyZXMgKi9cblx0JiBoNS5jb2xvcjAsXG5cdCYgaDQuY29sb3IwLFxuXHQmIGgzLmNvbG9yMHtcblx0XHRjb2xvcjogJHRpbWVsaW5lLTA7XG5cdFx0JjpiZWZvcmUsJjphZnRlcntcblx0XHRcdGJhY2tncm91bmQtY29sb3I6ICR0aW1lbGluZS0wO1xuXHRcdH1cblx0fVxuXG5cdCYgaDUuY29sb3IxLFxuXHQmIGg0LmNvbG9yMSxcblx0JiBoMy5jb2xvcjF7XG5cdFx0Y29sb3I6ICR0aW1lbGluZS0xO1xuXHRcdCY6YmVmb3JlLCY6YWZ0ZXJ7XG5cdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAkdGltZWxpbmUtMTtcblx0XHR9XG5cdH1cblxuXHQmIGg1LmNvbG9yMixcblx0JiBoNC5jb2xvcjIsXG5cdCYgaDMuY29sb3Iye1xuXHRcdGNvbG9yOiAkdGltZWxpbmUtMjtcblx0XHQmOmJlZm9yZSwmOmFmdGVye1xuXHRcdFx0YmFja2dyb3VuZC1jb2xvcjogJHRpbWVsaW5lLTI7XG5cdFx0fVxuXHR9XG5cblx0JiBoNS5jb2xvcjMsXG5cdCYgaDQuY29sb3IzLFxuXHQmIGgzLmNvbG9yM3tcblx0XHRjb2xvcjogJHRpbWVsaW5lLTM7XG5cdFx0JjpiZWZvcmUsJjphZnRlcntcblx0XHRcdGJhY2tncm91bmQtY29sb3I6ICR0aW1lbGluZS0zO1xuXHRcdH1cblx0fVxuXG5cdCYgaDUuY29sb3I0LFxuXHQmIGg0LmNvbG9yNCxcblx0JiBoMy5jb2xvcjR7XG5cdFx0Y29sb3I6ICR0aW1lbGluZS00O1xuXHRcdCY6YmVmb3JlLCY6YWZ0ZXJ7XG5cdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAkdGltZWxpbmUtNDtcblx0XHR9XG5cdH1cblxuXG5cdC8qICgxMykgR2VzdGlvbiBkZSBsYSBuYXZpZ2F0aW9uIGZsw6ljaMOpZSAqL1xuXHQmIC5hcnJvdy1jb250YWluZXJ7XG5cblx0ICAgICYgc3Bhbntcblx0ICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cdCAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG5cdCAgICAgICAgbWFyZ2luOiAuM2VtIDA7XG5cdCAgICAgICAgcGFkZGluZzogLjVlbSAuOGVtO1xuXG5cdCAgICAgICAgYm9yZGVyOiAxcHggc29saWQgZGFya2VuKCNkOGUwZTksIDEwKTtcblxuXHRcdFx0Ly8gUGFzIGRlIHJlYm9yZCBkcm9pdGUgc2F1ZiBzaSBkZXJuaWVyXG5cdFx0XHQmOm5vdCg6bGFzdC1jaGlsZCl7XG5cdFx0XHRcdGJvcmRlci1yaWdodDogMDtcblx0XHRcdH1cblxuXHQgICAgICAgIGNvbG9yOiBkYXJrZW4oI2Q4ZTBlOSwgMzApO1xuXG5cdCAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuXG5cdCAgICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbiggLjJzIGVhc2UtaW4tb3V0ICk7XG5cblxuXHQgICAgICAgICY6Zmlyc3QtY2hpbGR7IGJvcmRlci1yYWRpdXM6IDVweCAwIDAgNXB4OyB9XG5cdCAgICAgICAgJjpsYXN0LWNoaWxkeyBib3JkZXItcmFkaXVzOiAwIDVweCA1cHggMDsgfVxuXG5cdCAgICAgICAgLy8gQW5pbWF0aW9uIGRlIGhvdmVyXG5cdCAgICAgICAgJjpob3Zlcixcblx0ICAgICAgICAmLmFjdGl2ZXsvLzpub3QoOmZpcnN0LWNoaWxkKTpub3QoOmxhc3QtY2hpbGQpXG5cdCAgICAgICAgICAgIGJvcmRlci1jb2xvcjogJHRpbWVsaW5lLTI7XG5cdCAgICAgICAgICAgIGJhY2tncm91bmQ6ICR0aW1lbGluZS0yO1xuXHQgICAgICAgICAgICBjb2xvcjogI2ZmZjtcblx0ICAgICAgICAgICAgLy8gZm9udC13ZWlnaHQ6IGJvbGQ7XG5cdCAgICAgICAgfVxuXHQgICAgfVxuXG5cdH1cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblx0LyogKDE0KSBHZXN0aW9uIGRlIGwnYWZmaWNoYWdlIGRlcyBNSU5JIGZpY2hlcyBldCBkZXMgRklDSEVTIHJlbGF0aW9ucyAqL1xuXHQmIGFydGljbGUgPiBhcnRpY2xle1xuXHRcdGRpc3BsYXk6IG5vbmU7XG5cblx0XHQmLmFjdGl2ZXtcblx0XHRcdGRpc3BsYXk6IGJsb2NrO1xuXHRcdH1cblx0fVxuXG59XG4iCgldLAoJIm1hcHBpbmdzIjogIjtBQ0FBOzJEQUMyRDtBQUMzRCxvQ0FBb0M7QUFNcEMsaUNBQWlDO0FBUWpDLDRDQUE0QztBQVM1QzsyREFDMkQ7QUFDM0Qsd0JBQXdCO0FBTXhCOzJEQUMyRDtBQWUzRDsyREFDMkQ7QURoRDNEOzJEQUMyRDtBQ0gzRDsyREFDMkQ7QUFDM0Qsb0NBQW9DO0FBTXBDLGlDQUFpQztBQVFqQyw0Q0FBNEM7QUFTNUM7MkRBQzJEO0FBQzNELHdCQUF3QjtBQU14QjsyREFDMkQ7QUFlM0Q7MkRBQzJEO0FDaEQzRDsyREFDMkQ7QUFDM0QsUUFBUSxHQUFHLFVB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RUFDdEIsUUFBUSxFQUFFLFFBQVM7RUFFbkIsTUFBTSxFQUFFLE1BQU87RUFDZixPQUFPLEVBQUUsU0FBVTtFQUVuQixNQUFNLEVBQUUsR0FBRyxDQUFDLEtBQUssQ0FBQyxPQUFNO0VBT3hCLEtBQUssRUFBRSxPQUFNO0VBRWIsTUFBTSxFQUFFLE9BQVE7RUZ0WXJCLGtCQUFrQixFRXdZUSxJQUFHLENBQUMsV0FBVztFRnZZekMsVUFBVSxFRXVZZ0IsSUFBRyxDQUFDLFdBQVc7Q0FjdkM7O0FBL2JOLFFBQVEsR0FBRyxVQUFVLENBQUMsT0FBTyxDQUFBLEFBQUEsYUFBQyxBQUFBLEVBNlozQixnQkFBZ0IsQ0FFWixJQUFJLEFBVVAsSUFBSyxDQUFBLFdBQVcsRUFBQztFQUNqQixZQUFZLEVBQUUsQ0FBRTtDQUNoQjs7QUEzYUosUUFBUSxHQUFHLFVBQVUsQ0FBQyxPQUFPLENBQUEsQUFBQSxhQUFDLEFBQUEsRUE2WjNCLGdCQUFnQixDQUVaLElBQUksQUFxQkQsWUFBWSxDQUFBO0VBQUUsYUFBYSxFQUFFLFdBQVk7Q0FBSTs7QUFwYnZELFFBQVEsR0FBRyxVQUFVLENBQUMsT0FBTyxDQUFBLEFBQUEsYUFBQyxBQUFBLEVBNlozQixnQkFBZ0IsQ0FFWixJQUFJLEFBc0JELFdBQVcsQ0FBQTtFQUFFLGFBQWEsRUFBRSxXQUFZO0NBQUk7O0FBcmJ0RCxRQUFRLEdBQUcsVUFBVSxDQUFDLE9BQU8sQ0FBQSxBQUFBLGFBQUMsQUFBQSxFQTZaM0IsZ0JBQWdCLENBRVosSUFBSSxBQXlCRCxNQUFNLEVBeGJoQixRQUFRLEdBQUcsVUFBVSxDQUFDLE9BQU8sQ0FBQSxBQUFBLGFBQUMsQUFBQSxFQTZaM0IsZ0JBQWdCLENBRVosSUFBSSxBQTBCRCxPQUFPLENBQUE7RUFDSixZQUFZLEVGMWFaLE9BQU87RUUyYVAsVUFBVSxFRjNhVixPQUFPO0VFNGFQLEtBQUssRUFBRSxJQUFLO0NBRWY7O0FBOWJWLFFBQVEsR0FBRyxVQUFVLENBQUMsT0FBTyxDQUFBLEFBQUEsYUFBQyxBQUFBLEVBaWUzQixPQUFPLEdBQUcsT0FBTyxDQUFBO0VBQ2xCLE9BQU8sRUFBRSxJQUFLO0NBS2Q7O0FBdmVGLFFBQVEsR0FBRyxVQUFVLENBQUMsT0FBTyxDQUFBLEFBQUEsYUFBQyxBQUFBLEVBaWUzQixPQUFPLEdBQUcsT0FBTyxBQUdqQixPQUFPLENBQUE7RUFDUCxPQUFPLEVBQUUsS0FBTTtDQUNmIiwKCSJuYW1lcyI6IFtdCn0= */