NxTIC/css/timeline-form/expanded.css

435 lines
47 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] 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 */
/* (9) <article> sert uniquement à regrouper */
/* (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 */
}
#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] article {
all: unset !important;
}
#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: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:not(:first-child):not(:last-child) {
border-color: #10baa3;
background: #10baa3;
color: #fff;
}
/*# sourceMappingURL=data:application/json;base64,ewoJInZlcnNpb24iOiAzLAoJImZpbGUiOiAiZXhwYW5kZWQuY3NzIiwKCSJzb3VyY2VzIjogWwoJCSIuLi90aW1lbGluZS1mb3JtLnNjc3MiLAoJCSIuLi9jb25zdGFudHMuc2NzcyIKCV0sCgkic291cmNlc0NvbnRlbnQiOiBbCgkJIkBpbXBvcnQgJ2NvbnN0YW50cyc7XG5cbi8qIFsxXSBGb3JtdWxhaXJlIGRlIHR5cGUgdGltZWxpbmVcbj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSovXG4jV1JBUFBFUiA+ICNDT05UQUlORVIgc2VjdGlvbltkYXRhLXRpbWVsaW5lXXtcblx0ZGlzcGxheTogYmxvY2s7XG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuXHRiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuXG5cdGZvbnQtc2l6ZTogLjllbTtcblx0Y29sb3I6ICMwMDA7XG5cblx0LyogKDEpIE9uIGFqb3V0ZSBsZSBsaXNlcsOpIMOgIGRyb2l0ZSBwb3VyIFRPVVMgbGVzIMOpbMOpbWVudHMgKi9cblx0JiBoNSxcblx0JiBoNCxcblx0JiBoMyxcblx0JiAqLmxpbmV7XG5cdFx0ZGlzcGxheTogYmxvY2s7XG5cblx0XHRjb2xvcjogIzMzMztcblxuXHRcdG1hcmdpbjogMCA0MHB4O1xuXHRcdHBhZGRpbmc6IDVweCA2MHB4O1xuXG4gICAgICAgIGJvcmRlci1sZWZ0OiAycHggc29saWQgI2Q4ZTBlOTtcblxuXHR9XG5cblxuXHQvKiAoMikgVGl0cmVzIGRlIHNlY3Rpb25zICovXG5cdCYgaDN7XG5cdFx0ZGlzcGxheTogYmxvY2s7XG5cdFx0cGFkZGluZzogMjBweCA0MHB4O1xuXG5cdFx0Zm9udC1zaXplOiAxLjRlbTtcblx0XHRjb2xvcjogIzAwMDtcblx0XHRmb250LXdlaWdodDogYm9sZDtcblxuICAgICAgICAvLyBiYWNrZ3JvdW5kLWNvbG9yOiAkdGltZWxpbmUtY29sb3I7XG5cblx0XHQvKiBUT0RPOiBUcmFuc2Zvcm1lciBsZXMgYmFja2dyb3VuZCBlbiA6OmJlZm9yZSBwb3VyIHF1ZSBjYSBzb2l0IGp1c3RlIHVuIGNlcmNsZSBhdmVjIGJnIGV0IGJvcmRlciovXG5cdFx0LyogRklYTUU6IENvcnJpZ2VyIGxlIGxpc2Vyw6kgcG91ciBsZXMgYXV0cmVzIG5hdmlnYXRldXJzIHF1ZSBGRiovXG5cblx0XHQvKiBHZXN0aW9uIGR1IGJlZm9yZSAoY29tcHRldXIgY3NzKSAvLyovXG5cdFx0JltkYXRhLW5dOmJlZm9yZXtcbiAgICAgICAgICAgIGNvbnRlbnQ6IGF0dHIoZGF0YS1uKTtcblxuICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogLjZlbTtcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAtNDFweDtcbiAgICAgICAgICAgIHBhZGRpbmc6IDNweCAxMnB4O1xuXG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgICAgICAgICAvKiBDb250b3VyIGJsYW5jKi9cbiAgICAgICAgICAgIGJveC1zaGFkb3c6IDAgMCAwIDNweCAjZmZmO1xuXG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGltZWxpbmUtY29sb3I7XG5cblx0XHRcdGZvbnQtc2l6ZTogMS4zZW07XG5cdFx0XHRjb2xvcjogI2ZmZjtcblx0XHRcdGZvbnQtd2VpZ2h0OiBib2xkO1xuXG4gICAgICAgICAgICAvKiBPbiBjZW50cmUgc3VyIGxhIGxpZ25lKi9cbiAgICAgICAgICAgIEBpbmNsdWRlIHRyYW5zZm9ybSggdHJhbnNsYXRlWCgtNTAlKSB0cmFuc2xhdGVZKC01MCUpICk7XG5cblx0XHR9XG5cdH1cblxuXHQvKiAoMykgVGl0cmVzIGRlcyBzb3VzLXNlY3Rpb25zICovXG5cdCYgaDR7XG5cdFx0ZGlzcGxheTogYmxvY2s7XG5cblx0XHRwYWRkaW5nOiAyMHB4IDQwcHg7XG5cblx0XHRmb250LXNpemU6IDEuMmVtO1xuXHRcdGNvbG9yOiBkYXJrZW4oJHRpbWVsaW5lLWNvbG9yLCAyMCk7XG5cdFx0Zm9udC13ZWlnaHQ6IGJvbGQ7XG5cblx0XHQvKiBHZXN0aW9uIGR1IGJlZm9yZSAoY29tcHRldXIgY3NzKSAvLyovXG5cdFx0JltkYXRhLWljb25dOmJlZm9yZXtcblx0XHRcdGNvbnRlbnQ6IGF0dHIoZGF0YS1pY29uKTtcblxuICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogLjllbTtcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAtNDFweDtcbiAgICAgICAgICAgIHBhZGRpbmc6IDlweDtcblxuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgICAgICAgICAgLyogQ29udG91ciBibGFuYyovXG4gICAgICAgICAgICBib3gtc2hhZG93OiAwIDAgMCAycHggI2ZmZjtcblxuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHRpbWVsaW5lLWNvbG9yO1xuXG5cdFx0XHRmb250LXNpemU6IC45ZW07XG5cdFx0XHRmb250LWZhbWlseTogJ2ljb21vb24nO1xuXHRcdFx0Y29sb3I6ICNmZmY7XG5cdFx0XHRmb250LXdlaWdodDogYm9sZDtcblxuICAgICAgICAgICAgLyogT24gY2VudHJlIHN1ciBsYSBsaWduZSovXG4gICAgICAgICAgICBAaW5jbHVkZSB0cmFuc2Zvcm0oIHRyYW5zbGF0ZVgoLTUwJSkgdHJhbnNsYXRlWSgtNTAlKSApO1xuXHRcdH1cblx0fVxuXG5cdC8qICg0KSBUaXRyZXMgZ2VucmUgdGV4dCBtZXNzYWdlICovXG5cdCYgaDV7XG5cdFx0ZGlzcGxheTogYmxvY2s7XG5cblx0XHRwYWRkaW5nOiAyMHB4IDQwcHg7XG5cblx0XHRmb250LXNpemU6IDEuMmVtO1xuXHRcdGNvbG9yOiBkYXJrZW4oJHRpbWVsaW5lLWNvbG9yLCAyMCk7XG5cdFx0Zm9udC13ZWlnaHQ6IGJvbGQ7XG5cblx0XHQvKiBHZXN0aW9uIGR1IGJlZm9yZSAoY29tcHRldXIgY3NzKSAvLyovXG5cdFx0JjpiZWZvcmV7XG5cdFx0XHRjb250ZW50OiAnJztcblxuICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogLjdlbTtcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAtNDFweDtcbiAgICAgICAgICAgIHBhZGRpbmc6IDdweDtcblxuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgICAgICAgICAgLyogQ29udG91ciBibGFuYyovXG4gICAgICAgICAgICBib3gtc2hhZG93OiAwIDAgMCAycHggI2ZmZjtcblxuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHRpbWVsaW5lLWNvbG9yO1xuXG4gICAgICAgICAgICAvKiBPbiBjZW50cmUgc3VyIGxhIGxpZ25lKi9cbiAgICAgICAgICAgIEBpbmNsdWRlIHRyYW5zZm9ybSggdHJhbnNsYXRlWCgtNTAlKSB0cmFuc2xhdGVZKC01MCUpICk7XG5cdFx0fVxuXG4gICAgICAgIC8qIFRleHRlIGdlbnJlIHRleHQgbWVzc2FnZSovXG4gICAgICAgICZbZGF0YS10ZXh0XTphZnRlcntcbiAgICAgICAgICAgIGNvbnRlbnQ6IGF0dHIoZGF0YS10ZXh0KTtcbiAgICAgICAgICAgIHBhZGRpbmc6IDZweCAxMHB4O1xuXG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiAzcHg7XG5cbiAgICAgICAgICAgIGJhY2tncm91bmQ6ICR0aW1lbGluZS1jb2xvcjtcblxuICAgICAgICAgICAgY29sb3I6ICNmZmY7XG4gICAgICAgICAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgICAgICB9XG5cdH1cblxuXHQvKiAoNSkgJ1RhZ3MnIC0+IHRleHRlcyBzdXIgbGUgbGlzZXLDqSBnYXVjaGUgKi9cblx0JiBbZGF0YS10YWdde1xuXHRcdGRpc3BsYXk6IGJsb2NrO1xuXG5cdFx0cGFkZGluZzogNDBweCA2MHB4O1xuXG4gICAgICAgICY6YmVmb3Jle1xuICAgIFx0XHRjb250ZW50OiBhdHRyKGRhdGEtdGFnKTtcblxuICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogLjVlbTtcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAtNDFweDtcbiAgICAgICAgICAgIHBhZGRpbmc6IDJweDtcblxuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcblxuICAgICAgICAgICAgZm9udC1zaXplOiAxLjJlbTtcbiAgICAgICAgICAgIGNvbG9yOiAkdGltZWxpbmUtY29sb3I7XG4gICAgICAgICAgICBmb250LXdlaWdodDogYm9sZDtcblxuICAgICAgICAgICAgLyogT24gY2VudHJlIHN1ciBsYSBsaWduZSovXG4gICAgICAgICAgICBAaW5jbHVkZSB0cmFuc2Zvcm0oIHRyYW5zbGF0ZVgoLTUwJSkgdHJhbnNsYXRlWSgtNTAlKSApO1xuICAgICAgICB9XG5cdH1cblxuICAgIC8qICg2KSBJbnB1dCBkJ3VwbG9hZCBkZSBmaWNoaWVyIChjc3MgaGFjaykgKi9cbiAgICAmIGlucHV0W3R5cGU9J2ZpbGUnXXtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICBvcGFjaXR5OiAwO1xuXG4gICAgICAgIHotaW5kZXg6IDg7XG5cbiAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuXG4gICAgfVxuXG4gICAgLyogQ29udGllbmRyYSBsJ2lucHV0Ki9cbiAgICAmIGlucHV0W3R5cGU9J2ZpbGUnXSArIHNwYW4uZmlsZS1pbnB1dHtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAtMXB4O1xuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IC0yOTBweDtcbiAgICAgICAgICAgIHdpZHRoOiBjYWxjKCAyOTBweCAtIDIqMTVweCApO1xuICAgICAgICAgICAgaGVpZ2h0OiAzMHB4O1xuXG4gICAgICAgIHBhZGRpbmc6IDAgMTVweDtcblxuICAgICAgICBib3JkZXItcmFkaXVzOiAzcHg7XG4gICAgICAgIGJhY2tncm91bmQ6ICR0aW1lbGluZS0xO1xuXG4gICAgICAgIGNvbG9yOiAjMjIyO1xuICAgICAgICBsaW5lLWhlaWdodDogMzBweDtcbiAgICAgICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcblxuICAgICAgICB6LWluZGV4OiA5O1xuXG4gICAgICAgIGN1cnNvcjogcG9pbnRlcjtcblxuXHRcdHBvaW50ZXItZXZlbnRzOiBub25lO1xuXG4gICAgICAgIC8qIEljb25lIGQndXBsb2FkKi9cbiAgICAgICAgJjpiZWZvcmV7XG4gICAgICAgICAgICBjb250ZW50OiAnZSAnO1xuXG4gICAgICAgICAgICBmb250LXNpemU6IDFlbTtcblx0XHRcdGZvbnQtZmFtaWx5OiAnaWNvbW9vbic7XG5cdFx0XHRjb2xvcjogIzIyMjtcblx0XHRcdGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICAgICB9XG5cblx0XHRAaW5jbHVkZSB0cmFuc2l0aW9uKCBiYWNrZ3JvdW5kIC4xcyBlYXNlLWluLW91dCApO1xuICAgIH1cblxuXG5cdC8qIEFuaW1hdGlvbiBkZSBob3ZlciovXG5cdCYgaW5wdXRbdHlwZT0nZmlsZSddOmhvdmVyICsgc3Bhbi5maWxlLWlucHV0e1xuXHRcdGJhY2tncm91bmQ6IGRhcmtlbigkdGltZWxpbmUtMSwgMTApO1xuXHRcdGJveC1zaGFkb3c6IGluc2V0IDAgMCA1cHggIzg4ODtcblx0fVxuXG5cblx0LyogQW5pbWF0aW9uIGRlIC5hY3RpdmUqL1xuXHQmIGlucHV0W3R5cGU9J2ZpbGUnXS5hY3RpdmUgKyBzcGFuLmZpbGUtaW5wdXR7XG5cdFx0YmFja2dyb3VuZDogJHRpbWVsaW5lLWNvbG9yO1xuXHRcdGNvbG9yOiAjZmZmO1xuXHRcdC8vIE9uIGNoYW5nZSBsJ2ljw7RuZVxuXHRcdCY6YmVmb3Jle1xuICAgICAgICAgICAgY29udGVudDogJ3YgJztcblx0XHRcdGNvbG9yOiAjZmZmO1xuXHRcdH1cblx0fVxuXG5cdC8qICg3KSBJbnB1dHMgZGUgdHlwZSB0ZXh0ICovXG5cdCYgaW5wdXRbdHlwZT0ndGV4dCddLFxuXHQmIGlucHV0W3R5cGU9J3Bhc3N3b3JkJ10sXG5cdCYgaW5wdXRbdHlwZT0nbnVtYmVyJ10sXG5cdCYgaW5wdXRbdHlwZT0nYnV0dG9uJ10sXG5cdCYgaW5wdXRbdHlwZT0nc3VibWl0J10sXG5cdCYgaW5wdXRbdHlwZT0nbWFpbCdde1xuXHRcdGRpc3BsYXk6IGlubGluZTtcblx0XHR3aWR0aDogYXV0bztcblxuXHRcdG1hcmdpbjogdW5zZXQ7XG5cdFx0cGFkZGluZzogNXB4IDEwcHg7XG5cdFx0bWFyZ2luLWJvdHRvbTogNXB4O1xuXHRcdG1hcmdpbi1yaWdodDogMTVweDtcblxuXHRcdGJvcmRlci1yYWRpdXM6IDA7XG5cdFx0Ym9yZGVyOiAwO1xuXHRcdGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjNTU1O1xuXG5cdFx0Zm9udC1zaXplOiAuOGVtO1xuXHRcdGZvbnQtd2VpZ2h0OiBub3JtYWw7XG5cdFx0Y29sb3I6ICMzMzM7XG5cblx0XHRAaW5jbHVkZSB0cmFuc2l0aW9uKCBib3JkZXIgLjJzIGVhc2UtaW4tb3V0LCBiYWNrZ3JvdW5kIC4ycyBlYXNlLWluLW91dCwgY29sb3IgLjJzIGVhc2UtaW4tb3V0ICk7XG5cblx0XHQvKiBBbmltYXRpb24gZGUgQGZvY3VzKi9cblx0XHQmOmZvY3Vze1xuXHRcdFx0Ym9yZGVyLWNvbG9yOiAkdGltZWxpbmUtMjtcblx0XHR9XG5cdH1cblxuXHQvLyBCb3V0b25zXG5cdCYgaW5wdXRbdHlwZT0nc3VibWl0J117XG5cdFx0Ym9yZGVyLWNvbG9yOiBkYXJrZW4oJHRpbWVsaW5lLTIsIDIwKTtcblxuXHRcdGJhY2tncm91bmQ6ICR0aW1lbGluZS0yO1xuXG5cdFx0Y29sb3I6ICNmZmY7XG5cblx0XHQvLyBBbmltYXRpb24gZGUgQGhvdmVyIHBvdXIgbGVzIGJvdXRvbnNcblx0XHQmOmhvdmVyLFxuXHRcdCY6Zm9jdXN7XG5cdFx0XHRiYWNrZ3JvdW5kOiBkYXJrZW4oJHRpbWVsaW5lLTIsIDUpO1xuXHRcdH1cblx0fVxuXG5cblxuXG5cdCYgbGFiZWx7XG5cdFx0Y29sb3I6ICM1NTU7XG5cdH1cblxuXHQvKiAoOCkgR2VzdGlvbiBkZXMgZXNwYWNlbWVudHMgKi9cblx0JiBbZGF0YS1zcGFjZV17XG5cdFx0QGV4dGVuZCAqLmxpbmU7XG5cblx0XHRwYWRkaW5nLXRvcDogMjBweDtcblx0XHRwYWRkaW5nLWJvdHRvbTogMjBweDtcblx0fVxuXG5cdC8qICg5KSA8YXJ0aWNsZT4gc2VydCB1bmlxdWVtZW50IMOgIHJlZ3JvdXBlciAqL1xuXHQmIGFydGljbGV7XG5cdFx0YWxsOiB1bnNldCAhaW1wb3J0YW50O1xuXHR9XG5cblx0LyogKDEwKSBHZXN0aW9uIGRlcyBlc3BhY2VtZW50cyB2ZXJ0aWNhdXggKi9cblx0JiAuc3BhY2V0b3B7IG1hcmdpbi10b3A6IDIwcHggICAgICAgIWltcG9ydGFudDsgfVxuXHQmIC5zcGFjZWJ0bXsgbWFyZ2luLWJvdHRvbTogMjBweCAgICAhaW1wb3J0YW50OyB9XG5cblx0JiAuc3BhY2Vke1xuXHRcdEBleHRlbmQgLnNwYWNldG9wO1xuXHRcdEBleHRlbmQgLnNwYWNlYnRtO1xuXHR9XG5cblx0JiAubm9ib2xkLFxuXHQmIC5ub2JvbGQgKntcblx0XHRmb250LXdlaWdodDogbm9ybWFsICFpbXBvcnRhbnQ7XG5cdH1cblxuXHQvKiAoMTEpIEdlc3Rpb24gZGVzIGN1c3RvbSA8c2VsZWN0PiAqL1xuXHQmIHNlbGVjdHtcblx0ICAgIHdpZHRoOiBhdXRvO1xuXHQgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXHQgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG5cdCAgICBib3JkZXI6IDA7XG5cblx0ICAgIC8vIEhpZGVzIHJpZ2h0IGFycm93XG5cdCAgICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XG5cdCAgICAtbW96LWFwcGVhcmFuY2U6IG5vbmU7XG5cdCAgICB0ZXh0LWluZGVudDogMXB4O1xuXHQgICAgdGV4dC1vdmVyZmxvdzogJyc7XG5cdCAgICBmb250LXNpemU6IC45ZW07XG5cblx0XHQmIG9wdGlvbjpub3QoOmRpc2FibGVkKXtcblx0XHRcdHBhZGRpbmctbGVmdDogMS41ZW07XG5cdFx0fVxuXG5cdFx0JiBvcHRpb246ZGlzYWJsZWQ6bm90KDpmaXJzdC1jaGlsZCl7XG5cdFx0XHRmb250LXNpemU6IDEuMmVtO1xuXHRcdFx0Y29sb3I6ICMwMDA7XG5cdFx0XHRmb250LXdlaWdodDogYm9sZDtcblx0XHR9XG5cblx0XHQmIG9wdGlvbi5wYWR7XG5cdFx0XHRwYWRkaW5nLWxlZnQ6IDIuNWVtO1xuXHRcdH1cblx0fVxuXG5cdCYgLnNlbGVjdC1jb250YWluZXIgc2VsZWN0e1xuXHQgICAgLy8gd2lkdGg6IGF1dG87XG5cdCAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cdCAgICBwYWRkaW5nOiAycHg7XG5cdCAgICBwYWRkaW5nLXJpZ2h0OiAzMHB4O1xuXG5cdFx0Ym9yZGVyOiBub25lO1xuXHQgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICMzMzM7XG5cblx0ICAgIGJhY2tncm91bmQ6ICNmZmYgdXJsKCcvZi9zdmcvYm90dG9tX2Fycm93L3N0L2NvbnRhaW5lci8zMzMzMzMnKSByaWdodCAxMHB4IGNlbnRlciBuby1yZXBlYXQ7XG5cdCAgICBiYWNrZ3JvdW5kLXNpemU6IDEwcHggYXV0bztcblxuXHQgICAgb3ZlcmZsb3c6IGhpZGRlbjtcblxuXHRcdC8vIEFuaW1hdGlvbiBkZSBAZm9jdXNcblx0XHQmOmZvY3Vze1xuXHRcdFx0Ym9yZGVyLWNvbG9yOiAkdGltZWxpbmUtMjtcblx0XHRcdGJhY2tncm91bmQtaW1hZ2U6dXJsKCcvZi9zdmcvYm90dG9tX2Fycm93L3N0L2NvbnRhaW5lci8je2NvbG9yLXN0cigkdGltZWxpbmUtMil9Jyk7XG5cdFx0fVxuXG5cdH1cblxuXHQvKiAoMTIpIEdlc3Rpb24gZGVzIGNvbG9yaXMgcG91ciBsZXMgdGl0cmVzICovXG5cdCYgaDUuY29sb3IwLFxuXHQmIGg0LmNvbG9yMCxcblx0JiBoMy5jb2xvcjB7XG5cdFx0Y29sb3I6ICR0aW1lbGluZS0wO1xuXHRcdCY6YmVmb3JlLCY6YWZ0ZXJ7XG5cdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAkdGltZWxpbmUtMDtcblx0XHR9XG5cdH1cblxuXHQmIGg1LmNvbG9yMSxcblx0JiBoNC5jb2xvcjEsXG5cdCYgaDMuY29sb3Ixe1xuXHRcdGNvbG9yOiAkdGltZWxpbmUtMTtcblx0XHQmOmJlZm9yZSwmOmFmdGVye1xuXHRcdFx0YmFja2dyb3VuZC1jb2xvcjogJHRpbWVsaW5lLTE7XG5cdFx0fVxuXHR9XG5cblx0JiBoNS5jb2xvcjIsXG5cdCYgaDQuY29sb3IyLFxuXHQmIGgzLmNvbG9yMntcblx0XHRjb2xvcjogJHRpbWVsaW5lLTI7XG5cdFx0JjpiZWZvcmUsJjphZnRlcntcblx0XHRcdGJhY2tncm91bmQtY29sb3I6ICR0aW1lbGluZS0yO1xuXHRcdH1cblx0fVxuXG5cdCYgaDUuY29sb3IzLFxuXHQmIGg0LmNvbG9yMyxcblx0JiBoMy5jb2xvcjN7XG5cdFx0Y29sb3I6ICR0aW1lbGluZS0zO1xuXHRcdCY6YmVmb3JlLCY6YWZ0ZXJ7XG5cdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAkdGltZWxpbmUtMztcblx0XHR9XG5cdH1cblxuXHQmIGg1LmNvbG9yNCxcblx0JiBoNC5jb2xvcjQsXG5cdCYgaDMuY29sb3I0e1xuXHRcdGNvbG9yOiAkdGltZWxpbmUtNDtcblx0XHQmOmJlZm9yZSwmOmFmdGVye1xuXHRcdFx0YmFja2dyb3VuZC1jb2xvcjogJHRpbWVsaW5lLTQ7XG5cdFx0fVxuXHR9XG5cblxuXHQvKiAoMTMpIEdlc3Rpb24gZGUgbGEgbmF2aWdhdGlvbiBmbMOpY2jDqWUgKi9cblx0JiAuYXJyb3ctY29udGFpbmVye1xuXG5cdCAgICAmIHNwYW57XG5cdCAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXHQgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuXHQgICAgICAgIG1hcmdpbjogLjNlbSAwO1xuXHQgICAgICAgIHBhZGRpbmc6IC41ZW0gLjhlbTtcblxuXHQgICAgICAgIGJvcmRlcjogMXB4IHNvbGlkIGRhcmtlbigjZDhlMGU5LCAxMCk7XG5cblx0ICAgICAgICBjb2xvcjogZGFya2VuKCNkOGUwZTksIDMwKTtcblxuXHQgICAgICAgIGN1cnNvcjogcG9pbnRlcjtcblxuXHQgICAgICAgIEBpbmNsdWRlIHRyYW5zaXRpb24oIC4ycyBlYXNlLWluLW91dCApO1xuXG5cblx0ICAgICAgICAmOmZpcnN0LWNoaWxkeyBib3JkZXItcmFkaXVzOiA1cHggMCAwIDVweDsgfVxuXHQgICAgICAgICY6bGFzdC1jaGlsZHsgYm9yZGVyLXJhZGl1czogMCA1cHggNXB4IDA7IH1cblxuXHQgICAgICAgIC8vIEFuaW1hdGlvbiBkZSBob3ZlclxuXHQgICAgICAgICY6aG92ZXIsXG5cdCAgICAgICAgJi5hY3RpdmU6bm90KDpmaXJzdC1jaGlsZCk6bm90KDpsYXN0LWNoaWxkKXtcblx0ICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiAkdGltZWxpbmUtMjtcblx0ICAgICAgICAgICAgYmFja2dyb3VuZDogJHRpbWVsaW5lLTI7XG5cdCAgICAgICAgICAgIGNvbG9yOiAjZmZmO1xuXHQgICAgICAgICAgICAvLyBmb250LXdlaWdodDogYm9sZDtcblx0ICAgICAgICB9XG5cdCAgICB9XG5cblx0fVxuXG59XG4iLAoJCSIvKiBbMV0gQ09VTEVVUlNcbj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSovXG4vKiAoMSkgQ09VTEVVUlMgRFUgVEhFTUUgJERFRkFVTFQgKi9cbiR0aGVtZS1iZzogICAgICAgICAjZThlOGU4O1xuJHRoZW1lLWJnLXByaW1hcnk6ICNmZmZmZmY7XG4kdGhlbWUtZmc6ICAgICAgICAgIzUxNTE1MTtcbiR0aGVtZS1mZy1wcmltYXJ5OiAjMzk5Y2VkO1xuXG4vKiAoMikgQ09VTEVVUlMgREUgVEhFTUUgJERBUksgKi9cbiRkYXJrLWJnOiAgICAgICAgICMzMTM1NDE7XG4kZGFyay1iZy1wcmltYXJ5OiAjMjkyODJlO1xuJGRhcmstZmc6ICAgICAgICAgIzkzOTM5MztcbiRkYXJrLWZnLXByaW1hcnk6ICNmZmZmZmY7XG5cbiRoZWFkZXItZGFyazogICAgICMzMzMzMzM7XG5cbi8qICgzKSBDb3VsZXVycyBkdSB0aGVtZSBwb3VyIGxhIHRpbWVsaW5lICovXG4kdGltZWxpbmUtY29sb3I6ICM3MzgzOTQ7XG4kdGltZWxpbmUtMDogIzM5OWNlZDtcbiR0aW1lbGluZS0xOiAjZTY0ZTNlO1xuJHRpbWVsaW5lLTI6ICMxMGJhYTM7XG4kdGltZWxpbmUtMzogI2IxNGJlNztcbiR0aW1lbGluZS00OiAjMDUzYjVkO1xuXG5cbi8qIFsyXSBESU1FTlNJT05TXG49PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0qL1xuLyogKDEpIExheW91dCBkZSBiYXNlICovXG4kbWVudS1zaWRlLXdpZHRoOiAxNWVtO1xuJGhlYWRlci1oZWlnaHQ6ICAgNGVtO1xuXG5cblxuLyogWzNdIE1peGluc1xuPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ki9cbkBtaXhpbiB0cmFuc2Zvcm0oJHZhbHVlLi4uKSB7XG4gICAgdHJhbnNmb3JtOiAkdmFsdWU7XG5cdC1tb3otdHJhbnNmb3JtOiAkdmFsdWU7XG5cdC1vLXRyYW5zZm9ybTogJHZhbHVlO1xuXHQtbXMtdHJhbnNmb3JtOiAkdmFsdWU7XG5cdC13ZWJraXQtdHJhbnNmb3JtOiAkdmFsdWU7XG59XG5cblxuQG1peGluIHRyYW5zaXRpb24oJHZhbHVlLi4uKSB7XG4gICAgLXdlYmtpdC10cmFuc2l0aW9uOiAkdmFsdWU7XG4gICAgdHJhbnNpdGlvbjogJHZhbHVlO1xufVxuXG4vKiBbNF0gRnVuY3Rpb25zXG49PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0qL1xuLy8gVHJhbnNmb3JtZSB1bmUgY291bGV1ciBoZXggZW4gc3RyaW5nIHNhbnMgbGUgI1xuQGZ1bmN0aW9uIGNvbG9yLXN0cigkY29sb3Ipe1xuICAgIEByZXR1cm4gc3RyLXNsaWNlKCN7JGNvbG9yfSwgMiwgc3RyLWxlbmd0aCgjeyRjb2xvcn0pKTtcbn1cbiIKCV0sCgkibWFwcGluZ3MiOiAiO0FDQUE7MkRBQzJEO0FBQzNELG9DQUFvQztBQU1wQyxpQ0FBaUM7QUFRakMsNENBQTRDO0FBUzVDOzJEQUMyRDtBQUMzRCx3QkFBd0I7QUFNeEI7MkRBQzJEO0FBZTNEOzJEQUMyRDtBRGhEM0Q7MkRBQzJEO0FBQzNELFFBQVEsR0FBRyxVQUFVLENBQUMsT0FBTyxDQUFBLEFBQUEsYUFBQyxBQUFBLEVBQWM7RUFDM0MsT0FBTyxFQUFFLEtBQU07RUFDZixRQUFRLEVBQUUsUUFBUztFQUVuQixnQkFBZ0IsRUFBRSxJQUFLO0VBRXZCLFNBQVMsRUFBRSxJQUFLO0VBQ2hCLEtBQUssRUFBRSxJQUFLO0VBRVosaUVBQWlFO0VBaUJqRSw0QkFBNEI7RUF3QzVCLGtDQUFrQztFQW9DbEMsbUNBQW1DO0VBNENuQyxnREFBZ0Q7RUEwQjdDLDhDQUE4QztFQVc5Qyx1QkFBdUI7RUFzQzFCLHVCQUF1QjtFQU92Qix5QkFBeUI7RUFXekIsNkJBQTZCO0VBcUQ3QixpQ0FBaUM7RUFRakMsZ0RBQWdEO0VBS2hELDRDQUE0QztFQWM1QyxzQ0FBc0M7RUFtRHRDLDhDQUE4QztFQStDOUMsNkNBQTZDO0NBa0M3Qzs7QUFuY0QsUUFBUSxHQUFHLFVBQVUsQ0FBQyxPQUFPLENBQUEsQUFBQSxhQUFDLEFBQUEsRUFVM0IsRUFBRTtBQVZMLFFBQVEsR0FBRyxVQUFVLENBQUMsT0FBTyxD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 */