SMMP/css/container/expanded.css

593 lines
70 KiB
CSS

@charset "UTF-8";
/* COULEUR DU THEME */
/* COULEUR DU SOUS-MENU */
/* COULEUR DES ERREURS */
/* FORMULAIRES */
/* GESTION DES LONGUEURS */
#WRAPPER > #CONTAINER {
/* [1] Section (contenu)
=========================================================*/
/* [2] INLINE-BOX pour afficher les listes de donnees
=========================================================*/
/* [3] Formulaires
=========================================================*/
}
#WRAPPER > #CONTAINER > section {
display: none;
flex-grow: 1;
}
#WRAPPER > #CONTAINER > section.active {
display: block;
}
#WRAPPER > #CONTAINER > section.active.list {
display: flex;
flex-direction: row;
align-items: flex-start;
justify-content: flex-start;
flex-wrap: wrap;
}
#WRAPPER > #CONTAINER > section.active.list .inline-box {
flex: 0 0 1;
}
#WRAPPER > #CONTAINER > section.active.list .searchbar {
display: inline-block;
position: relative;
flex: calc( 100% - 2*1em - 2*1em);
height: 1em;
margin: 1em;
padding: .5em 1em;
padding-left: 2em;
border-radius: 3px;
border: 1px solid #b1b1b1;
background: #fff url("/src/static/sub-menu-side/search.svg?b1b1b1") 0.5em center no-repeat;
background-size: 1em;
transition: border .4s ease-in-out;
}
#WRAPPER > #CONTAINER > section.active.list .searchbar:hover, #WRAPPER > #CONTAINER > section.active.list .searchbar:focus {
border-color: #5630ed;
}
#WRAPPER > #CONTAINER > section.active.list .error {
display: inline-block;
position: relative;
width: calc( 100% - 2*1em - 2*1em);
height: 1em;
margin: 1em;
padding: 1em;
border-radius: 3px;
border: 1px solid #d52918;
background: #d52918;
color: #fff;
text-shadow: 1px 1px #a72013;
}
#WRAPPER > #CONTAINER > section > .inline-box {
display: inline-block;
position: relative;
flex: calc( 50% - 2*1em - 2*1em);
margin: 1em;
padding: 1em;
border-radius: 3px;
box-shadow: 0 0 1px #b7b7b7;
background-color: #fff;
/* (1) Titre de l'element */
/* (2) Code RFID */
/* (3) Adresse mail */
/* (4) Groupes */
/* (5) Lien vers la modification */
/* (6) Lien vers la suppression */
}
#WRAPPER > #CONTAINER > section > .inline-box.hidden {
display: none;
}
#WRAPPER > #CONTAINER > section > .inline-box a {
text-decoration: none;
color: inherit;
}
#WRAPPER > #CONTAINER > section > .inline-box.selected {
border: 1px solid #7362ff;
transition: box-shadow .2s ease-in-out;
}
#WRAPPER > #CONTAINER > section > .inline-box.selected:hover {
box-shadow: 2px 2px 7px #aaa;
}
#WRAPPER > #CONTAINER > section > .inline-box .title {
display: inline-block;
font-size: 1.15em;
font-weight: bold;
color: #ea4c06;
white-space: nowrap;
}
#WRAPPER > #CONTAINER > section > .inline-box .title > span {
font-size: .8em;
color: #333;
}
#WRAPPER > #CONTAINER > section > .inline-box .code,
#WRAPPER > #CONTAINER > section > .inline-box .mail {
display: block;
margin: 1em;
color: #333;
white-space: nowrap;
}
#WRAPPER > #CONTAINER > section > .inline-box .code svg,
#WRAPPER > #CONTAINER > section > .inline-box .mail svg {
display: inline-block;
position: relative;
margin-left: .5em;
margin-right: .5em;
margin-bottom: -.6em;
width: 1.5em;
height: 2em;
pointer-events: none;
}
#WRAPPER > #CONTAINER > section > .inline-box .code svg path#stylisable,
#WRAPPER > #CONTAINER > section > .inline-box .mail svg path#stylisable {
fill: #333 !important;
pointer-events: none;
}
#WRAPPER > #CONTAINER > section > .inline-box .code svg path#stroke-stylisable,
#WRAPPER > #CONTAINER > section > .inline-box .mail svg path#stroke-stylisable {
stroke: #333 !important;
pointer-events: none;
}
#WRAPPER > #CONTAINER > section > .inline-box .groups {
display: block;
margin: 1em;
color: #333;
white-space: nowrap;
}
#WRAPPER > #CONTAINER > section > .inline-box .groups svg {
display: inline-block;
position: relative;
margin-left: .5em;
margin-right: .5em;
margin-bottom: -.6em;
width: 1.5em;
height: 2em;
pointer-events: none;
}
#WRAPPER > #CONTAINER > section > .inline-box .groups svg path {
fill: #333 !important;
pointer-events: none;
}
#WRAPPER > #CONTAINER > section > .inline-box .groups > span {
display: inline-block;
position: relative;
padding: .1em .5em;
margin-right: calc( .4em + 2em);
border-radius: 3px 0 0 3px;
border: 1px solid #bdbdbd;
box-shadow: inset 0 0 2px #fafafa;
background-color: #f9f9f9;
color: #333;
cursor: default;
}
#WRAPPER > #CONTAINER > section > .inline-box .groups > span.add-group, #WRAPPER > #CONTAINER > section > .inline-box .groups > span.add-member {
border-radius: 3px;
cursor: pointer;
}
#WRAPPER > #CONTAINER > section > .inline-box .groups > span > span.rem-group,
#WRAPPER > #CONTAINER > section > .inline-box .groups > span > span.rem-member {
display: block;
position: absolute;
top: -1px;
left: 100%;
width: 1em;
height: calc( 100% - .1em - 2px);
padding: .1em .5em;
border-radius: 0 3px 3px 0;
border: 1px solid #bdbdbd;
box-shadow: inset 0 0 2px #fafafa;
background: url("/src/static/sub-menu-side/remove.svg") center center no-repeat;
background-size: auto 70%;
background-color: #f9f9f9;
color: inherit;
cursor: pointer;
}
#WRAPPER > #CONTAINER > section > .inline-box .groups > span > span.rem-group:hover,
#WRAPPER > #CONTAINER > section > .inline-box .groups > span > span.rem-member:hover {
background-image: url("/src/static/sub-menu-side/remove.svg?#d52918");
}
#WRAPPER > #CONTAINER > section > .inline-box .link_edit,
#WRAPPER > #CONTAINER > section > .inline-box .link_remove {
display: inline-block;
float: right;
position: relative;
width: 1em;
height: 1em;
margin-left: 1em;
cursor: pointer;
}
#WRAPPER > #CONTAINER > section > .inline-box .link_edit > svg,
#WRAPPER > #CONTAINER > section > .inline-box .link_remove > svg {
width: 100%;
height: 100%;
fill: #ddd !important;
transition: fill .4s ease-in-out;
pointer-events: none;
}
#WRAPPER > #CONTAINER > section > .inline-box .link_edit:hover > svg,
#WRAPPER > #CONTAINER > section > .inline-box .link_remove:hover > svg {
fill: #2193e6 !important;
}
#WRAPPER > #CONTAINER > section > .inline-box .link_remove:hover > svg {
fill: #d52918 !important;
}
#WRAPPER > #CONTAINER > section > form {
display: inline-block;
position: relative;
left: 50%;
margin: .3em 0;
padding: 1em;
border-radius: 3px;
border-color: #d52918;
box-shadow: 0 0 1px #b7b7b7;
background-color: #fff;
transform: translateX(-50%);
/* (1) Champs de texte */
/* (2) Boutons */
}
#WRAPPER > #CONTAINER > section > form.valid {
border-color: #27a560;
}
#WRAPPER > #CONTAINER > section > form.neutral {
border-color: #2193e6;
}
#WRAPPER > #CONTAINER > section > form.search {
border-color: #2193e6;
}
#WRAPPER > #CONTAINER > section > form .edit_search_view,
#WRAPPER > #CONTAINER > section > form .remove_search_view {
display: inline-block;
width: 100%;
text-align: center;
color: #aaaaaa;
}
#WRAPPER > #CONTAINER > section > form .edit_search_view span,
#WRAPPER > #CONTAINER > section > form .remove_search_view span {
color: #888888;
}
#WRAPPER > #CONTAINER > section > form input[type=text],
#WRAPPER > #CONTAINER > section > form input[type=mail],
#WRAPPER > #CONTAINER > section > form input[type=password],
#WRAPPER > #CONTAINER > section > form select,
#WRAPPER > #CONTAINER > section > form.invalid > input[type=text],
#WRAPPER > #CONTAINER > section > form.invalid > input[type=mail],
#WRAPPER > #CONTAINER > section > form.invalid > input[type=password],
#WRAPPER > #CONTAINER > section > form.invalid > select,
#WRAPPER > #CONTAINER > section > form input.invalid[type=text],
#WRAPPER > #CONTAINER > section > form input.invalid[type=mail],
#WRAPPER > #CONTAINER > section > form input.invalid[type=password],
#WRAPPER > #CONTAINER > section > form select.invalid {
display: inline-block;
margin: 1em 0;
padding: .7em 1em;
border-radius: 3px;
border: 1px solid #d7dde8;
color: #2f3033;
transition: border .4s ease-in-out;
}
#WRAPPER > #CONTAINER > section > form input[type=text]:focus, #WRAPPER > #CONTAINER > section > form input[type=text]:hover,
#WRAPPER > #CONTAINER > section > form input[type=mail]:focus,
#WRAPPER > #CONTAINER > section > form input[type=mail]:hover,
#WRAPPER > #CONTAINER > section > form input[type=password]:focus,
#WRAPPER > #CONTAINER > section > form input[type=password]:hover,
#WRAPPER > #CONTAINER > section > form select:focus,
#WRAPPER > #CONTAINER > section > form select:hover,
#WRAPPER > #CONTAINER > section > form.invalid > input[type=text]:focus,
#WRAPPER > #CONTAINER > section > form.invalid > input[type=text]:hover,
#WRAPPER > #CONTAINER > section > form.invalid > input[type=mail]:focus,
#WRAPPER > #CONTAINER > section > form.invalid > input[type=mail]:hover,
#WRAPPER > #CONTAINER > section > form.invalid > input[type=password]:focus,
#WRAPPER > #CONTAINER > section > form.invalid > input[type=password]:hover,
#WRAPPER > #CONTAINER > section > form.invalid > select:focus,
#WRAPPER > #CONTAINER > section > form.invalid > select:hover,
#WRAPPER > #CONTAINER > section > form input.invalid[type=text]:focus,
#WRAPPER > #CONTAINER > section > form input.invalid[type=text]:hover,
#WRAPPER > #CONTAINER > section > form input.invalid[type=mail]:focus,
#WRAPPER > #CONTAINER > section > form input.invalid[type=mail]:hover,
#WRAPPER > #CONTAINER > section > form input.invalid[type=password]:focus,
#WRAPPER > #CONTAINER > section > form input.invalid[type=password]:hover,
#WRAPPER > #CONTAINER > section > form select.invalid:focus,
#WRAPPER > #CONTAINER > section > form select.invalid:hover {
border-color: #d52918;
}
#WRAPPER > #CONTAINER > section > form select {
width: 100%;
display: block;
background: #fff;
}
#WRAPPER > #CONTAINER > section > form select option {
padding: .5em;
}
#WRAPPER > #CONTAINER > section > form.valid > input[type=text]:focus, #WRAPPER > #CONTAINER > section > form.valid > input[type=text]:hover,
#WRAPPER > #CONTAINER > section > form.valid > input[type=mail]:focus,
#WRAPPER > #CONTAINER > section > form.valid > input[type=mail]:hover,
#WRAPPER > #CONTAINER > section > form.valid > input[type=password]:focus,
#WRAPPER > #CONTAINER > section > form.valid > input[type=password]:hover,
#WRAPPER > #CONTAINER > section > form.valid > select:focus,
#WRAPPER > #CONTAINER > section > form.valid > select:hover,
#WRAPPER > #CONTAINER > section > form input.valid[type=text]:focus,
#WRAPPER > #CONTAINER > section > form input.valid[type=text]:hover,
#WRAPPER > #CONTAINER > section > form input.valid[type=mail]:focus,
#WRAPPER > #CONTAINER > section > form input.valid[type=mail]:hover,
#WRAPPER > #CONTAINER > section > form input.valid[type=password]:focus,
#WRAPPER > #CONTAINER > section > form input.valid[type=password]:hover,
#WRAPPER > #CONTAINER > section > form select.valid:focus,
#WRAPPER > #CONTAINER > section > form select.valid:hover {
border-color: #27a560;
}
#WRAPPER > #CONTAINER > section > form.neutral > input[type=text]:focus, #WRAPPER > #CONTAINER > section > form.neutral > input[type=text]:hover,
#WRAPPER > #CONTAINER > section > form.neutral > input[type=mail]:focus,
#WRAPPER > #CONTAINER > section > form.neutral > input[type=mail]:hover,
#WRAPPER > #CONTAINER > section > form.neutral > input[type=password]:focus,
#WRAPPER > #CONTAINER > section > form.neutral > input[type=password]:hover,
#WRAPPER > #CONTAINER > section > form.neutral > select:focus,
#WRAPPER > #CONTAINER > section > form.neutral > select:hover,
#WRAPPER > #CONTAINER > section > form input.neutral[type=text]:focus,
#WRAPPER > #CONTAINER > section > form input.neutral[type=text]:hover,
#WRAPPER > #CONTAINER > section > form input.neutral[type=mail]:focus,
#WRAPPER > #CONTAINER > section > form input.neutral[type=mail]:hover,
#WRAPPER > #CONTAINER > section > form input.neutral[type=password]:focus,
#WRAPPER > #CONTAINER > section > form input.neutral[type=password]:hover,
#WRAPPER > #CONTAINER > section > form select.neutral:focus,
#WRAPPER > #CONTAINER > section > form select.neutral:hover {
border-color: #2193e6;
}
#WRAPPER > #CONTAINER > section > form.search > input[type=text]:focus, #WRAPPER > #CONTAINER > section > form.search > input[type=text]:hover,
#WRAPPER > #CONTAINER > section > form.search > input[type=mail]:focus,
#WRAPPER > #CONTAINER > section > form.search > input[type=mail]:hover,
#WRAPPER > #CONTAINER > section > form.search > input[type=password]:focus,
#WRAPPER > #CONTAINER > section > form.search > input[type=password]:hover,
#WRAPPER > #CONTAINER > section > form.search > select:focus,
#WRAPPER > #CONTAINER > section > form.search > select:hover,
#WRAPPER > #CONTAINER > section > form input.search[type=text]:focus,
#WRAPPER > #CONTAINER > section > form input.search[type=text]:hover,
#WRAPPER > #CONTAINER > section > form input.search[type=mail]:focus,
#WRAPPER > #CONTAINER > section > form input.search[type=mail]:hover,
#WRAPPER > #CONTAINER > section > form input.search[type=password]:focus,
#WRAPPER > #CONTAINER > section > form input.search[type=password]:hover {
border-color: #5630ed;
}
#WRAPPER > #CONTAINER > section > form button,
#WRAPPER > #CONTAINER > section > form button.invalid,
#WRAPPER > #CONTAINER > section > form.invalid > button {
display: inline-block;
position: relative;
left: 50%;
padding: .7em 1em;
border-radius: 3px;
border: 1px solid #d52918;
background: #d52918 center center no-repeat;
color: #fff;
transition: background .4s ease-in-out;
transform: translateX(-50%);
}
#WRAPPER > #CONTAINER > section > form button:hover, #WRAPPER > #CONTAINER > section > form button:focus, #WRAPPER > #CONTAINER > section > form button:disabled,
#WRAPPER > #CONTAINER > section > form button.invalid:hover,
#WRAPPER > #CONTAINER > section > form button.invalid:focus,
#WRAPPER > #CONTAINER > section > form button.invalid:disabled,
#WRAPPER > #CONTAINER > section > form.invalid > button:hover,
#WRAPPER > #CONTAINER > section > form.invalid > button:focus,
#WRAPPER > #CONTAINER > section > form.invalid > button:disabled {
background-color: #fff;
color: #d52918;
}
#WRAPPER > #CONTAINER > section > form button.valid,
#WRAPPER > #CONTAINER > section > form.valid > button {
border-color: #27a560;
background-color: #27a560;
}
#WRAPPER > #CONTAINER > section > form button.valid:hover, #WRAPPER > #CONTAINER > section > form button.valid:focus, #WRAPPER > #CONTAINER > section > form button.valid:disabled,
#WRAPPER > #CONTAINER > section > form.valid > button:hover,
#WRAPPER > #CONTAINER > section > form.valid > button:focus,
#WRAPPER > #CONTAINER > section > form.valid > button:disabled {
background-color: #fff;
color: #27a560;
}
#WRAPPER > #CONTAINER > section > form button.neutral,
#WRAPPER > #CONTAINER > section > form.neutral > button {
border-color: #2193e6;
background-color: #2193e6;
}
#WRAPPER > #CONTAINER > section > form button.neutral:hover, #WRAPPER > #CONTAINER > section > form button.neutral:focus, #WRAPPER > #CONTAINER > section > form button.neutral:disabled,
#WRAPPER > #CONTAINER > section > form.neutral > button:hover,
#WRAPPER > #CONTAINER > section > form.neutral > button:focus,
#WRAPPER > #CONTAINER > section > form.neutral > button:disabled {
background-color: #fff;
color: #2193e6;
}
#WRAPPER > #CONTAINER > section > form button.search,
#WRAPPER > #CONTAINER > section > form.search > button {
border-color: #5630ed;
background-color: #5630ed;
}
#WRAPPER > #CONTAINER > section > form button.search:hover, #WRAPPER > #CONTAINER > section > form button.search:focus, #WRAPPER > #CONTAINER > section > form button.search:disabled,
#WRAPPER > #CONTAINER > section > form.search > button:hover,
#WRAPPER > #CONTAINER > section > form.search > button:focus,
#WRAPPER > #CONTAINER > section > form.search > button:disabled {
background-color: #fff;
color: #5630ed;
}
#WRAPPER > #CONTAINER > section > form.invalid > button.active,
#WRAPPER > #CONTAINER > section > form button.invalid.active,
#WRAPPER > #CONTAINER > section > form button.active {
background-color: #fff;
background-image: url("/src/static/container/active.svg?d52918") !important;
background-size: 1em auto;
color: transparent !important;
}
#WRAPPER > #CONTAINER > section > form button.valid.active,
#WRAPPER > #CONTAINER > section > form.valid > button.active {
background-image: url("/src/static/container/active.svg?27a560") !important;
}
#WRAPPER > #CONTAINER > section > form button.neutral.active,
#WRAPPER > #CONTAINER > section > form.neutral > button.active {
background-image: url("/src/static/container/active.svg?2193e6") !important;
}
#WRAPPER > #CONTAINER > section > form button.search.active,
#WRAPPER > #CONTAINER > section > form.search > button.active {
background-image: url("/src/static/container/active.svg?5630ed") !important;
}
#WRAPPER > #CONTAINER > section > form hr.OR[data-label] {
display: block;
position: relative;
width: 100%;
height: 0;
border: 0;
border-bottom: 1px dashed #d52918;
}
#WRAPPER > #CONTAINER > section > form hr.OR[data-label]:before {
content: attr(data-label);
display: inline-block;
position: relative;
top: 50%;
left: 50%;
padding: 0 1em;
background-color: #fff;
color: #d52918;
transform: translateX(-50%) translatey(-50%);
}
#WRAPPER > #CONTAINER > section > form .valid > hr.OR,
#WRAPPER > #CONTAINER > section > form hr.OR.valid {
border-bottom: 1px dashed #27a560;
}
#WRAPPER > #CONTAINER > section > form .valid > hr.OR:before,
#WRAPPER > #CONTAINER > section > form hr.OR.valid:before {
color: #27a560;
}
#WRAPPER > #CONTAINER > section > form .neutral > hr.OR,
#WRAPPER > #CONTAINER > section > form hr.OR.neutral {
border-bottom: 1px dashed #2193e6;
}
#WRAPPER > #CONTAINER > section > form .neutral > hr.OR:before,
#WRAPPER > #CONTAINER > section > form hr.OR.neutral:before {
color: #2193e6;
}
#WRAPPER > #CONTAINER > section > form .search > hr.OR,
#WRAPPER > #CONTAINER > section > form hr.OR.search {
border-bottom: 1px dashed #5630ed;
}
#WRAPPER > #CONTAINER > section > form .search > hr.OR:before,
#WRAPPER > #CONTAINER > section > form hr.OR.search:before {
color: #5630ed;
}
/* [4] Tableau à cocher
=========================================================*/
article.check-table {
display: flex;
flex-direction: row;
flex-wrap: wrap;
justify-content: space-between;
border-radius: 3px;
border: 1px solid #ddd;
}
article.check-table > div {
display: flex;
flex-direction: row;
flex-wrap: nowrap;
justify-content: space-between;
flex: 100%;
padding: .8em 0;
color: #333;
background: #f8f8f8;
border-bottom: 1px solid #eee;
transition: background .2s ease-in-out;
overflow: hidden;
}
article.check-table > div:nth-child(2n) {
background: #fdfdfd;
}
article.check-table > div > span {
flex: 100%;
display: flex;
flex-direction: row;
flex-wrap: nowrap;
justify-content: center;
/* (1) Gestion du checkbox HACK */
}
article.check-table > div > span input[type='checkbox'] {
display: none;
}
article.check-table > div > span input[type='checkbox'] + label[for] {
display: inline-block;
position: absolute;
width: 1.2em;
height: 1.2em;
background: url("/src/static/container/checkbox.svg") center center no-repeat;
background-size: 100% auto;
transition: box-shadow .2s ease-in-out;
cursor: pointer;
}
article.check-table > div > span input[type='checkbox']:checked + label[for] {
background-image: url("/src/static/container/checkbox@checked.svg");
}
/*# sourceMappingURL=data:application/json;base64,ewoJInZlcnNpb24iOiAzLAoJImZpbGUiOiAiZXhwYW5kZWQuY3NzIiwKCSJzb3VyY2VzIjogWwoJCSIuLi9jb250YWluZXIuc2NzcyIsCgkJIi4uL2NvbnN0YW50cy5zY3NzIgoJXSwKCSJzb3VyY2VzQ29udGVudCI6IFsKCQkiQGltcG9ydCAnY29uc3RhbnRzJztcblxuI1dSQVBQRVIgPiAjQ09OVEFJTkVSe1xuXG5cdC8qIFsxXSBTZWN0aW9uIChjb250ZW51KVxuXHQ9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0qL1xuXHQmID4gc2VjdGlvbntcblx0XHRkaXNwbGF5OiBub25lO1xuXHRcdGZsZXgtZ3JvdzogMTtcblx0fVxuXG5cdC8vIEBhY3RpdmVcblx0JiA+IHNlY3Rpb24uYWN0aXZle1xuXHRcdGRpc3BsYXk6IGJsb2NrO1xuXHR9XG5cblx0Ly8gQGFjdGl2ZSArIC5saXN0XG5cdCYgPiBzZWN0aW9uLmFjdGl2ZS5saXN0e1xuXHRcdGRpc3BsYXk6IGZsZXg7XG5cdFx0ZmxleC1kaXJlY3Rpb246IHJvdztcblx0XHRhbGlnbi1pdGVtczogZmxleC1zdGFydDtcblx0XHRqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG5cdFx0ZmxleC13cmFwOiB3cmFwO1xuXG5cdFx0LmlubGluZS1ib3h7XG5cdFx0XHRmbGV4OiAwIDAgMTtcblx0XHR9XG5cblx0XHQvLyBCYXJyZSBkZSByZWNoZXJjaGVcblx0XHQuc2VhcmNoYmFye1xuXHRcdFx0ZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXHRcdFx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHRcdFx0XHQvLyB3aWR0aDogY2FsYyggMTAwJSAtIDIqMWVtIC0gMioxZW0gKTtcblx0XHRcdFx0ZmxleDogY2FsYyggMTAwJSAtIDIqMWVtIC0gMioxZW0gKTtcblx0XHRcdFx0aGVpZ2h0OiAxZW07XG5cdFx0XHRtYXJnaW46IDFlbTtcblx0XHRcdHBhZGRpbmc6IC41ZW0gMWVtO1xuXHRcdFx0cGFkZGluZy1sZWZ0OiAyZW07XG5cblx0XHRcdFx0Ym9yZGVyLXJhZGl1czogM3B4O1xuXHRcdFx0XHRib3JkZXI6IDFweCBzb2xpZCAjYjFiMWIxO1xuXHRcdFx0XHQvLyBib3gtc2hhZG93OiAwIDAgMXB4ICNiN2I3Yjc7XG5cblx0XHRcdFx0YmFja2dyb3VuZDogI2ZmZiB1cmwoJy9zcmMvc3RhdGljL3N1Yi1tZW51LXNpZGUvc2VhcmNoLnN2Zz9iMWIxYjEnKSAuNWVtIGNlbnRlciBuby1yZXBlYXQ7XG5cdFx0XHRcdGJhY2tncm91bmQtc2l6ZTogMWVtO1xuXG5cdFx0XHRcdHRyYW5zaXRpb246IGJvcmRlciAuNHMgZWFzZS1pbi1vdXQ7XG5cblx0XHRcdFx0Jjpob3Zlcixcblx0XHRcdFx0Jjpmb2N1c3tcblx0XHRcdFx0XHRib3JkZXItY29sb3I6ICRmb3JtLXNlYXJjaC1jb2xvcjtcblx0XHRcdFx0fVxuXHRcdH1cblxuXHRcdC8vIEVycmV1clxuXHRcdC5lcnJvcntcblx0XHRcdGRpc3BsYXk6IGlubGluZS1ibG9jaztcblx0XHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0XHRcdFx0d2lkdGg6IGNhbGMoIDEwMCUgLSAyKjFlbSAtIDIqMWVtICk7XG5cdFx0XHRcdGhlaWdodDogMWVtO1xuXHRcdFx0bWFyZ2luOiAxZW07XG5cdFx0XHRwYWRkaW5nOiAxZW07XG5cblx0XHRcdGJvcmRlci1yYWRpdXM6IDNweDtcblx0XHRcdGJvcmRlcjogMXB4IHNvbGlkICRmb3JtLWludmFsaWQtY29sb3I7XG5cblx0XHRcdGJhY2tncm91bmQ6ICRmb3JtLWludmFsaWQtY29sb3I7XG5cblx0XHRcdGNvbG9yOiAjZmZmO1xuXHRcdFx0dGV4dC1zaGFkb3c6IDFweCAxcHggZGFya2VuKCRmb3JtLWludmFsaWQtY29sb3IsIDEwKTtcblx0XHR9XG5cdH1cblxuXG5cblx0LyogWzJdIElOTElORS1CT1ggcG91ciBhZmZpY2hlciBsZXMgbGlzdGVzIGRlIGRvbm5lZXNcblx0PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ki9cblx0JiA+IHNlY3Rpb24gPiAuaW5saW5lLWJveHtcblx0XHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cdFx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHRcdFx0Ly8gd2lkdGg6IGNhbGMoIDUwJSAtIDIqMWVtIC0gMioxZW0gKTtcblx0XHRcdGZsZXg6IGNhbGMoIDUwJSAtIDIqMWVtIC0gMioxZW0gKTtcblx0XHRcdG1hcmdpbjogMWVtO1xuXHRcdFx0cGFkZGluZzogMWVtO1xuXG5cdFx0XHRib3JkZXItcmFkaXVzOiAzcHg7XG5cdFx0XHRib3gtc2hhZG93OiAwIDAgMXB4ICNiN2I3Yjc7XG5cblx0XHRcdGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG5cblx0XHRcdC8vIExvcnMgZGUgbGEgcmVjaGVyY2hlLCBxdWFuZCBvbiB2ZXV0IGVuIG1hc3F1ZXJcblx0XHRcdCYuaGlkZGVue1xuXHRcdFx0XHRkaXNwbGF5OiBub25lO1xuXHRcdFx0fVxuXG5cdFx0XHRhe1xuXHRcdFx0XHR0ZXh0LWRlY29yYXRpb246IG5vbmU7XG5cdFx0XHRcdGNvbG9yOiBpbmhlcml0O1xuXHRcdFx0fVxuXG5cblx0XHRcdCYuc2VsZWN0ZWR7XG5cdFx0XHRcdGJvcmRlcjogMXB4IHNvbGlkICM3MzYyZmY7XG5cblx0XHRcdFx0dHJhbnNpdGlvbjogYm94LXNoYWRvdyAuMnMgZWFzZS1pbi1vdXQ7XG5cblx0XHRcdFx0Jjpob3Zlcntcblx0XHRcdFx0XHRib3gtc2hhZG93OiAycHggMnB4IDdweCAjYWFhO1xuXHRcdFx0XHR9XG5cdFx0XHR9XG5cblx0XHRcdC8qICgxKSBUaXRyZSBkZSBsJ2VsZW1lbnQgKi9cblx0XHRcdC50aXRsZXtcblx0XHRcdFx0ZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXG5cdFx0XHRcdGZvbnQtc2l6ZTogMS4xNWVtO1xuXHRcdFx0XHRmb250LXdlaWdodDogYm9sZDtcblxuXHRcdFx0XHRjb2xvcjogZGFya2VuKCR0aGVtZS1jb2xvciwgMik7XG5cdFx0XHRcdHdoaXRlLXNwYWNlOiBub3dyYXA7XG5cblx0XHRcdFx0JiA+IHNwYW57XG5cdFx0XHRcdFx0Zm9udC1zaXplOiAuOGVtO1xuXHRcdFx0XHRcdGNvbG9yOiAjMzMzO1xuXHRcdFx0XHR9XG5cdFx0XHR9XG5cblx0XHRcdC8qICgyKSBDb2RlIFJGSUQgKi9cblx0XHRcdC8qICgzKSBBZHJlc3NlIG1haWwgKi9cblx0XHRcdC5jb2RlLFxuXHRcdFx0Lm1haWx7XG5cdFx0XHRcdGRpc3BsYXk6IGJsb2NrO1xuXHRcdFx0XHRtYXJnaW46IDFlbTtcblx0XHRcdFx0Y29sb3I6ICMzMzM7XG5cdFx0XHRcdHdoaXRlLXNwYWNlOiBub3dyYXA7XG5cblx0XHRcdFx0Ly8gc3ZnIChpY29uZSlcblx0XHRcdFx0c3Zne1xuXHRcdFx0XHRcdGRpc3BsYXk6IGlubGluZS1ibG9jaztcblx0XHRcdFx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdFx0XHRcdFx0XHRtYXJnaW4tbGVmdDogLjVlbTtcblx0XHRcdFx0XHRcdG1hcmdpbi1yaWdodDogLjVlbTtcblx0XHRcdFx0XHRcdG1hcmdpbi1ib3R0b206IC0uNmVtO1xuXHRcdFx0XHRcdFx0d2lkdGg6IDEuNWVtO1xuXHRcdFx0XHRcdFx0aGVpZ2h0OiAyZW07XG5cblx0XHRcdFx0XHRwb2ludGVyLWV2ZW50czogbm9uZTtcblxuXHRcdFx0XHRcdHBhdGgjc3R5bGlzYWJsZXtcblx0XHRcdFx0XHRcdGZpbGw6ICMzMzMgIWltcG9ydGFudDtcblxuXHRcdFx0XHRcdFx0cG9pbnRlci1ldmVudHM6IG5vbmU7XG5cdFx0XHRcdFx0fVxuXG5cdFx0XHRcdFx0cGF0aCNzdHJva2Utc3R5bGlzYWJsZXtcblx0XHRcdFx0XHRcdHN0cm9rZTogIzMzMyAhaW1wb3J0YW50O1xuXG5cdFx0XHRcdFx0XHRwb2ludGVyLWV2ZW50czogbm9uZTtcblx0XHRcdFx0XHR9XG5cdFx0XHRcdH1cblxuXHRcdFx0fVxuXG5cblxuXHRcdFx0LyogKDQpIEdyb3VwZXMgKi9cblx0XHRcdC5ncm91cHN7XG5cdFx0XHRcdGRpc3BsYXk6IGJsb2NrO1xuXHRcdFx0XHRtYXJnaW46IDFlbTtcblx0XHRcdFx0Y29sb3I6ICMzMzM7XG5cdFx0XHRcdHdoaXRlLXNwYWNlOiBub3dyYXA7XG5cblx0XHRcdFx0Ly8gc3ZnIChpY29uZSlcblx0XHRcdFx0c3Zne1xuXHRcdFx0XHRcdGRpc3BsYXk6IGlubGluZS1ibG9jaztcblx0XHRcdFx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdFx0XHRcdFx0XHRtYXJnaW4tbGVmdDogLjVlbTtcblx0XHRcdFx0XHRcdG1hcmdpbi1yaWdodDogLjVlbTtcblx0XHRcdFx0XHRcdG1hcmdpbi1ib3R0b206IC0uNmVtO1xuXHRcdFx0XHRcdFx0d2lkdGg6IDEuNWVtO1xuXHRcdFx0XHRcdFx0aGVpZ2h0OiAyZW07XG5cblx0XHRcdFx0XHRwb2ludGVyLWV2ZW50czogbm9uZTtcblxuXHRcdFx0XHRcdHBhdGh7XG5cdFx0XHRcdFx0XHRmaWxsOiAjMzMzICFpbXBvcnRhbnQ7XG5cblx0XHRcdFx0XHRcdHBvaW50ZXItZXZlbnRzOiBub25lO1xuXHRcdFx0XHRcdH1cblx0XHRcdFx0fVxuXG5cdFx0XHRcdCYgPiBzcGFue1xuXHRcdFx0XHRcdGRpc3BsYXk6IGlubGluZS1ibG9jaztcblx0XHRcdFx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdFx0XHRcdFx0cGFkZGluZzogLjFlbSAuNWVtO1xuXHRcdFx0XHRcdG1hcmdpbi1yaWdodDogY2FsYyggLjRlbSArIDJlbSApO1xuXG5cdFx0XHRcdFx0Ym9yZGVyLXJhZGl1czogM3B4IDAgMCAzcHg7XG5cdFx0XHRcdFx0Ym9yZGVyOiAxcHggc29saWQgI2JkYmRiZDtcblx0XHRcdFx0XHRib3gtc2hhZG93OiBpbnNldCAwIDAgMnB4ICNmYWZhZmE7XG5cblx0XHRcdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAjZjlmOWY5O1xuXG5cdFx0XHRcdFx0Y29sb3I6ICMzMzM7XG5cblx0XHRcdFx0XHRjdXJzb3I6IGRlZmF1bHQ7XG5cblx0XHRcdFx0XHQmLmFkZC1ncm91cCxcblx0XHRcdFx0XHQmLmFkZC1tZW1iZXJ7XG5cdFx0XHRcdFx0XHRib3JkZXItcmFkaXVzOiAzcHg7XG5cblx0XHRcdFx0XHRcdGN1cnNvcjogcG9pbnRlcjtcblx0XHRcdFx0XHR9XG5cblx0XHRcdFx0XHQmID4gc3Bhbi5yZW0tZ3JvdXAsXG5cdFx0XHRcdFx0JiA+IHNwYW4ucmVtLW1lbWJlcntcblx0XHRcdFx0XHRcdGRpc3BsYXk6IGJsb2NrO1xuXHRcdFx0XHRcdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdFx0XHRcdFx0XHR0b3A6IC0xcHg7XG5cdFx0XHRcdFx0XHRcdGxlZnQ6IDEwMCU7XG5cdFx0XHRcdFx0XHRcdHdpZHRoOiAxZW07XG5cdFx0XHRcdFx0XHRcdGhlaWdodDogY2FsYyggMTAwJSAtIC4xZW0gLSAycHggKTtcblx0XHRcdFx0XHRcdFx0cGFkZGluZzogLjFlbSAuNWVtO1xuXG5cdFx0XHRcdFx0XHRib3JkZXItcmFkaXVzOiAwIDNweCAzcHggMDtcblx0XHRcdFx0XHRcdGJvcmRlcjogMXB4IHNvbGlkICNiZGJkYmQ7XG5cdFx0XHRcdFx0XHRib3gtc2hhZG93OiBpbnNldCAwIDAgMnB4ICNmYWZhZmE7XG5cblx0XHRcdFx0XHRcdGJhY2tncm91bmQ6IHVybCgnL3NyYy9zdGF0aWMvc3ViLW1lbnUtc2lkZS9yZW1vdmUuc3ZnJykgY2VudGVyIGNlbnRlciBuby1yZXBlYXQ7XG5cdFx0XHRcdFx0XHRiYWNrZ3JvdW5kLXNpemU6IGF1dG8gNzAlO1xuXHRcdFx0XHRcdFx0YmFja2dyb3VuZC1jb2xvcjogI2Y5ZjlmOTtcblxuXHRcdFx0XHRcdFx0Y29sb3I6IGluaGVyaXQ7XG5cblx0XHRcdFx0XHRcdGN1cnNvcjogcG9pbnRlcjtcblxuXHRcdFx0XHRcdFx0Jjpob3Zlcntcblx0XHRcdFx0XHRcdFx0YmFja2dyb3VuZC1pbWFnZTogdXJsKCcvc3JjL3N0YXRpYy9zdWItbWVudS1zaWRlL3JlbW92ZS5zdmc/JyskZm9ybS1pbnZhbGlkLWNvbG9yKTtcblx0XHRcdFx0XHRcdH1cblxuXG5cdFx0XHRcdFx0fVxuXG5cdFx0XHRcdH1cblxuXHRcdFx0fVxuXG5cdFx0XHQvKiAoNSkgTGllbiB2ZXJzIGxhIG1vZGlmaWNhdGlvbiAqL1xuXHRcdFx0LmxpbmtfZWRpdCxcblx0XHRcdC5saW5rX3JlbW92ZXtcblx0XHRcdFx0ZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXHRcdFx0XHRmbG9hdDogcmlnaHQ7XG5cdFx0XHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0XHRcdFx0XHR3aWR0aDogMWVtO1xuXHRcdFx0XHRcdGhlaWdodDogMWVtO1xuXHRcdFx0XHRtYXJnaW4tbGVmdDogMWVtO1xuXG5cdFx0XHRcdGN1cnNvcjogcG9pbnRlcjtcblxuXHRcdFx0XHQmID4gc3Zne1xuXHRcdFx0XHRcdHdpZHRoOiAxMDAlO1xuXHRcdFx0XHRcdGhlaWdodDogMTAwJTtcblx0XHRcdFx0XHRmaWxsOiAjZGRkICFpbXBvcnRhbnQ7XG5cblx0XHRcdFx0XHR0cmFuc2l0aW9uOiBmaWxsIC40cyBlYXNlLWluLW91dDtcblxuXHRcdFx0XHRcdHBvaW50ZXItZXZlbnRzOiBub25lO1xuXHRcdFx0XHR9XG5cblx0XHRcdFx0Jjpob3Zlcntcblx0XHRcdFx0XHQmID4gc3Zne1xuXHRcdFx0XHRcdFx0ZmlsbDogJGZvcm0tbmV1dHJhbC1jb2xvciAhaW1wb3J0YW50O1xuXHRcdFx0XHRcdH1cblx0XHRcdFx0fVxuXHRcdFx0fVxuXG5cdFx0XHQvKiAoNikgTGllbiB2ZXJzIGxhIHN1cHByZXNzaW9uICovXG5cdFx0XHQubGlua19yZW1vdmV7XG5cblx0XHRcdFx0Jjpob3Zlcntcblx0XHRcdFx0XHQmID4gc3Zne1xuXHRcdFx0XHRcdFx0ZmlsbDogJGZvcm0taW52YWxpZC1jb2xvciAhaW1wb3J0YW50O1xuXHRcdFx0XHRcdH1cblx0XHRcdFx0fVxuXHRcdFx0fVxuXG5cdH1cblxuXHQvKiBbM10gRm9ybXVsYWlyZXNcblx0PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ki9cblx0JiA+IHNlY3Rpb24gPiBmb3Jte1xuXHRcdGRpc3BsYXk6IGlubGluZS1ibG9jaztcblx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdFx0XHRsZWZ0OiA1MCU7XG5cdFx0XHRtYXJnaW46IC4zZW0gMDtcblx0XHRcdHBhZGRpbmc6IDFlbTtcblxuXHRcdGJvcmRlci1yYWRpdXM6IDNweDtcblx0XHRib3JkZXItY29sb3I6ICRmb3JtLWludmFsaWQtY29sb3I7XG5cdFx0Ym94LXNoYWRvdzogMCAwIDFweCAjYjdiN2I3O1xuXG5cdFx0YmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcblxuXHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKTtcblxuXG5cblx0XHQmLnZhbGlke1xuXHRcdFx0Ym9yZGVyLWNvbG9yOiAkZm9ybS12YWxpZC1jb2xvcjtcblx0XHR9XG5cblx0XHQmLm5ldXRyYWx7XG5cdFx0XHRib3JkZXItY29sb3I6ICRmb3JtLW5ldXRyYWwtY29sb3I7XG5cdFx0fVxuXG5cdFx0Ji5zZWFyY2h7XG5cdFx0XHRib3JkZXItY29sb3I6ICRmb3JtLW5ldXRyYWwtY29sb3I7XG5cdFx0fVxuXG5cdFx0Ly8gVGV4dGVzIGNlbnRyZXNcblx0XHQuZWRpdF9zZWFyY2hfdmlldyxcblx0XHQucmVtb3ZlX3NlYXJjaF92aWV3e1xuXHRcdFx0ZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXHRcdFx0XHR3aWR0aDogMTAwJTtcblxuXHRcdFx0dGV4dC1hbGlnbjogY2VudGVyO1xuXHRcdFx0Y29sb3I6ICNhYWFhYWE7XG5cblx0XHRcdHNwYW57XG5cdFx0XHRcdGNvbG9yOiAjODg4ODg4O1xuXHRcdFx0fVxuXHRcdH1cblxuXG5cdFx0LyogKDEpIENoYW1wcyBkZSB0ZXh0ZSAqL1xuXHRcdGlucHV0W3R5cGU9dGV4dF0sXG5cdFx0aW5wdXRbdHlwZT1tYWlsXSxcblx0XHRpbnB1dFt0eXBlPXBhc3N3b3JkXSxcblx0XHRzZWxlY3QsXG5cdFx0Ji5pbnZhbGlkID4gaW5wdXRbdHlwZT10ZXh0XSxcblx0XHQmLmludmFsaWQgPiBpbnB1dFt0eXBlPW1haWxdLFxuXHRcdCYuaW52YWxpZCA+IGlucHV0W3R5cGU9cGFzc3dvcmRdLFxuXHRcdCYuaW52YWxpZCA+IHNlbGVjdCxcblx0XHRpbnB1dC5pbnZhbGlkW3R5cGU9dGV4dF0sXG5cdFx0aW5wdXQuaW52YWxpZFt0eXBlPW1haWxdLFxuXHRcdGlucHV0LmludmFsaWRbdHlwZT1wYXNzd29yZF0sXG5cdFx0c2VsZWN0LmludmFsaWR7XG5cdFx0XHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cdFx0XHRtYXJnaW46IDFlbSAwO1xuXHRcdFx0cGFkZGluZzogLjdlbSAxZW07XG5cblx0XHRcdGJvcmRlci1yYWRpdXM6IDNweDtcblx0XHRcdGJvcmRlcjogMXB4IHNvbGlkICNkN2RkZTg7XG5cblx0XHRcdGNvbG9yOiAjMmYzMDMzO1xuXG5cdFx0XHR0cmFuc2l0aW9uOiBib3JkZXIgLjRzIGVhc2UtaW4tb3V0O1xuXG5cdFx0XHQmOmZvY3VzLFxuXHRcdFx0Jjpob3Zlcntcblx0XHRcdFx0Ym9yZGVyLWNvbG9yOiAkZm9ybS1pbnZhbGlkLWNvbG9yO1xuXHRcdFx0fVxuXHRcdH1cblxuXG5cdFx0c2VsZWN0e1xuXHRcdFx0d2lkdGg6IDEwMCU7XG5cdFx0XHRkaXNwbGF5OiBibG9jaztcblx0XHRcdGJhY2tncm91bmQ6ICNmZmY7XG5cblx0XHRcdG9wdGlvbntcblx0XHRcdFx0cGFkZGluZzogLjVlbTtcblx0XHRcdH1cblx0XHR9XG5cblxuXHRcdC8vIENoYW1wcyB2YWxpZGVzXG5cdFx0Ji52YWxpZCA+IGlucHV0W3R5cGU9dGV4dF0sXG5cdFx0Ji52YWxpZCA+IGlucHV0W3R5cGU9bWFpbF0sXG5cdFx0Ji52YWxpZCA+IGlucHV0W3R5cGU9cGFzc3dvcmRdLFxuXHRcdCYudmFsaWQgPiBzZWxlY3QsXG5cdFx0aW5wdXQudmFsaWRbdHlwZT10ZXh0XSxcblx0XHRpbnB1dC52YWxpZFt0eXBlPW1haWxdLFxuXHRcdGlucHV0LnZhbGlkW3R5cGU9cGFzc3dvcmRdLFxuXHRcdHNlbGVjdC52YWxpZHtcblx0XHRcdCY6Zm9jdXMsXG5cdFx0XHQmOmhvdmVye1xuXHRcdFx0XHRib3JkZXItY29sb3I6ICRmb3JtLXZhbGlkLWNvbG9yO1xuXHRcdFx0fVxuXHRcdH1cblxuXHRcdC8vIENoYW1wcyBuZXV0cmVzXG5cdFx0Ji5uZXV0cmFsID4gaW5wdXRbdHlwZT10ZXh0XSxcblx0XHQmLm5ldXRyYWwgPiBpbnB1dFt0eXBlPW1haWxdLFxuXHRcdCYubmV1dHJhbCA+IGlucHV0W3R5cGU9cGFzc3dvcmRdLFxuXHRcdCYubmV1dHJhbCA+IHNlbGVjdCxcblx0XHRpbnB1dC5uZXV0cmFsW3R5cGU9dGV4dF0sXG5cdFx0aW5wdXQubmV1dHJhbFt0eXBlPW1haWxdLFxuXHRcdGlucHV0Lm5ldXRyYWxbdHlwZT1wYXNzd29yZF0sXG5cdFx0c2VsZWN0Lm5ldXRyYWx7XG5cdFx0XHQmOmZvY3VzLFxuXHRcdFx0Jjpob3Zlcntcblx0XHRcdFx0Ym9yZGVyLWNvbG9yOiAkZm9ybS1uZXV0cmFsLWNvbG9yO1xuXHRcdFx0fVxuXHRcdH1cblxuXHRcdC8vIENoYW1wcyBuZXV0cmVzXG5cdFx0Ji5zZWFyY2ggPiBpbnB1dFt0eXBlPXRleHRdLFxuXHRcdCYuc2VhcmNoID4gaW5wdXRbdHlwZT1tYWlsXSxcblx0XHQmLnNlYXJjaCA+IGlucHV0W3R5cGU9cGFzc3dvcmRdLFxuXHRcdCYuc2VhcmNoID4gc2VsZWN0LFxuXHRcdGlucHV0LnNlYXJjaFt0eXBlPXRleHRdLFxuXHRcdGlucHV0LnNlYXJjaFt0eXBlPW1haWxdLFxuXHRcdGlucHV0LnNlYXJjaFt0eXBlPXBhc3N3b3JkXXtcblx0XHRcdCY6Zm9jdXMsXG5cdFx0XHQmOmhvdmVye1xuXHRcdFx0XHRib3JkZXItY29sb3I6ICRmb3JtLXNlYXJjaC1jb2xvcjtcblx0XHRcdH1cblx0XHR9XG5cblxuXG5cdFx0LyogKDIpIEJvdXRvbnMgKi9cblx0XHRidXR0b24sXG5cdFx0YnV0dG9uLmludmFsaWQsXG5cdFx0Ji5pbnZhbGlkID4gYnV0dG9ue1xuXHRcdFx0ZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXHRcdFx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHRcdFx0XHRsZWZ0OiA1MCU7XG5cblx0XHRcdHBhZGRpbmc6IC43ZW0gMWVtO1xuXG5cdFx0XHRib3JkZXItcmFkaXVzOiAzcHg7XG5cdFx0XHRib3JkZXI6IDFweCBzb2xpZCAkZm9ybS1pbnZhbGlkLWNvbG9yO1xuXG5cdFx0XHRiYWNrZ3JvdW5kOiAkZm9ybS1pbnZhbGlkLWNvbG9yIGNlbnRlciBjZW50ZXIgbm8tcmVwZWF0O1xuXG5cdFx0XHRjb2xvcjogI2ZmZjtcblxuXHRcdFx0dHJhbnNpdGlvbjogYmFja2dyb3VuZCAuNHMgZWFzZS1pbi1vdXQ7XG5cblx0XHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKTtcblxuXHRcdFx0Jjpob3Zlcixcblx0XHRcdCY6Zm9jdXMsXG5cdFx0XHQmOmRpc2FibGVke1xuXHRcdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuXHRcdFx0XHRjb2xvcjogJGZvcm0taW52YWxpZC1jb2xvcjtcblx0XHRcdH1cblx0XHR9XG5cblxuXHRcdC8vIEJvdXRvbnMgdmFsaWRlc1xuXHRcdGJ1dHRvbi52YWxpZCxcblx0XHQmLnZhbGlkID4gYnV0dG9ue1xuXHRcdFx0Ym9yZGVyLWNvbG9yOiAkZm9ybS12YWxpZC1jb2xvcjtcblxuXHRcdFx0YmFja2dyb3VuZC1jb2xvcjogJGZvcm0tdmFsaWQtY29sb3I7XG5cblx0XHRcdCY6aG92ZXIsXG5cdFx0XHQmOmZvY3VzLFxuXHRcdFx0JjpkaXNhYmxlZHtcblx0XHRcdFx0YmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcblx0XHRcdFx0Y29sb3I6ICRmb3JtLXZhbGlkLWNvbG9yO1xuXHRcdFx0fVxuXHRcdH1cblxuXHRcdC8vIEJvdXRvbnMgbmV1dHJlc1xuXHRcdGJ1dHRvbi5uZXV0cmFsLFxuXHRcdCYubmV1dHJhbCA+IGJ1dHRvbntcblx0XHRcdGJvcmRlci1jb2xvcjogJGZvcm0tbmV1dHJhbC1jb2xvcjtcblxuXHRcdFx0YmFja2dyb3VuZC1jb2xvcjogJGZvcm0tbmV1dHJhbC1jb2xvcjtcblxuXHRcdFx0Jjpob3Zlcixcblx0XHRcdCY6Zm9jdXMsXG5cdFx0XHQmOmRpc2FibGVke1xuXHRcdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuXHRcdFx0XHRjb2xvcjogJGZvcm0tbmV1dHJhbC1jb2xvcjtcblx0XHRcdH1cblx0XHR9XG5cblx0XHQvLyBCb3V0b25zIHJlY2hlcmNoZVxuXHRcdGJ1dHRvbi5zZWFyY2gsXG5cdFx0Ji5zZWFyY2ggPiBidXR0b257XG5cdFx0XHRib3JkZXItY29sb3I6ICRmb3JtLXNlYXJjaC1jb2xvcjtcblxuXHRcdFx0YmFja2dyb3VuZC1jb2xvcjogJGZvcm0tc2VhcmNoLWNvbG9yO1xuXG5cdFx0XHQmOmhvdmVyLFxuXHRcdFx0Jjpmb2N1cyxcblx0XHRcdCY6ZGlzYWJsZWR7XG5cdFx0XHRcdGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG5cdFx0XHRcdGNvbG9yOiAkZm9ybS1zZWFyY2gtY29sb3I7XG5cdFx0XHR9XG5cdFx0fVxuXG5cblx0XHQvLyBCb3V0b25zIHF1YW5kIGFjdGlvbiB2YWxpZGVlXG5cdFx0Ji5pbnZhbGlkID4gYnV0dG9uLmFjdGl2ZSxcblx0XHRidXR0b24uaW52YWxpZC5hY3RpdmUsXG5cdFx0YnV0dG9uLmFjdGl2ZXtcblx0XHRcdGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG5cdFx0XHRiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJy9zcmMvc3RhdGljL2NvbnRhaW5lci9hY3RpdmUuc3ZnPycrJHJkLWZvcm0taW52YWxpZC1jb2xvcikgIWltcG9ydGFudDtcblx0XHRcdGJhY2tncm91bmQtc2l6ZTogMWVtIGF1dG87XG5cblx0XHRcdGNvbG9yOiB0cmFuc3BhcmVudCAhaW1wb3J0YW50O1xuXHRcdH1cblxuXG5cdFx0YnV0dG9uLnZhbGlkLmFjdGl2ZSxcblx0XHQmLnZhbGlkID4gYnV0dG9uLmFjdGl2ZXtcblx0XHRcdGJhY2tncm91bmQtaW1hZ2U6IHVybCgnL3NyYy9zdGF0aWMvY29udGFpbmVyL2FjdGl2ZS5zdmc/JyskcmQtZm9ybS12YWxpZC1jb2xvcikgICAhaW1wb3J0YW50O1xuXHRcdH1cblx0XHRidXR0b24ubmV1dHJhbC5hY3RpdmUsXG5cdFx0Ji5uZXV0cmFsID4gYnV0dG9uLmFjdGl2ZXtcblx0XHRcdGJhY2tncm91bmQtaW1hZ2U6IHVybCgnL3NyYy9zdGF0aWMvY29udGFpbmVyL2FjdGl2ZS5zdmc/JyskcmQtZm9ybS1uZXV0cmFsLWNvbG9yKSAhaW1wb3J0YW50O1xuXHRcdH1cblx0XHRidXR0b24uc2VhcmNoLmFjdGl2ZSxcblx0XHQmLnNlYXJjaCA+IGJ1dHRvbi5hY3RpdmV7XG5cdFx0XHRiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJy9zcmMvc3RhdGljL2NvbnRhaW5lci9hY3RpdmUuc3ZnPycrJHJkLWZvcm0tc2VhcmNoLWNvbG9yKSAgIWltcG9ydGFudDtcblx0XHR9XG5cblxuXG5cdFx0Ly8gXCJPVVwiIHNlcGFyYW50IGxlcyBib3V0b25zXG5cdFx0aHIuT1JbZGF0YS1sYWJlbF17XG5cdFx0XHRkaXNwbGF5OiBibG9jaztcblx0XHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0XHRcdFx0d2lkdGg6IDEwMCU7XG5cdFx0XHRcdGhlaWdodDogMDtcblxuXHRcdFx0Ym9yZGVyOiAwO1xuXHRcdFx0Ym9yZGVyLWJvdHRvbTogMXB4IGRhc2hlZCAkZm9ybS1pbnZhbGlkLWNvbG9yO1xuXG5cdFx0XHQmOmJlZm9yZXtcblx0XHRcdFx0Y29udGVudDogYXR0cihkYXRhLWxhYmVsKTtcblx0XHRcdFx0ZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXHRcdFx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdFx0XHRcdFx0dG9wOiA1MCU7XG5cdFx0XHRcdFx0bGVmdDogNTAlO1xuXHRcdFx0XHRcdHBhZGRpbmc6IDAgMWVtO1xuXG5cdFx0XHRcdGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG5cblx0XHRcdFx0Y29sb3I6ICRmb3JtLWludmFsaWQtY29sb3I7XG5cblx0XHRcdFx0dHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpIHRyYW5zbGF0ZXkoLTUwJSk7XG5cdFx0XHR9XG5cblx0XHR9XG5cblx0XHQvLyBcIk9VXCIgdmFsaWRlXG5cdFx0LnZhbGlkID4gaHIuT1IsXG5cdFx0aHIuT1IudmFsaWR7XG5cdFx0XHRib3JkZXItYm90dG9tOiAxcHggZGFzaGVkICRmb3JtLXZhbGlkLWNvbG9yO1xuXHRcdFx0JjpiZWZvcmV7XG5cdFx0XHRcdGNvbG9yOiAkZm9ybS12YWxpZC1jb2xvcjtcblx0XHRcdH1cblxuXHRcdH1cblxuXHRcdC8vIFwiT1VcIiBuZXV0cmVcblx0XHQubmV1dHJhbCA+IGhyLk9SLFxuXHRcdGhyLk9SLm5ldXRyYWx7XG5cdFx0XHRib3JkZXItYm90dG9tOiAxcHggZGFzaGVkICRmb3JtLW5ldXRyYWwtY29sb3I7XG5cdFx0XHQmOmJlZm9yZXtcblx0XHRcdFx0Y29sb3I6ICRmb3JtLW5ldXRyYWwtY29sb3I7XG5cdFx0XHR9XG5cblx0XHR9XG5cblx0XHQvLyBcIk9VXCIgcmVjaGVyY2hlXG5cdFx0LnNlYXJjaCA+IGhyLk9SLFxuXHRcdGhyLk9SLnNlYXJjaHtcblx0XHRcdGJvcmRlci1ib3R0b206IDFweCBkYXNoZWQgJGZvcm0tc2VhcmNoLWNvbG9yO1xuXHRcdFx0JjpiZWZvcmV7XG5cdFx0XHRcdGNvbG9yOiAkZm9ybS1zZWFyY2gtY29sb3I7XG5cdFx0XHR9XG5cblx0XHR9XG5cdH1cblxuXG5cblxufVxuXG4vKiBbNF0gVGFibGVhdSDDoCBjb2NoZXJcbj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSovXG5hcnRpY2xlLmNoZWNrLXRhYmxle1xuXG5cdGRpc3BsYXk6IGZsZXg7XG5cblx0ZmxleC1kaXJlY3Rpb246IHJvdztcblx0ZmxleC13cmFwOiB3cmFwO1xuXHRqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG5cblx0Ym9yZGVyLXJhZGl1czogM3B4O1xuXHRib3JkZXI6IDFweCBzb2xpZCAjZGRkO1xuXG5cblx0JiA+IGRpdntcblx0XHRkaXNwbGF5OiBmbGV4O1xuXG5cdFx0ZmxleC1kaXJlY3Rpb246IHJvdztcblx0XHRmbGV4LXdyYXA6IG5vd3JhcDtcblx0XHRqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG5cblx0XHRmbGV4OiAxMDAlO1xuXHRcdHBhZGRpbmc6IC44ZW0gMDtcblxuXHRcdGNvbG9yOiAjMzMzO1xuXG5cdFx0YmFja2dyb3VuZDogI2Y4ZjhmODtcblx0XHRib3JkZXItYm90dG9tOiAxcHggc29saWQgI2VlZTtcblxuXHRcdHRyYW5zaXRpb246IGJhY2tncm91bmQgLjJzIGVhc2UtaW4tb3V0O1xuXG5cdFx0JjpudGgtY2hpbGQoMm4pe1xuXHRcdFx0YmFja2dyb3VuZDogI2ZkZmRmZDtcblx0XHR9XG5cblx0XHRvdmVyZmxvdzogaGlkZGVuO1xuXG5cblx0XHQmID4gc3Bhbntcblx0XHRcdGZsZXg6IDEwMCU7XG5cdFx0XHRkaXNwbGF5OiBmbGV4O1xuXHRcdFx0ZmxleC1kaXJlY3Rpb246IHJvdztcblx0XHRcdGZsZXgtd3JhcDogbm93cmFwO1xuXHRcdFx0anVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG5cblxuXHRcdFx0LyogKDEpIEdlc3Rpb24gZHUgY2hlY2tib3ggSEFDSyAqL1xuXHRcdFx0aW5wdXRbdHlwZT0nY2hlY2tib3gnXXsgZGlzcGxheTogbm9uZTsgfVxuXG5cdFx0XHRpbnB1dFt0eXBlPSdjaGVja2JveCddICsgbGFiZWxbZm9yXXtcblx0XHRcdFx0ZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXHRcdFx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0XHRcdFx0d2lkdGg6IDEuMmVtO1xuXHRcdFx0XHRcdGhlaWdodDogMS4yZW07XG5cblx0XHRcdFx0Ly8gYm9yZGVyLXJhZGl1czogNTAlIC8gNTAlO1xuXG5cdFx0XHRcdGJhY2tncm91bmQ6IHVybCgnL3NyYy9zdGF0aWMvY29udGFpbmVyL2NoZWNrYm94LnN2ZycpIGNlbnRlciBjZW50ZXIgbm8tcmVwZWF0O1xuXHRcdFx0XHRiYWNrZ3JvdW5kLXNpemU6IDEwMCUgYXV0bzs7XG5cblx0XHRcdFx0dHJhbnNpdGlvbjogYm94LXNoYWRvdyAuMnMgZWFzZS1pbi1vdXQ7XG5cblx0XHRcdFx0Y3Vyc29yOiBwb2ludGVyO1xuXHRcdFx0fVxuXG5cdFx0XHRpbnB1dFt0eXBlPSdjaGVja2JveCddOmNoZWNrZWQgKyBsYWJlbFtmb3Jde1xuXHRcdFx0XHRiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJy9zcmMvc3RhdGljL2NvbnRhaW5lci9jaGVja2JveEBjaGVja2VkLnN2ZycpO1xuXHRcdFx0fVxuXG5cdFx0fVxuXG5cdH1cblxufVxuIiwKCQkiLyogQ09VTEVVUiBEVSBUSEVNRSAqL1xuJHRoZW1lLWNvbG9yOiAjZjQ0ZjA2O1xuXG4vKiBDT1VMRVVSIERVIFNPVVMtTUVOVSAqL1xuJHN1Yi1tZW51LWNvbG9yOiAjNWI1ZTYzO1xuXG4vKiBDT1VMRVVSIERFUyBFUlJFVVJTICovXG4kZXJyb3ItY29sb3I6ICNjYzU4NTc7XG5cbi8qIEZPUk1VTEFJUkVTICovXG4kZm9ybS12YWxpZC1jb2xvcjogICAjMjdhNTYwO1xuJGZvcm0tbmV1dHJhbC1jb2xvcjogIzIxOTNlNjtcbiRmb3JtLXNlYXJjaC1jb2xvcjogICM1NjMwZWQ7XG4kZm9ybS1pbnZhbGlkLWNvbG9yOiAjZDUyOTE4O1xuXG5cbi8qIEdFU1RJT04gREVTIExPTkdVRVVSUyAqL1xuJG1lbnUtc2lkZS13aWR0aDogNGVtO1xuXG5cbi8vIFBPVVIgUkVTT1VSQ0VfRElTUEFUQ0hFUlxuJHJkLWZvcm0tdmFsaWQtY29sb3I6ICAgJzI3YTU2MCc7XG4kcmQtZm9ybS1uZXV0cmFsLWNvbG9yOiAnMjE5M2U2JztcbiRyZC1mb3JtLXNlYXJjaC1jb2xvcjog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 */