SmartIT_Extensions/BMC/smart-it-full-helix/styles/css/smart-it-rtl.css

2717 lines
323 KiB
CSS

body {
overflow-x: hidden; }
/** Start : Common classes **/
.pull-right {
float: left !important; }
.no-padding-left {
padding-left: 0; }
.dropdown-input__button, input.custom-input, input.typeahead-input, input[type="text"].form-control, input[type="number"].form-control {
text-align: right;
padding: 0 12px 0 25px; }
input.custom-input[type="number"] {
padding: 0 12px 0 5px; }
.timepicker, .ui-bootstrap__timepicker {
direction: ltr; }
.timepicker input[type="text"].form-control, .ui-bootstrap__timepicker input[type="text"].form-control {
padding: 3px 12px; }
.dropdown-input__button:after {
left: 10px;
right: auto; }
.action-blade .modal-dialog {
right: auto;
left: 0; }
.action-blade__assign-me {
padding-left: 0;
padding-right: 30px; }
.action-blade__auto-assign .auto-assign__text {
padding-left: 0;
padding-right: 5px; }
.action-blade__tab-bar-parent {
border-left: 1px solid #d9d9d9;
border-right: none; }
.action-blade__tab-bar {
border-left: 1px solid #d9d9d9;
border-right: none; }
.action-blade__tab-content {
right: 150px;
left: 0; }
.modal.fade:not(.in) .modal-dialog {
-webkit-transform: translate3d(-25%, 0, 0);
transform: translate3d(-25%, 0, 0); }
.modal-details__content {
padding: 0 80px 20px 25px; }
.modal-details__icon {
padding: 0 25px; }
.action-blade__title {
padding: 0 20px 0 0; }
.action-blade__button-container, .linked-item__button-container {
float: left; }
.action-blade__button-container > h1, .action-blade__button-container > h5 {
float: right;
margin-left: 10px;
margin-right: 0; }
.btn-container button + button, .action-blade__button-container button + button, .linked-item__button-container button + button, .timeline-note__btn-container button + button {
margin-left: 0;
margin-right: 10px; }
.system-alert__dismiss {
float: left; }
.system-alert__icon {
float: right; }
.system-alert__text {
text-align: right;
margin-left: 50px;
margin-right: 60px; }
.bmc-system-alert-modal .modal-footer {
padding: 10px 0 0 15px; }
.fd-selector__fd-field .icon-cross, .fd-selector__fd-field .asset-item-renderer .icon-trash, .asset-item-renderer .fd-selector__fd-field .icon-trash {
left: 20px;
right: auto; }
.create-ticket__form_invalid .icon-exclamation_triangle, .ticket-date__form_invalid .icon-exclamation_triangle, .ticket-risks__form_invalid .icon-exclamation_triangle, .create-outage__form_invalid .icon-exclamation_triangle, .update-outage__form_invalid .icon-exclamation_triangle {
padding-right: 0;
padding-left: 10px; }
.create-ticket__form_invalid span, .ticket-date__form_invalid span, .ticket-risks__form_invalid span, .create-outage__form_invalid span, .update-outage__form_invalid span {
unicode-bidi: embed; }
.create-ticket__action-btn + .action-panel__cancel-btn {
margin-left: 0;
margin-right: 15px; }
.custom-field__date .form-control, .create-change-wizard__date .form-control,
.custom-field__time .form-control, .custom-field__time_single .form-control,
.dropdown-item_date-range .form-control,
.custom-field__date_single .form-control, .create-change-wizard__time .form-control {
text-align: right; }
.custom-field__date .custom-field__date-icon, .custom-field__date .asset-details__date-icon, .custom-field__date .custom-field__time-icon, .create-change-wizard__date .custom-field__date-icon, .create-change-wizard__date .asset-details__date-icon, .create-change-wizard__date .custom-field__time-icon,
.custom-field__time .custom-field__date-icon,
.custom-field__time .asset-details__date-icon,
.custom-field__time .custom-field__time-icon, .custom-field__time_single .custom-field__date-icon, .custom-field__time_single .asset-details__date-icon, .custom-field__time_single .custom-field__time-icon,
.dropdown-item_date-range .custom-field__date-icon,
.dropdown-item_date-range .asset-details__date-icon,
.dropdown-item_date-range .custom-field__time-icon,
.custom-field__date_single .custom-field__date-icon,
.custom-field__date_single .asset-details__date-icon,
.custom-field__date_single .custom-field__time-icon, .create-change-wizard__time .custom-field__date-icon, .create-change-wizard__time .asset-details__date-icon, .create-change-wizard__time .custom-field__time-icon {
left: 5px; }
.custom-field__date .dropdown-menu, .create-change-wizard__date .dropdown-menu,
.custom-field__time .dropdown-menu, .custom-field__time_single .dropdown-menu,
.dropdown-item_date-range .dropdown-menu,
.custom-field__date_single .dropdown-menu, .create-change-wizard__time .dropdown-menu {
left: auto !important; }
.custom-field__date .dropdown-menu .glyphicon-chevron-left::before, .create-change-wizard__date .dropdown-menu .glyphicon-chevron-left::before,
.custom-field__time .dropdown-menu .glyphicon-chevron-left::before, .custom-field__time_single .dropdown-menu .glyphicon-chevron-left::before,
.dropdown-item_date-range .dropdown-menu .glyphicon-chevron-left::before,
.custom-field__date_single .dropdown-menu .glyphicon-chevron-left::before, .create-change-wizard__time .dropdown-menu .glyphicon-chevron-left::before {
content: "\e080"; }
.custom-field__date .dropdown-menu .glyphicon-chevron-right::before, .create-change-wizard__date .dropdown-menu .glyphicon-chevron-right::before,
.custom-field__time .dropdown-menu .glyphicon-chevron-right::before, .custom-field__time_single .dropdown-menu .glyphicon-chevron-right::before,
.dropdown-item_date-range .dropdown-menu .glyphicon-chevron-right::before,
.custom-field__date_single .dropdown-menu .glyphicon-chevron-right::before, .create-change-wizard__time .dropdown-menu .glyphicon-chevron-right::before {
content: "\e079"; }
.asset-point .custom-field__date .custom-field__date-icon {
left: 5px; }
.asset-point .custom-field__time .custom-field__time-icon {
left: 5px; }
.release-point .custom-field__date .create-release-wizard__date-icon {
left: 8px;
right: inherit; }
.release-point .custom-field__time .create-release-wizard__time-icon {
left: 8px;
right: inherit; }
.release-point .custom-field__date + .custom-field__time {
margin-right: 0px;
margin-left: inherit; }
.create-release-wizard__date-icon, .create-release-wizard__time-icon {
left: 8px;
right: inherit; }
.create-release-wizard__risk_mode {
border-left: 1px solid #d9d9d9; }
.release-plan-item__milestone-dropdown {
padding-right: 0;
padding-left: 20px; }
.release-plan-item__milestone-dropdown .dropdown-menu {
right: 0; }
.release-plan-item__milestone-dropdown .chart__group-label {
padding-right: 0;
padding-left: 5px; }
.release-plan__milestone-filter {
float: left;
right: 0;
left: 15px; }
.release-plan__milestone-filter .dropdown-menu {
left: 0;
right: auto; }
.release-plan__sequence-save-buttons {
float: left;
margin-left: 15px;
margin-right: 0; }
.release-plan__button-groups {
float: left; }
.ticket-template__search-section .search-input {
padding-left: 0;
padding-right: 35px;
background-position: right 10px top 50%; }
.screen-configuration__header-title, .create-ticket__header-title, .create-ka__page-title, .create-aqi__page-title, .create-change__page-title, .create-release__page-title {
margin-right: 0;
margin-left: 40px; }
.search-resource__create-back-button, .kcs-assessment__back-button {
margin-left: 10px;
margin-right: 0; }
.search-resource__create-back-button .btn__icon-left, .kcs-assessment__back-button .btn__icon-left {
transform: scaleX(-1);
display: inline-block; }
.small-btn_secondary .btn__icon-left {
padding-right: 0;
padding-left: 10px; }
.search-resource__search-input {
padding: 0 40px 0 0;
background-position: 97% 50%; }
.rs-group__filter {
float: left; }
.progress-modal .text-content {
text-align: right; }
/** End : Common classes **/
.login-form__logo-bmc {
width: 71px;
margin-right: -5px; }
.login-form__label_username:before, .login-form__label_pass:before {
right: 0; }
.login-form__input {
padding: 0 32px 0 4px; }
.login-footer-logo {
background-position: 50px 20px;
float: left; }
.login-footer-copyright {
float: right; }
.login-footer-copyright li:first-child {
direction: ltr; }
.login-error__image {
margin-left: 10px;
margin-right: 0; }
/** Start : Dashboard classes override**/
.dashboard__column_left {
float: right;
border-left-width: 1px;
border-right-width: 0; }
.chart__resolution-group {
padding-bottom: 20px;
padding-right: 20px; }
.chart__rtl-padding__right {
padding-right: 20px; }
.chart__group-filter .dropdown-menu {
left: 0 !important;
right: auto; }
.widget__company-menu {
float: left;
padding-left: 20px; }
.widget__company-menu .dropdown-menu {
left: 0 !important;
right: auto; }
.widget__title {
margin-right: 20px; }
.chart-column {
direction: ltr; }
.chart-section__area-label {
float: right; }
.feed-item__content {
margin-right: 70px;
margin-left: 10px; }
.widget__menu, .widget__menu_filters-applied {
right: auto;
left: 0;
border-left: none;
border-right: 1px solid #d9d9d9; }
.widget__menu .dropdown-menu, .widget__menu_filters-applied .dropdown-menu {
text-align: right; }
.dropdown-menu, .dropdown .dropdown-menu {
text-align: right;
left: auto; }
ul.dropdown-menu.navigation-bar__item-menu li.navigation-bar__item-menu-list a.dropdown-item {
text-align: right; }
.dropdown-item[role="menuitemcheckbox"]:before, .dropdown-item_selected[role="menuitemcheckbox"]:before, .dropdown-menu .dropdown-item[role="menuitemcheckbox"]:before, .dropdown-menu .dropdown-item_selected[role="menuitemcheckbox"]:before, .dropdown-item-inline[role="menuitemcheckbox"]:before, .dropdown-item-inline_selected[role="menuitemcheckbox"]:before {
margin-right: inherit;
margin-left: 5px; }
.dropdown-item[role="menuitemcheckbox"]:before, .dropdown-item_selected[role="menuitemcheckbox"]:before, .dropdown-menu .dropdown-item[role="menuitemcheckbox"]:before, .dropdown-menu .dropdown-item_selected[role="menuitemcheckbox"]:before {
float: right;
line-height: 30px; }
.dropdown-item__filter-select-control .pull-left {
float: right !important; }
/** Tooltip position **/
.line-chart__tooltip-rtl .nvtooltip {
margin-left: -180px; }
/** End : Dashboard classes override**/
/** Start : Smart recorder classes override**/
.smart-recorder__popup-item-img {
float: right; }
.smart-recorder__text-align {
text-align: left; }
.smart-recorder__popup-item-col2 {
float: left;
padding: 4px 10px 0 0;
width: 100px; }
.smart-recorder__popup-item-col1 {
margin: 0 0px 0 200px;
width: 300px; }
.smart-recorder__popup-item-col1.smart-recorder__popup-padding, .smart-recorder__popup-item-col1.create-ticket__popup-item-col1 {
margin-right: 60px; }
.smart-recorder__popup-header_content {
float: right; }
.smart-recorder__popup-header_create_customer {
right: auto;
left: 10px; }
.smart-recorder-resource__header {
padding: 0 0 0 50px; }
.smart-recorder__footer {
text-align: left; }
.smart-recorder__footer .btn_secondary {
margin-left: 0;
margin-right: 10px; }
.smart-recorder-actions__createDropdown .icon-triangle_up {
padding-left: 0;
padding-right: 10px; }
.impacted-asset__editor .create-ticket__service-item .dropdown-menu {
right: 0 !important;
left: auto !important; }
.impacted-asset__editor .create-ticket__service-item .dropdown-menu .smart-recorder__popup-item-col1.smart-recorder__popup-item-margin {
margin: 0 0 0 200px; }
.rs-group-list-item__icon-container {
float: right; }
.resource-preview__body-controls {
padding-right: 5px;
left: 0;
right: inherit;
padding-left: 10px; }
.rs-group-list-item__preview-icon {
-webkit-transform: translateY(-50%) scaleX(-1);
-moz-transform: translateY(-50%) scaleX(-1);
-ms-transform: translateY(-50%) scaleX(-1);
-o-transform: translateY(-50%) scaleX(-1);
transform: translateY(-50%) scaleX(-1);
left: 15px;
right: inherit; }
.smart-recorder__left-panel {
float: right;
border-left: 1px solid #d9d9d9; }
.person-custom-field {
margin-right: 20px;
margin-left: auto; }
.person-preview__details div:first-of-type {
padding-right: 0; }
.person-preview__avatar {
margin-left: 18px;
margin-right: auto; }
.person-item__checkbox {
float: right;
margin-left: 10px;
margin-right: 0; }
.person-ticket__icon {
float: right; }
.person-item-renderer .icon-angle_right {
right: inherit;
left: 11px;
-webkit-transform: scaleX(-1);
-moz-transform: scaleX(-1);
-ms-transform: scaleX(-1);
-o-transform: scaleX(-1);
transform: scaleX(-1); }
.person-item-renderer .list-item_use {
margin-right: inherit;
margin-left: 10px; }
.person-asset__main-info {
padding-right: 70px;
padding-left: initial; }
.person-item-renderer__main-info {
margin-right: 30px;
margin-left: initial; }
.person-ticket__row {
text-align: right;
padding-right: 10px; }
.smart-recorder__support-panel {
float: right;
padding-right: 10px;
padding-left: 0;
-webkit-transition: margin-right, 0.3s, ease-in-out;
-moz-transition: margin-right, 0.3s, ease-in-out;
transition: margin-right, 0.3s, ease-in-out; }
.smart-recorder__support-content {
border-right: 1px solid #d9d9d9;
border-left: none; }
.rs-group-list-item__template-column {
float: right; }
.widget__menu .dropdown-menu {
left: -1px;
right: auto; }
.widget__menu_filters-applied .dropdown-menu {
left: -1px;
right: auto; }
/** End : Smart recorder classes override**/
/**Start : Global Search **/
.preview-panel {
left: 0;
right: 35%; }
.results-panel__section-count {
left: 0;
right: auto; }
.results-panel__item-layout .icon-angle_right {
left: 10px;
right: auto;
transform: scaleX(-1); }
.results-panel__section-title_sub {
margin: 20px 0 20px 100px; }
.search__results-count {
float: right; }
.search__active-category {
float: right; }
.search__active-category .icon-angle_right {
display: inline-block;
transform: scaleX(-1);
margin: 0 14px 1px 4px; }
.search__filter {
float: right;
margin-right: auto;
margin-left: 20px; }
.search__filter-panel .pull-left {
float: right !important; }
.search__more-filters {
float: left;
margin-right: 0;
margin-left: 10px; }
.search__more-filters > .dropdown-menu.pull-right {
left: 0;
right: auto; }
.search__top-panel {
padding: 0 20px 0 0; }
.search__top-panel .search_top-pane-first .search-criteria_result-page {
float: right;
margin-right: 20px; }
.search-icon {
float: right; }
.dropdown-item_search-icon {
margin-left: 10px;
margin-right: 0; }
.search-item-layout__main-content {
padding-right: 15px;
padding-left: inherit; }
.results-panel__section-count .icon-angle_right {
display: inline-block;
transform: scaleX(-1); }
/**End : Global Search **/
/** Start : Screen Configuration **/
.screen-configuration__global-menu-section {
padding: 20px 20px 0 0; }
.screen-configuration__screen-preview {
float: right;
padding-right: 15px;
padding-left: 0; }
.screen-configuration__panel-list {
padding-right: 0; }
.screen-configuration__panel-item {
padding: 5px 15px 5px 0; }
.area-container {
max-height: 100%;
padding: 0; }
.fields-widget__search-box {
left: 5px;
right: auto; }
.fields-widget__search-box .search-input {
padding-left: 0;
padding-right: 35px;
background-position: 95% 50%; }
.field-item_static .field-item__label {
padding-left: 0;
padding-right: 5px; }
.field-item_static .pull-left, .field-item .pull-left, .group-field-item .pull-left {
float: right !important; }
.field-item__expand-button .icon-angle_right {
display: inline-block;
transform: scaleX(-1); }
.field-item__expand-button .icon-dots {
float: right; }
.field-item__dependency-block {
padding-left: 0;
padding-right: 20px; }
.field-item__dependency-list {
padding-right: 0px; }
.action-editor__delete-btn {
float: left; }
.action-editor .btn-group button {
float: right; }
.field-item__property-label input[type="checkbox"] {
margin: -4px 0 0 5px; }
.action-editor__action-panel-section .email-accelerators__popup-item-expression {
float: right; }
.action-editor__action-panel-section .email-accelerators__popup-item-desc {
float: left; }
.email-accelerators__popup {
right: 40px; }
/** End : Screen Configuration **/
/** Start : Screen Configuration Images**/
.i-configuration, .i-incidentDetailsScreen-additionalInfo, .i-incidentDetailsScreen-assignment, .i-incidentDetailsScreen-categorization, .i-incidentDetailsScreen-customerCard, .i-incidentDetailsScreen-recordSummary, .i-incidentDetailsScreen, .i-personDetailsScreen-personSummary, .i-personDetailsScreen, .i-taskDetailsScreen-additionalInfo, .i-taskDetailsScreen-assignment, .i-taskDetailsScreen-categorization, .i-taskDetailsScreen-recordSummary, .i-taskDetailsScreen, .i-workOrderDetailsScreen-additionalInfo, .i-workOrderDetailsScreen-assignment, .i-workOrderDetailsScreen-categorization, .i-workOrderDetailsScreen-customerCard, .i-workOrderDetailsScreen-recordSummary, .i-workOrderDetailsScreen, .i-changeRequestScreen, .i-changeRequestScreen-basics, .i-changeRequestScreen-dates, .i-changeRequestScreen-risk, .i-problemScreen, .i-problemScreen-additionalInfo, .i-problemScreen-assignment, .i-problemScreen-categorization, .i-problemScreen-recordSummary, .i-assetScreen, .i-assetScreen-generic, .i-assetScreen-typeSpecific {
display: inline-block;
background-image: url("../img/configuration-images.png");
background-repeat: no-repeat;
-moz-transform: scale(-1, 1);
-webkit-transform: scale(-1, 1);
-o-transform: scale(-1, 1);
-ms-transform: scale(-1, 1);
transform: scale(-1, 1); }
.i-personDetailsScreen-personSummary {
background-position: -297px -566px;
width: 296px;
height: 282px; }
.i-personDetailsScreen {
background-position: 0 -566px;
width: 296px;
height: 282px; }
/** End : Screen Configuration Images**/
/** Start : AQI Question Set **/
.create-aqi__table {
margin-left: 0;
margin-right: 35px; }
.create-aqi__table-col__question-set, .create-aqi__table-cell__question-set {
border-left: 0; }
.create-aqi__table-cell-right {
border-left: 1px solid #d9d9d9; }
.create-aqi__table-cell-top {
text-align: right;
padding: 0 10px 0 5px; }
.create-aqi__table-row {
text-align: right; }
.create-aqi__default-clone-icon {
padding-left: 0;
padding-right: 93px; }
.create-aqi__table-cell-right, .create-aqi__table-cell__company, .create-aqi__table-cell__organisation, .create-aqi__table-cell__question-set {
padding: 0 10px 0 5px; }
.create-aqi__edit-icons {
padding-left: 75px;
padding-right: 0;
float: right;
height: 18px; }
.question-editor__question-panel-head-sortable {
border-right: 0;
border-left: 1px solid #d9d9d9; }
.question-editor__checkbox-label input[type="checkbox"] {
margin: -4px 0 0 5px; }
/** End : AQI Question Set **/
/** Start : Service Request **/
.service-request__coordinator, .ticket__assignee-thumbnail, .service-request__quantity, .service-request__definition, .service-request__expected-date, .service-request__required-date {
float: right; }
.service-request__required-date.create-ticket__date .custom-field__date + .custom-field__time {
margin-right: 0; }
.service-request__center-info {
padding: 20px 30px 20px 0; }
.srd-question__date .form-control, .srd-question__time .form-control {
text-align: right; }
.srd-question__date .srd-question__date-icon, .srd-question__date .srd-question__time-icon, .srd-question__time .srd-question__date-icon, .srd-question__time .srd-question__time-icon {
left: inherit;
right: 110px; }
.srd-question__date .dropdown-menu, .srd-question__time .dropdown-menu {
left: auto !important; }
.srd-question__date .dropdown-menu .glyphicon-chevron-left::before, .srd-question__time .dropdown-menu .glyphicon-chevron-left::before {
content: "\e080"; }
.srd-question__date .dropdown-menu .glyphicon-chevron-right::before, .srd-question__time .dropdown-menu .glyphicon-chevron-right::before {
content: "\e079"; }
/** End : Service Request **/
/** Start : Knowledge Styles **/
.ka-config__section-header {
padding: 0 10px 20px 0; }
.ka-config__list-item-content {
right: 55px;
left: 35px; }
.ka-config__list-item-pointer {
left: 0;
right: auto;
transform: scaleX(-1); }
.ka-config__edit-item-container2 {
float: left; }
.ka-config__edit-item-pointer {
padding-left: 20px;
padding-right: 0; }
.ka-config__edit-item-label, .ka-config__edit-item-summary {
margin-right: 20px;
margin-left: 0; }
/** End : Knowledge Styles **/
/** Start : Person Profile **/
.person__company-name {
left: 0;
right: inherit; }
.profile__header-icon {
float: right; }
.person__action-bar {
left: 0;
right: inherit; }
.profile__header-content {
margin-left: 0;
margin-right: 104px; }
.person-asset__icon {
float: right; }
.person__edit-icon {
left: inherit;
right: 80px; }
.person__avatar_menu_item {
text-align: right; }
.nav-tabs li + li {
border-left: inherit;
border-right: 1px solid #d9d9d9; }
.person-service-summary__rating-star {
float: right;
margin-top: -7px; }
.person-service-summary__rating-star:first-child {
padding-left: 5px;
padding-right: 0; }
.person-service-summary__escalation {
padding-right: 5px;
padding-left: inherit; }
.person-service-summary__escalation-section .icon-exclamation_triangle {
float: right; }
/** End : Person Styles **/
/** Start : Incident Profile **/
.profile__main-panel {
float: right; }
.ticket__basic-info .pull-left {
float: right !important; }
@media (min-width: 1024px) {
.ticket__basic-info > div:first-child {
padding-left: 10px;
padding-right: 0; } }
@media (min-width: 768px) and (max-width: 1023px) {
.ticket__basic-info > div:first-child {
padding-left: 22px;
padding-right: 0; } }
.service-request__summary-section {
margin-right: -14px;
margin-left: 2px; }
.ticket__name {
padding-right: 0;
padding-left: 10px; }
.ticket-controls {
float: left; }
.profile-action-bar__item + .profile-action-bar__item {
margin-right: 20px;
margin-left: 0; }
.ticket__information {
padding-left: 0;
padding-right: 10px; }
.ticket__name {
padding-left: 10px;
padding-right: auto; }
.ticket__lastupdated {
padding-left: 0;
padding-right: 10px; }
.ticket__status-selector, .outage__status-selector {
float: right;
padding-left: 15px;
padding-right: 0; }
.outage__status-selector {
cursor: default;
background-image: none; }
.ticket__status-icon {
margin-left: 0;
margin-right: 5px; }
.ticket__risk-level-badge {
margin-right: 0;
margin-left: 10px; }
.ticket__change-class {
margin-left: 0;
margin-right: 10px; }
.editable-content-section__controls {
left: 10px;
right: inherit; }
.person-summary {
padding-left: 15px;
padding-right: 0; }
.person-summary__business-card, .asset-person-summary__business-card {
margin-right: 20px;
margin-left: 0; }
.person-address__column:not(:last-of-type) {
padding-left: 20px;
padding-right: 0; }
.ticket-category-section__impacted-service {
padding: 0; }
.ticket-category-section__impacted-asset {
padding: 0; }
.ticket__category-section {
padding: 30px 20px 10px 20px; }
.dropdown-item__actual-value {
float: right; }
.dropdown-item__link {
margin-right: 0;
margin-left: 50px; }
.category-widget__item .dropdown-item__connected-value, .category-editor__category-item .dropdown-item__connected-value {
float: left;
text-align: left; }
.ka-metadata__panel .ka-metadata__categories .dropdown-menu li a span:first-child {
float: right; }
.ticket-assignee__info {
padding-left: 0;
padding-right: 20px; }
.ticket-assignee__support-group {
padding-left: 0;
padding-right: 53px; }
.profile-relation__ordering-label {
float: right; }
.profile-relation__no-relation {
padding-left: 0;
padding-right: 15px; }
.profile-relation__item-icon {
float: right; }
.profile-relation__item-details {
margin-right: 74px;
margin-left: 0; }
.profile-relation__remove {
left: 9px;
right: inherit; }
.profile-relation__item-task-col1 {
padding-right: 13px;
border-left: 1px solid #d9d9d9;
border-right: none; }
.profile-relation__item-task-col2 {
right: 31px;
padding-right: 5px;
border-left: 1px solid #d9d9d9;
border-right: none; }
.profile-relation__item-task-icon {
float: right; }
.profile-relation__item-task-col3 {
margin-right: 80px; }
.profile-relation__item-task-group-btn {
float: right; }
.profile-relation__item-task-group-sec1 {
margin: 0px -20px 0 0; }
.profile-relation__item-task-group-seq-input {
margin-right: 20px !important;
padding-left: 0px;
padding-right: 2px; }
.profile-relation__item-task-seq-input {
padding-right: 2px; }
.profile-relation__task-seq-controls {
left: 10px;
right: auto; }
.profile-relation__task-seq-actions {
margin-left: 30px;
margin-right: inherit; }
.timeline-widget__menu, .timeline-widget__menu_filters-applied {
left: 0;
right: auto;
border-right: 1px solid #d9d9d9;
border-left: 0; }
.profile__main-content {
border-left: 1px solid #d9d9d9;
border-right: 0; }
.ticket__assignment, .ticket__dates {
padding: 0 20px 20px 0px; }
.profile-action-bar__item .dropdown-menu {
left: 0;
right: auto; }
.edit-customer-card__delete-contact-btn {
left: 8px;
right: inherit; }
.ticket-summary__content {
text-align: right; }
.attachment__dismiss {
right: inherit;
left: 10px; }
.ticket-template-modal__menu-header .icon-angle_right {
left: -3px;
right: inherit;
transform: scale(-1); }
.ticket-template-modal__menu-header .control-label {
margin-left: 0;
margin-right: 15px; }
/** End : Incident Profile **/
/** Start : Workorder Profile **/
.ticket-assignee__details {
padding-right: 25px !important;
padding-left: 0; }
.edit-ticket-dates .custom-field__date_time_container .custom-field__time {
margin-right: 5px; }
.action-blade__task-template-preview {
right: 50%;
left: inherit; }
.task-group-template-preview__num {
float: right; }
.task-group-template-preview__priority {
float: left; }
.ticket-template-list__input {
float: right;
margin-right: -25px !important;
margin-left: 0 !important; }
.ticket-template-list__item {
padding: 16px 41px 16px 16px; }
/** End : Workorder Profile **/
/** Start : Knowledge Profile **/
.ka__article-id {
float: right; }
.ka-header__status-selector {
float: right;
padding-left: 15px;
padding-right: 0; }
.ka-header__status-selector.ka-header-status-dropdown {
padding-left: 0;
padding-right: 15px; }
.ka-header__status-selector.ka-header-status-dropdown .ka-header__status_text {
margin-left: 5px;
float: right; }
.ka-header__status-selector.ka-header-status-dropdown .ka-header__status-icon {
margin-left: 0; }
.ka-header__version-selection {
float: right;
margin-right: 20px;
margin-left: 0; }
.ka-header__action-items {
float: left; }
.alert-banner__header {
padding-left: 0;
padding-right: 20px; }
.icon-exclamation_triangle {
display: inline-block; }
.alert-banner__title {
float: right !important;
padding-left: 20px;
padding-right: 0; }
.ka_flag-icon {
float: right; }
.ka_flag-text {
margin-right: 60px;
margin-left: 50px;
text-align: right; }
.alert-banner__alert-button-hide {
left: 10px;
right: inherit; }
.ka__body {
margin-right: 35px;
margin-left: 0; }
.ka-text__section-text {
padding: 20px 10px 30px 60px; }
.ka-details__icon {
padding-left: 10px;
padding-right: 0; }
.ka-metadata__ca-section-item {
float: right; }
.ka-metadata__ca-section-item:first-child {
padding: 0 0 0 15px; }
.ka-metadata__ca-section-item .pull-left, .ka-metadata__section .pull-left {
float: right !important; }
.ka__author-name {
float: right;
padding: 0 10px 0 0; }
.rs-group-list-item__info {
padding: 0 15px 0 0;
text-align: right; }
.rs-group-list-item__attachment-icon {
float: right; }
.rs-group-list-item__attachment-remove-icon {
left: 5px;
right: inherit; }
.ka-edit__action-panel .ka-edit-action-panel__version-section {
float: right; }
.ka-edit__action-panel .pull-right {
float: left; }
.ka-edit__action-panel .btn-group .small-btn_secondary {
float: right; }
.ticket-incident-assignee__action {
padding-right: 53px;
padding-left: 0; }
.ka-metadata__assignment {
padding-left: 26px;
padding-right: 0; }
.ka-metadata__assignment-btn {
margin-right: 10px;
margin-left: -8px; }
/** End : Knowledge Profile **/
/** Start : Asset Profile **/
.asset-item-renderer .icon-trash {
left: 0;
right: inherit; }
.asset__action-bar {
float: left; }
.asset-profile__header-image {
float: right; }
.asset-details__dropdown ul.dropdown-menu .dropdown-item_search-bar .dropdown-item_search, .chart__perspective-container ul.dropdown-menu .dropdown-item_search-bar .dropdown-item_search {
padding: 0 25px 0 0; }
.profile-relation__button-bar .explorer-buttons {
padding-left: 35px;
padding-right: 0; }
.profile-relation__button-bar .explorer-buttons .graph:before, .profile-relation__button-bar .explorer-buttons .list:before {
padding-left: 5px;
padding-right: 0; }
.resource-slice__outage-filter {
left: 0;
right: inherit;
border-right: 1px solid #d9d9d9;
border-left: 0; }
.resource-slice__outage-filter .dropdown-menu {
left: -1px;
right: auto; }
.tag__fixed-width {
float: right; }
.create-outage__form_valid, .create-outage__form_invalid {
right: 20px;
left: inherit; }
.add-people__type-section {
float: right; }
.add-people__search-form {
margin-left: 20px;
margin-right: 240px; }
.add-people__search-bar {
background-position: 98% 50%;
padding-right: 40px;
padding-left: 0; }
.add-people-blade__list .add-people__user-pic {
float: right; }
.add-people-blade__list .add-people__details,
.add-people-blade__list-filter .add-people__details {
margin: 0 60px 0 130px; }
.add-people__role-section {
float: right;
padding: 0 20px 10px 0; }
.label_control-wrap .pull-left {
float: right !important; }
.dropdown-clear {
left: 25px;
right: auto; }
/** End : Asset Profile **/
/** Start : Known error **/
.update-status__prev-button .icon-angle_left {
display: inline-block;
-webkit-transform: scaleX(-1);
-moz-transform: scaleX(-1);
-ms-transform: scaleX(-1);
-o-transform: scaleX(-1);
transform: scaleX(-1); }
.update-status__next-button .icon-angle_right {
display: inline-block;
-webkit-transform: scaleX(-1);
-moz-transform: scaleX(-1);
-ms-transform: scaleX(-1);
-o-transform: scaleX(-1);
transform: scaleX(-1); }
/** End : Known error **/
/** Start : Change Profile **/
.ticket__management-change {
padding: 15px 20px 5px 10px; }
.change-header__summary {
padding-left: 5px;
padding-right: 0; }
.change-header__status-selector {
float: right;
padding-left: 15px;
padding-right: 0; }
.change-header__lastupdated {
padding-left: 10px;
padding-right: 0;
float: left; }
.change-controls {
float: left; }
.change-controls .profile-action-bar__item-more-actions {
margin-left: 15px; }
.change-header__sla-section {
padding: 5px 20px 5px 0px; }
.release-controls {
left: 0;
right: auto; }
.release-controls .profile-action-bar__item-more-actions {
margin-left: 15px; }
.change-details__section .ticket-assignee__details {
width: 89% !important; }
.ticket-summary__character-limit {
left: 12px;
right: auto; }
.ticket__change-requestedFor .item-input__delete-btn, .ticket__change-requestedFor .loading-spinner {
left: 10px;
right: auto; }
.assign-list__item-parent-icon .icon-triangle_right {
transform: scaleX(-1);
display: inline-block; }
.create-change-wizard__risk_list .list-group .list-group-item {
padding-right: 0;
padding-left: inherit; }
.create-change-wizard__risk_list .list-group .list-group-item span {
padding-right: 40px;
padding-left: inherit; }
.create-change-wizard__risk_list .icon-angle_right {
transform: scaleX(-1); }
.profile-relation__items-filter {
float: left;
margin-left: 20px;
margin-right: inherit; }
.profile-relation__items-filter .dropdown-menu {
left: 0;
right: auto; }
.profile-relation__items-filter .dropdown-input__button {
margin-left: 15px;
margin-right: inherit; }
.change-wizard__dates_custom-field-area {
padding-right: 40px; }
.create-change-wizard__tab-invalid {
left: 5px;
right: unset; }
.assignment__edit-button {
left: 10px;
right: inherit; }
.attachments-previewer__files-list_item + .attachments-previewer__files-list_item {
margin-left: 50px; }
.ticket__plans {
padding: 20px 20px 0 0; }
.ticket__plans_list > li {
float: right; }
.attachments-previewer__close-button {
left: 10px;
right: inherit; }
.attachments-previewer__container_left {
float: right; }
.attachments-previewer__container_right {
float: left; }
.attachments-previewer__files-list_item + .attachments-previewer__files-list_item {
margin-left: inherit;
margin-right: 50px; }
.cng-wiz__documents_selection-list-control button {
left: 0;
right: inherit; }
.cng-wiz__documents-grid-item .cng-wiz__documents-item_plan-remove-trigger {
left: 9%;
right: inherit; }
.ticket__plans-edit_control {
left: 0;
right: inherit; }
.ticket-summary__content .drop-zone .drop-zone__highlight .drop-zone__tip-inline {
text-align: right; }
.ticket-summary__content .drop-zone .drop-zone__highlight .attached-files {
text-align: right; }
.ticket-summary__content .drop-zone .drop-zone__highlight .attached-files .attachment__dismiss {
left: 5px;
right: inherit; }
.approval-banner__summary {
float: left; }
.approval-banner__summary .icon-angle_right {
transform: scaleX(-1);
display: inline-block; }
.approval-banner__header .pull-left {
float: right !important; }
.approval-banner__actions button {
float: right; }
.approval-banner {
padding-right: 20px;
padding-left: 0; }
.btn-group button + button {
margin-right: 1px;
margin-left: 0; }
.impact-simulator__top-bar .text-right {
text-align: left; }
/** End : Change Profile **/
/** Start : Broadcast display **/
.feed-item {
padding: 10px 0px 10px 5px; }
.feed-item__sla-bar {
right: 0px;
left: auto; }
/** End : Broadcast display **/
/** Start : Problem Investigation **/
.create-change-wizard__impacted-area {
padding: 3px 10px 3px 26px;
margin-left: 8px;
margin-right: inherit; }
.create-change-wizard__impacted-area:last-child {
margin-right: 0; }
.ticket__problem-details .fd-selector__fd-field:not(:last-of-type) .icon-cross {
right: auto; }
/** Start : Problem Investigation **/
/** Start : Ticket Profile - Common Modules **/
.link-blade__item-check {
float: right; }
.link-blade__item-icon {
float: right; }
.link-blade__item-details {
margin-right: 108px;
margin-left: 0; }
.link-blade__relationship-type {
float: right;
padding-right: 20px;
padding-left: 0; }
.assign-search {
padding: 0 40px 0 0;
background-position: right 10px top 50%; }
.assign-filter_right-most ul.dropdown-menu {
left: 0;
right: auto; }
.profile__support-panel .rs {
overflow-x: hidden; }
.resource-preview__container .ticket__header {
padding-left: 200px;
padding-right: inherit; }
.resource-preview-opened .profile__support-panel, .resource-preview-opened .smart-recorder__support-panel {
margin-right: -790px;
margin-left: 0;
float: right; }
.resource-preview {
padding-left: 50px;
padding-right: 0;
right: 100%;
left: inherit;
border-left: 0;
border-right: 1px solid #d9d9d9; }
.sla-icon {
margin-right: -12px; }
.rs-group-list-item__icon_action + .rs-group-list-item__icon, .rs-group-list-item__icon_action + .rs-group-list-item__icon_outage {
padding-left: 0;
padding-right: 15px; }
.item-input__delete-btn {
left: 4px;
right: auto; }
.action-blade__ticket-template-preview, .action-blade__incident-template-preview,
.action-blade__workorder-template-preview, .action-blade__task-template-preview {
left: inherit;
right: 50%; }
/** Start : Activity Note **/
.timeline-widget__add-note-input {
padding-right: 10px;
padding-left: 0; }
.timeline-item__main-content {
margin-right: 70px;
margin-left: 0; }
.timeline-item__headline {
padding: 5px 0 5px 30px; }
.feed-item__public {
left: 15px;
right: inherit; }
.timeline-item__message {
padding-left: 30px;
padding-right: 0; }
.timeline-note__container {
text-align: right; }
.timeline-note__placeholder {
right: 1px;
left: auto; }
.timeline-note__type {
float: left; }
.timeline-note__access {
float: right;
padding-right: 0px; }
.timeline-note__controls-container {
float: right; }
.timeline-note__btn-container {
float: left; }
.timeline-note_control, .timeline-note_control_disabled {
float: right; }
.timeline-note__type-selector .dropdown-menu {
left: -8px;
right: auto; }
.feed-item__response-content, .feed-item__response-date-time {
margin-right: 40px;
margin-left: 0; }
.timeline-widget__menu .dropdown-menu, .timeline-widget__menu_filters-applied .dropdown-menu {
right: auto;
left: -1px;
text-align: right; }
.timeline-widget__menu .dropdown-menu .dropdown-item_selected[role="menuitemcheckbox"]::before, .timeline-widget__menu_filters-applied .dropdown-menu .dropdown-item_selected[role="menuitemcheckbox"]::before {
margin-right: 0; }
/** End : Activity Note **/
/** End : Ticket Profile - Common Modules **/
.tc-metric__stats-bar {
margin-left: 0;
margin-right: 635px; }
.mobile .tc-metric__stats-bar {
margin-left: auto;
margin-right: 0px; }
.tc-metric__main-bar {
padding: 0 20px 0 0; }
.mobile .tc-metric__main-bar {
padding: 0 8px 0 0; }
.tc-metric__item_my, .tc-metric__item_critical, .tc-metric__item_new, .tc-metric__item_open, .tc-metric__item_all, .tc-metric__item_needsAttention {
border-left: none;
border-right: 1px solid #d9d9d9; }
.tc__user-filter {
padding: 0 20px 0 0; }
.tc__user-filter .dropdown-input .user-preset-name {
float: right; }
.tc__user-filter .dropdown-input .preset-actions {
float: left; }
.mobile .tc__user-filter .dropdown-menu {
left: 0;
right: auto; }
.tc-refresh-console, .tc-metric__main-bar, .tc__page-name, .tc-header__main-bar, .tc__filter-toggle, .tc__selected-filters {
float: right; }
.mobile .tc-refresh-console {
float: left; }
.tc__filter-actions {
float: left;
padding-left: 0; }
.tc__filter-toggle > button {
padding: 0 20px 0 10px; }
.tc-filter-custom-typeahead__additional-info {
text-align: left; }
.dropdown-item__header_accordion, .dropdown-item__header_expanded, .dropdown-item__header_collapsed {
background-position: left 10px center; }
.tc__filter-toggle .tc-filter-option .dropdown-menu, .tc__filter-toggle .tc-filter-option_selected .dropdown-menu {
top: 38px !important; }
.tc__filter-toggle .tc-filter-option .dropdown-item_range-bar .dropdown-item_filter-warning > i, .tc__filter-toggle .tc-filter-option_selected .dropdown-item_range-bar .dropdown-item_filter-warning > i {
float: right;
margin-top: 5px;
padding: 0 0 0 10px; }
.tc__filter-toggle .tc-filter-option .dropdown-item_range-bar .range-template > input, .tc__filter-toggle .tc-filter-option_selected .dropdown-item_range-bar .range-template > input {
margin: 0 0 0 10px; }
.tc__filter-toggle .tc-filter-option .dropdown-item_range-bar .range-template .criteria-row .criteria-row__activate, .tc__filter-toggle .tc-filter-option_selected .dropdown-item_range-bar .range-template .criteria-row .criteria-row__activate {
float: right;
margin: -3px 0 0 5px; }
.tc__filter-toggle .tc-filter-option .dropdown-item_range-bar .range-template .criteria-row .criteria-row__title, .tc__filter-toggle .tc-filter-option .dropdown-item_range-bar .range-template .criteria-row .dropdown-input, .tc__filter-toggle .tc-filter-option_selected .dropdown-item_range-bar .range-template .criteria-row .criteria-row__title, .tc__filter-toggle .tc-filter-option_selected .dropdown-item_range-bar .range-template .criteria-row .dropdown-input {
float: right;
margin: 0 0 0 10px; }
.tc__filter-toggle .tc-filter-option .dropdown-item_range-bar .range-template .criteria-row .criteria-row__input-container .dropdown-menu, .tc__filter-toggle .tc-filter-option_selected .dropdown-item_range-bar .range-template .criteria-row .criteria-row__input-container .dropdown-menu {
left: 12px !important;
right: 170px; }
.tc__ribbon-bar {
padding-right: 16px;
padding-left: 0; }
.tc_selected-items-counter {
float: left;
margin-right: 0; }
.tag_removable {
padding: 0 10px 0 2px;
margin: 0 0 0 10px; }
.tag {
margin: 0 0 0 10px; }
.dropdown-item__connected-value {
left: 35px;
right: inherit; }
.dropdown-item_dual-line .dropdown-item__connected-value {
left: auto;
text-align: right !important; }
.category-editor-links__add-btn {
margin-right: 0px; }
.tag__remove {
margin: 0 12px 0 0;
unicode-bidi: embed; }
.tc-selected-filter__item-detail {
float: right; }
.tc-selected-filter__item_static {
margin: 0 0 10px 10px; }
.save-filter-preset .search__filter {
float: left;
margin-left: 0; }
.save-filter-preset .search__filter .search__filter-toggle {
padding: 0 0 0 5px; }
.save-filter-preset .search__filter .search__filter-dropdown.dropdown-menu {
left: 0 !important;
right: auto; }
.save-filter-preset__checkbox-label {
padding: 20px 0 0 10px; }
.save-filter-preset__checkbox {
margin-right: auto !important;
margin-left: 12px !important; }
.save-filter-preset__column-table .tc-selected-filter__item_static {
margin: 0; }
.save-filter-preset__column-table .tc-selected-filter__item_static .icon-dots {
margin-right: auto;
margin-left: 10px; }
.tc__accessible .tc__chunk-section .tc__row-count {
float: right;
padding: 5px 5px 5px 10px; }
/** column config blade styles */
.column-configurator__tip {
padding: 4px 18px 0 0; }
.column-configurator__filter-element .dropdown-item_selected[role="menuitemcheckbox"]::before, .column-configurator__filter-element .cng-wiz__documents_selection-item-selected[role="menuitemcheckbox"]::before {
margin: 0 0 0 5px; }
.column-configurator__filter-element .dropdown-menu .dropdown-item_selected[role="menuitemcheckbox"]::before, .column-configurator__filter-element .dropdown-menu .cng-wiz__documents_selection-item-selected[role="menuitemcheckbox"]::before {
margin: 0 0 0 5px; }
.column-configurator__column .tag__remove {
float: left; }
.column-configurator__column .icon-dots {
margin-right: 0;
margin-left: 10px; }
.header__navigation-bar_item, .navigation-bar__items-container, .header__logo, .navigation-bar__search, .history-menu, .chat-notifications, .header__user-name, .header__user-avatar, .history-header__type, .history-menu__no-history {
float: right; }
.header__user {
float: left; }
.header__app-name {
margin: -1px 0 0 20px; }
.navigation-bar__items-container {
margin-left: 0;
margin-right: 8px; }
.header__logo {
background-position: 15px; }
.header__app-name:after {
right: 350px; }
.navigation-bar__items-container .pull-left {
float: right !important; }
.header-search {
padding-left: 40px;
padding-right: 0px; }
.search__close {
left: 0px;
right: auto; }
.chat-notifications .dropdown-menu, .history-menu__btn-clear-history, .header__user-name .dropdown-menu {
right: auto;
left: 0 !important; }
.history-menu .dropdown-menu {
left: -0.5px !important;
right: auto; }
.chat-list__history-link {
padding: 0px 10px 0px 0px; }
.user-settings__group_item-text {
padding-left: 0px;
padding-right: 11px; }
.active-status:after {
float: left; }
.about__caption {
background: url("../img/bmc-logo-pos.png") no-repeat center left; }
.template-chooser-dropdown-item__title {
padding-right: 9px;
padding-left: 0px; }
/** create change styles */
.change-template__preview, .release-template__preview {
left: 0;
right: 610px;
border-left: none;
border-right: 1px solid #d9d9d9; }
.change-template__input-field, .release-template__input-field {
margin: 20px 20px 0 0; }
.change-template__input-field .dropdown-item_search, .release-template__input-field .dropdown-item_search {
padding-right: 0; }
.change-template__search .item-input__delete-btn, .create-change__content-scratch .item-input__delete-btn, .release-template__search .item-input__delete-btn {
right: -33px; }
.change-template__search-input, .release-template__search-input {
background-position: right 10px top 50%; }
.create-change__input-container .dropdown-menu {
right: 20px;
left: auto !important; }
.create-change__template-item .list-item_use, .create-release__template-item .list-item_use {
margin-right: 0;
margin-left: 10px; }
.create-change__template-item .template-item__information, .create-release__template-item .template-item__information {
right: 90px;
left: 5px; }
.create-change__timing-item {
float: right;
border-left: 1px solid #d9d9d9;
border-right: unset; }
.create-change__timing-item_first-col {
border-right: 1px solid #d9d9d9; }
.create-change__common-btn, .create-release__common-btn {
margin-left: 10px;
margin-right: 0; }
.create-change__action-panel .pull-right > h1, .create-change__action-panel .pull-right > h5, .create-change__action-panel .pull-right .icon-question_circle, .create-change__action-panel .pull-right > button {
float: right; }
.create-change__action-panel .pull-right > h1, .create-change__action-panel .pull-right > h5, .create-change__action-panel .pull-right .icon-question_circle {
margin-left: 10px;
margin-right: 0; }
.create-change__action-panel .pull-right .icon-question_circle {
margin-top: 32px; }
.create-change__action-panel .pull-right > button {
margin-top: 20px; }
.create-change__content_scroll {
padding-right: 0;
padding-left: 30px; }
.create-change__wizard-page-title, .create-release__wizard-page-title {
float: right; }
.create-change-wizard__tab-content, .create-release-wizard__tab-content {
left: 0;
right: 125px; }
.create-change-wizard__tab, .create-release-wizard__tab {
border-left: 1px solid #d9d9d9; }
.create-change-wizard__requestedFor .item-input__delete-btn, .create-change-wizard__requestedFor .create-change-wizard__impacted-area_delete-btn, .create-change-wizard__requestedFor .loading-spinner {
right: auto;
left: 25px; }
.create-change-wizard__requestedFor .dropdown-menu {
left: auto;
right: 15px; }
.create-change-wizard__assignment-header {
right: auto;
left: 0; }
.create-change-wizard__assignment-header .create-change-wizard__assignment-header-item {
float: right; }
.create-change-wizard__assignment-header .create-change-wizard__assignment-header-item .ticket-assignee__info .ticket__field-value {
white-space: nowrap; }
.create-change__type-selector:last-of-type, .create-release__type-selector:last-of-type {
border-left: 1px solid #d9d9d9; }
.create-change-wizard__dates-rationale-label span {
padding-right: 10px;
padding-left: 0; }
.ci-search__header {
padding-left: 0;
padding-right: 15px; }
.ci-search-section__count {
text-align: left; }
.ci-search-section__count h1 {
padding: 15px 0px 0px 15px; }
.ci-search-section__count h3 {
padding: 5px 0px 0px 15px; }
.ci-search-section__count > button {
padding: 0 0 0 5px; }
.ci-search-section__count > button span {
padding-left: 0;
font-size: 13px; }
.ci-search-section .search_bar {
float: right;
margin: 0px 15px 0px 0px; }
.ci-search-section .search_bar .search__filter-dropdown {
right: 0; }
.ci-search-section__action-panel {
margin: 25px 10px 0 0; }
.ci-search-section__add_query {
margin: 10px 20px 0 0; }
.ci-search-section__save_presets {
text-align: left;
float: left;
margin-left: 10px;
margin-right: 0; }
.ci-search-section__summary .tag-section, .ci-search-section__summary .tag-section_top-separated {
left: -140%;
right: auto; }
.ci-search-section__relate_unrelate_section {
float: right; }
.ci-search-section__relate_unrelate_section .ci-search-section__action {
float: right; }
.ci-search-section__relate_unrelate_section .ci-search-section__action .dropdown-input__button, .ci-search-section__relate_unrelate_section .ci-search-section__action .person-select-type {
margin-right: 0;
margin-left: 15px;
padding: 0 25px 0 12px; }
.ci-search-section__relate_unrelate_section .ci-search-section__relate_btn {
margin-right: 15px; }
.ci-search-section__relate_unrelate_section .ci-search-section__unrelate_btn {
margin-right: 10px;
margin-left: 0; }
.ci-search-section__results {
padding-left: 0;
padding-right: 120px; }
.ci-search-section_save_preset_action_blade_body {
right: 40px; }
.ci-search-section_save_preset_action_blade_body .ci-search-section_filter-item {
float: right;
margin-right: 0;
margin-left: 10px; }
.ci-search-section_save_preset_action_blade_body .ci-search-section_filter-item .ci-search-section_filter-title {
padding: 0 10px 0 40px; }
.search__filter-dropdown .search-filter__option .dropdown-item_range-bar .dropdown-item_filter-warning > i {
float: right;
margin-top: 5px;
padding: 0 0 0 10px; }
.search__filter-dropdown .search-filter__option .dropdown-item_range-bar .range-template > input {
margin: 0 0 0 10px; }
.search__filter-dropdown .search-filter__option .dropdown-item_range-bar .range-template .criteria-row .criteria-row__activate {
float: right;
margin: -3px 0 0 5px; }
.search__filter-dropdown .search-filter__option .dropdown-item_range-bar .range-template .criteria-row .criteria-row__title, .search__filter-dropdown .search-filter__option .dropdown-item_range-bar .range-template .criteria-row .dropdown-input {
float: right;
margin: 0 0 0 10px; }
.search__filter-dropdown .search-filter__option .dropdown-item_range-bar .range-template .criteria-row .criteria-row__input-container .dropdown-menu {
left: 12px !important;
right: 170px; }
.create-change-wizard__risk_mode {
border-right: none;
border-left: 1px solid #d9d9d9; }
.create-change-wizard__risk_mode .col-xs-12, .create-change-wizard__risk_selection .col-xs-12 {
padding-left: 15px;
padding-right: 30px; }
.create-change-wizard__date-icon, .create-change-wizard__time-icon {
left: auto;
right: 163px; }
.create-change-wizard__higher_risk, .create-change-wizard__lower_risk {
padding-left: 0;
padding-right: 40px; }
.create-change-wizard__dates-content .dates-column {
right: 0;
left: auto;
border-right: none;
border-left: 1px solid #d9d9d9; }
.create-change-wizard__date, .create-change-wizard__time {
padding-right: 0;
padding-left: 12px; }
.custom-field__time .dropdown-menu, .custom-field__time_single .dropdown-menu,
.create-change-wizard__time .dropdown-menu, .srd-question__time .dropdown-menu {
direction: ltr; }
.custom-field__time .dropdown-menu > table, .custom-field__time_single .dropdown-menu > table,
.create-change-wizard__time .dropdown-menu > table, .srd-question__time .dropdown-menu > table {
float: right; }
.create-change-wizard__calendar_container {
left: 0;
right: 496px; }
.create-change-wizard__calendar_container_expanded {
right: 0; }
.create-change-wizard__calendar .view-selector-list {
margin-left: 0;
margin-right: 15px; }
.create-change-wizard__calendar .weekend-zoom-column {
text-align: left; }
.create-change-wizard__calendar .weekend-zoom-column .button-list {
float: left; }
.create-change-wizard__calendar main div[ui-view] {
direction: ltr; }
.cng-wiz__documents {
border-right: none; }
.cng-wiz__documents_selection-list-control button {
left: 0;
right: auto; }
.cng-wiz__documents-panel {
float: right;
border-right: none;
border-left: 1px solid #d9d9d9; }
.cng-wiz__documents_side-info {
left: 0;
right: auto; }
.cng-wiz__documents_selection-item[role="menuitemcheckbox"]::before {
margin-right: 0;
margin-left: 5px; }
.ci-search-section__results .ngCell:last-of-type {
min-width: 25px !important;
width: 25px !important; }
.ci-search-section__results .ngCell {
height: 40px !important; }
/** end create change styles */
/** create tix form styles */
.ticket-template__browse-btn {
margin-left: 0;
margin-right: 20px; }
.create-ticket__date .custom-field__date, .create-ticket__date .create-change-wizard__date {
margin-right: 0;
margin-left: 10px; }
.custom-field__date.col-sm-6 {
width: 130px; }
.custom-field__date_time_container .custom-field__date, .custom-field__date_time_container .create-change-wizard__date {
margin-right: 0; }
.custom-field__date + .custom-field__time, .custom-field__date + .custom-field__time_single, .custom-field__date + .custom-field__date_single, .custom-field__date + .create-change-wizard__time, .create-change-wizard__date + .custom-field__time, .create-change-wizard__date + .custom-field__time_single, .create-change-wizard__date + .custom-field__date_single, .create-change-wizard__date + .create-change-wizard__time {
margin-left: 0;
margin-right: 14px; }
.ticket-template__assignment-btn {
margin-left: -8px;
margin-right: 10px; }
.create-change-wizard__impacted-area_delete-btn {
right: auto;
left: 3px; }
.create-outage__asset-text {
margin-left: 0;
margin-right: 10px; }
.create-outage__form_valid, .create-outage__form_invalid {
right: 20px;
left: auto; }
.person-item__select-type {
left: 35px;
right: auto; }
.ticket-new-incident-assignee__action, .ticket-template__assign-btn {
margin-left: 0;
margin-right: 20px; }
.ticket__name-link {
margin-right: 0;
margin-left: 10px; }
/** end create tix form styles */
/** create knowledge styles */
.create-ka__action-panel {
padding-left: 20px; }
.create-ka__set-default-template {
padding-right: 0;
padding-left: 30px; }
.create-ka-template__back-button {
padding-right: 0; }
.create-ka-template__back-button i {
-moz-transform: scale(1, 1);
-webkit-transform: scale(1, 1);
-o-transform: scale(1, 1);
-ms-transform: scale(1, 1);
transform: scale(1, 1);
margin-right: 0;
margin-left: 4px; }
.create-ka-template__style {
left: auto;
right: -5px; }
.create-ka-edit__main-content {
float: right; }
.ka-metadata__panel {
right: auto;
left: 0; }
.create-ka-edit__template .small-btn_secondary, .create-ka-edit__template .ka-metadata-specific-section__button, .create-ka-edit__template .ka-metadata__assignment-btn, .create-ka-edit__template .create-ka-similar__merge-btn {
left: 0;
right: auto; }
.create-ka-edit__editor .label__text, .create-ka-edit__editor .label__text_required {
padding-right: 15px; }
.ka-ckeditor__content {
padding-left: 0;
padding-right: 15px; }
.create-ka-action-panel__version-text {
margin-left: 20px; }
.modal-ka-finder__text .item-input__delete-btn {
left: 20px;
right: inherit; }
.ka-metadata__header {
padding: 20px 15px 0 0; }
.ka-metadata__assignment {
padding-right: 0;
padding-left: 26px; }
.ka-metadata__section .fd-selector__fd-field .icon-cross {
left: 7px; }
/** end create knowledge styles */
/** category editor styles */
.category-editor__display, .category-widget__category-editor {
padding-left: 40px;
padding-right: 12px; }
.select-custom-dropdown__spinner-container {
left: 10px;
right: auto; }
/** end category editor styles */
/** launch asset actions blade styles */
.ac-launch-actions {
float: right;
margin: 10px 5px 0 13px; }
.ac-launch-actions .profile-action-bar__item .dropdown-menu {
left: auto;
right: 0; }
.link-blade__item {
padding: 20px 0px 14px 20px; }
.link-blade__relationship-type {
padding-left: 0;
padding-right: 20px; }
.link-blade__relationship-type .dropdown-input {
margin-left: 0;
margin-right: 20px; }
.add-people__role-dropdown {
margin-left: 0;
margin-right: 15px; }
.action-blade__tab-content .dropdown-menu {
left: auto !important;
right: auto !important; }
/** launch asset actions blade styles end */
/** Start : CI Explorer list */
.asset__ci-explorer header > div {
float: left; }
.asset__ci-explorer header .text-right {
text-align: left; }
.asset__ci-explorer header .close-btn, .asset__ci-explorer header .graphical-simulator__icon-guide {
margin-left: 0;
margin-right: 10px; }
.asset__ci-explorer .main .relationship-types-filter {
float: right; }
.asset__ci-explorer .main .graphical-ci .toolbar .starting-asset {
float: right; }
.asset__ci-explorer .main .graphical-ci .toolbar .starting-asset h4 .asset-label {
float: right; }
.asset__ci-explorer .main .graphical-ci .toolbar .starting-asset h4 .asset-name button {
padding-left: 0;
padding-right: 10px; }
.asset__ci-explorer .main .graphical-ci .toolbar .pan-actions {
float: left; }
.asset__ci-explorer .main .list-ci-container .content .list-ci .list .list-item .list-field.left-field {
float: right; }
.asset__ci-explorer .main .list-ci-container .content .list-ci .list .list-item .list-field.right-field {
float: left; }
.asset__ci-explorer .main .list-ci-container .content .list-ci .list .list-item .list-field.asset-name button {
text-align: right; }
.asset__ci-explorer .main .list-ci-container .toolbar .tag-section.pull-left {
float: right !important; }
.graphical-simulator__icon-guide + .popover {
left: 10px !important;
right: auto; }
.graphical-simulator__icon-guide + .popover .arrow {
right: 77%;
left: auto; }
/** End : CI Explorer list */
/** chat and email styles */
.chat-window, .chat-popup-window, .email-window {
left: 0;
right: auto; }
.chat__controls {
direction: ltr; }
.chat__controls, .email__controls {
text-align: left; }
.chat__search-bar_input, .chat-history__search-input {
padding-left: 0;
padding-right: 40px;
background-position: right 10px center; }
.chat__search-bar_search-spinner {
left: -90%; }
.chat__search-result-set-header {
padding-left: 0;
padding-right: 15px; }
.chat__search-result_icon {
padding: 15px 10px 15px 20px; }
.chat__search-result_display-id {
float: right;
padding-right: 0;
padding-left: 5px; }
.chat__remove-connection {
float: left; }
.chat__parent-link {
padding-left: 0;
padding-right: 5px; }
.chat__body-conversation .icon-speaker ~ span {
unicode-bidi: embed; }
.chat__search-result_user-details, .chat__search-result_user-phone, .chat__search-result_user-email {
padding-left: 0;
padding-right: 10px; }
.chat-history__search, .chat-history__conversation-details {
float: right; }
.email__recipient-title {
padding-left: 0;
padding-right: 10px; }
.email__recipient-list {
padding: 0 0 0 10px; }
.email__subject-text {
padding: 0 40px 0 20px; }
.email__footer-help {
float: left; }
.email__footer-help > i {
padding-right: 0;
padding-left: 10px; }
.email__attachment-icon {
padding-left: 0;
padding-right: 10px; }
.email__attachment-icon-small {
right: 5px;
left: auto; }
.email__attachment_dismiss {
left: 5px;
right: auto; }
.popout-window-alert-modal .modal-footer {
padding: 10px 0 0 15px; }
.email-accelerators__popup-item-expression {
float: right; }
.email-accelerators__popup-item-desc {
float: left; }
/** chat and email styles end */
/** knowledge dashboard styles */
.knowledge-team .knowledge-team__header .knowledge-team__header-title {
float: right; }
.knowledge-team .knowledge-team__header .knowledge-team__manage-team {
float: left; }
.knowledge-team .knowledge-team__header .knowledge-team__manage-team .icon-gear {
margin-right: 0px;
margin-left: 2px; }
.knowledge-team .knowledge-team__left-panel {
float: right; }
.knowledge-team .knowledge-team__right-panel {
border-left: none;
border-right: 1px solid #d9d9d9; }
.knowledge-team .knowledge-team__right-panel .navigation-item .item-content {
right: 60px;
left: 50px; }
.knowledge-team .knowledge-team__right-panel .navigation-item .ka-config__list-item-pointer {
left: 10px;
right: auto; }
.knowledge-team .knowledge-team__tile-grid .knowledge-team__person-card .person-card__content {
margin-left: 0;
margin-right: 10px; }
.knowledge-team__manage-panel .assign-list__user-pic {
width: 60px !important; }
.knowledge-team__manage-panel .kt-modal-body .knowledge-team__select-company {
padding-left: 12px;
padding-right: 0; }
.knowledge-team__manage-panel .kt-modal-body .knowledge-team__search-bar .smart-recorder__popup-item-col1 {
margin: 0 60px 0 0; }
.knowledge-team__manage-panel .kt-modal-body .knowledge-team__search-bar input.assign-search {
padding: 0 40px 0 12px; }
/** knowledge dashboard styles end */
/** KCS perform assessment styles */
.kcs-assessment__questions-container .question-list__item .answer_btn_yes {
border-top-left-radius: 0 !important;
border-bottom-left-radius: 0 !important;
border-top-right-radius: 7px !important;
border-bottom-right-radius: 7px !important; }
.kcs-assessment__questions-container .question-list__item .answer_btn_no {
border-top-right-radius: 0 !important;
border-bottom-right-radius: 0 !important;
border-top-left-radius: 7px !important;
border-bottom-left-radius: 7px !important; }
.kcs-assessment__questions-container .question-list__item .action_btn {
float: left;
border-top-left-radius: 0 !important;
border-bottom-left-radius: 0 !important; }
.kcs-assessment__button-container {
float: left; }
.kcs-assessment__button-container button {
margin-left: 0;
margin-right: 10px; }
.srd-question_draft .srd-question_date-div, .srd-question_draft .srd-question_time-div {
width: 30%; }
/** KCS perform assessment styles end */
.sla-reach-time {
margin-right: 10px;
margin-left: 0; }
.action-blade-narrow .modal-dialog {
right: auto;
left: 0; }
.input-counter__increase,
.input-counter__decrease {
right: auto;
left: 1px; }
.input-counter__input {
padding: 0; }
.ticket-category-section__service-type {
padding-right: 0; }
.profile-relation__item-task-details {
margin-right: 85px;
margin-left: 0; }
.activity-controls {
left: 0;
right: auto; }
.ngSortButtonDown, .ngSortButtonUp {
left: 5px;
right: auto; }
#header_search .tooltip {
right: 10px !important; }
#header_search .tooltip-arrow {
right: 2%; }
#header_search button.dropdown-input__button {
border-radius: 0 2px 2px 0; }
#header_search .global-search-criteria_wrapper {
padding-left: 0;
padding-right: 10px; }
#header_search .global-search-input_wrapper {
padding-right: 0;
padding-left: 10px; }
.header-search__bar {
border-radius: 2px 0 0 2px; }
.tc__filter-toggle .filter-apply-cancel .filter-action-row .row-link-container {
float: left; }
.modal-extra-small-left {
width: 300px !important;
right: 0 !important; }
.action-blade-left.modal:not(.in) .modal-dialog {
-webkit-transform: translate3d(125%, 0, 0);
transform: translate3d(125%, 0, 0); }
a.console-config__side-menu-item {
text-align: right;
padding-right: 25px; }
.person-name__editor .dropdown-menu {
width: 550px; }
.person-name__editor .dropdown-menu .create-ticket__popup-item-col1 {
width: 250px; }
.live__agent_right_panel-footer {
text-align: left; }
.live__agent_right_panel-footer .btn_secondary {
margin-left: 0;
margin-right: 10px; }
.tc__quick-search {
float: right; }
.outage-edit__controls {
position: absolute;
top: auto;
right: auto;
bottom: auto;
left: 20px; }
.decision-tree_btn-group {
display: inline-block;
text-align: right;
direction: ltr;
font-size: 0; }
.decision-tree_btn-group button {
direction: rtl;
margin-left: 5px; }
.decision-tree_btn-group .decision-tree__reset-btn {
float: left; }
.srd-question__dropdown .srd-question-inputbox .dropdown-item_search-icon {
right: 12px;
left: auto; }
.srd-question__dropdown .srd-question-inputbox .dropdown-item_search {
padding-right: 30px; }
.ticket__customized-body .editable-content-section__controls .editable-content-section__control-bar {
float: left; }
.editable-content-section__form_invalid .icon-exclamation_triangle {
float: right;
margin-top: 6px; }
.ticket-summary__character-limit span {
float: left; }
.email-field i, .phone-field i {
float: right;
margin: 5px 0px 0px 7px; }
.timeline-widget__menu .dropdown-item_search {
padding-right: 0px; }
.profile-action-bar__item i {
-moz-transform: scale(-1, 1);
-webkit-transform: scale(-1, 1);
-o-transform: scale(-1, 1);
-ms-transform: scale(-1, 1);
transform: scale(-1, 1);
display: inline-block; }
.editable-content-section__content .status-bar__status {
float: right; }
.editable-content-section__content .status-bar__sla {
float: left; }
.ka-rating .icon-thumbs_up {
float: right; }
.ticket-template__input {
padding-right: 10px; }
.rs-group-list-item__ka-property_likes .icon-thumbs_up, .rs-group-list-item__ka-property_views .icon-eye, .rs-group-list-item__ka-property .icon-link {
float: right;
margin-top: 3px;
margin-left: 3px; }
.person-preview-service-summary__rating-section .person-service-summary__title {
float: right;
margin-right: 0;
margin-left: 7px; }
.email__controls_item.icon-pop_up {
float: left; }
.email__controls_item.icon-trash {
vertical-align: top; }
.email__subject-title {
float: right; }
.email__subject-text {
padding: 0 20px 0 40px; }
.email__recipient-input {
margin: 0 0 0 5px;
padding: 0 0 0 4px; }
.email-recipient__item-img,
.email-recipient__item-col1 {
float: right;
padding: 10px 10px 10px 0; }
.email-recipient__item-col2 > p {
float: left; }
.tooltip .tooltip-inner {
text-align: right; }
.release-plan__list-header {
float: right;
margin: 20px 20px 20px 0; }
.profile__relation .release-plan__list-header {
width: 65%; }
.profile__relation .release-plan__button-groups {
width: 32%; }
.release-plan__button-groups {
padding-right: 0;
padding-left: 5px; }
.resource-preview__container .title-bar__section {
padding-right: 28px;
padding-left: 200px; }
.link-blade__item-details_row {
display: table;
width: 100%; }
.link-blade__item-details_row > * {
display: table-cell; }
.link-blade__item-details_row *:nth-child(2n) {
text-align: left; }
.related-assets-list__filter {
text-align: right; }
.related-assets-list__filter .search__filter {
float: left; }
.impact-simulator__footer-actions .icon-triangle_up {
padding-left: 0;
padding-right: 10px; }
.ticket__field-value, .custom-field__value, .screen-configuration__refresh-button {
font-weight: bold; }
.section-tree__heading-text {
margin-right: 16px;
margin-left: 0px;
font-weight: bold; }
.screen-configuration__panel-item a, .screen-configuration__panel-head-item a {
font-weight: bold; }
.related-assets-list .ngHeaderCell:first-child .ngVerticalBar {
display: block !important; }
.sla-status-info {
display: inline-block; }
.screen-configuration__header-refresh-cache {
float: left; }
.custom-area-editor .custom-area__selector_title {
padding-left: 20px;
padding-right: 0; }
.custom-area-editor .custom-area__selector_title i[class*='icon'] {
left: 0;
right: auto;
top: 5px; }
.field-item__sealed {
right: 135px; }
.service-request__approvals-group-label {
padding-left: 0;
margin-right: 12px; }
.nested-dropdown > ul li {
text-align: right; }
.nested-dropdown > ul li.option-selected {
text-align: right; }
.ci-search-section__selected-count_arrow {
float: right; }
.ci-search-section__selected-count {
text-align: left; }
.bookview_event_collision, .monthview_event_collision {
direction: rtl; }
.calendarview_event_collision {
direction: rtl;
text-align: center; }
.create-change-wizard__dates-content .calendar-column [collision-count]:after {
margin-right: 5px;
position: relative;
top: 0px;
bottom: 3px; }
.qtip .qtip-content .popover .change-popover-title .display-id {
float: right; }
.qtip .qtip-content .popover .change-popover-title .full-details-link {
float: left;
text-align: left; }
.qtip .qtip-content .popover .popover-content {
direction: rtl; }
.qtip .qtip-content .popover .popover-content .col-xs-12:not(:first-of-type) {
margin-top: 10px; }
.qtip .qtip-content .popover .popover-content .ticket-information {
margin-bottom: 10px; }
.qtip .qtip-content .popover .popover-content .ticket-information .ticket__change-class {
margin-right: 0;
margin-left: 5px; }
.qtip .qtip-content .popover .popover-content .ticket-information .ticket__risk-level-badge {
margin-right: 5px; }
.qtip .qtip-content .popover .popover-content .label__text {
margin-bottom: 0; }
.qtip .qtip-content .popover .popover-content .ticket__assignment {
padding: 0;
border-top: none; }
.qtip .qtip-content .popover .popover-content .ticket__assignee {
white-space: nowrap;
padding-right: 0px; }
.qtip .qtip-content .popover .popover-content .ticket__assignee .col-xs-1 {
padding-left: 0px;
padding-right: 0px; }
.ticket-assignee__details {
padding-right: 0px;
padding-left: 0; }
.popover.bottom > .arrow::after {
margin-right: -10px;
margin-left: -10px; }
.calendarview_event_inner {
text-align: center;
display: inline-block;
padding-left: 2px; }
.bookview_event_float_inner, .bookview_event_inner, .monthview_event_inner {
text-align: center; }
.pull-left {
float: right !important; }
.chat-message__body__details {
padding-right: 30px;
margin: 15px 25px 15px 5px; }
.timeline-note__flag-label > span {
float: right; }
.timeline-note__flag-label > span > i {
float: right; }
.bmc-need-attention-modal .modal-header .icon-cross {
float: left; }
.bmc-need-attention-modal .modal-footer {
padding: 10px 0 0 15px; }
.dwp-cross-icon {
float: left;
font-size: 20px; }
.title-bar__display-id {
padding-left: 0;
padding-right: 0;
margin-right: 0;
margin-left: 15px; }
.title-bar__display-id-label {
padding-left: 0;
padding-right: 10px; }
.status-bar__section {
padding-left: 0;
padding-right: 30px; }
.status-bar__section .status-bar__status {
padding-right: 0;
padding-left: 15px; }
.layout-renderer__child-row {
padding-left: 0; }
.layout-renderer__parent-row {
margin-right: -12px;
margin-left: 0; }
.person-name .person-name__avatar,
.person-name .person-name__avatar_big {
margin-right: 0;
margin-left: 20px; }
.person-name .person-name__details {
margin-left: 10px;
margin-right: 0; }
.person-name .person-name__details .label_control-wrap,
.person-name .person-name__details .action-blade__assign-me {
margin-right: 0;
margin-left: 5px; }
.person-name .person-name__VIPCustomer {
right: inherit;
left: 20px; }
.title-bar__section {
padding: 20px 28px 5px 20px; }
.profile-relation__add-relation-button.dropdown .btn_no-fill,
.profile-relation__add-relation-button.dropdown .resource-preview__body-control-button,
.profile-relation__add-relation-button.dropdown .search-resource__option-button,
.profile-relation__add-relation-button.dropdown .search-resource__popout-button,
.profile-relation__add-relation-button.dropdown.open .btn_no-fill,
.profile-relation__add-relation-button.dropdown.open .resource-preview__body-control-button,
.profile-relation__add-relation-button.dropdown.open .search-resource__option-button,
.profile-relation__add-relation-button.dropdown.open .search-resource__popout-button {
margin-right: 0;
margin-left: 20px; }
.status-bar__label {
float: right;
padding-right: 0;
padding-left: 5px; }
.search__filter-toggle {
padding-left: 10px;
padding-right: 0; }
.resource-preview__body-control-button {
text-align: right; }
div.dropdown-input__button {
padding-right: 12px;
padding-left: 38px; }
.attachment__name,
.attachments-previewer__files-list_item-header,
.timeline-item-attachment__title,
.email__attachment {
direction: ltr; }
.person__agent-availability, .person__agent-network, .person__agent-organization {
float: right; }
.typeahead-input + .dropdown-menu > li > a, .typeahead-input + .tooltip + .dropdown-menu > li > a {
margin-left: 15px;
margin-right: 0; }
.menu-custom__dropdown + .dropdown-menu {
left: auto !important; }
.typeahead-loader {
right: auto;
left: 10px; }
.ticket-date__editor .custom-field__date input[type=text], .ticket-date__editor custom-field__time input[type=text] {
padding-right: 12px;
padding-left: 23px; }
.chart__perspective-container ul.dropdown-menu {
left: 0;
right: auto; }
.chart__perspective-container ul.dropdown-menu {
left: 0;
right: auto; }
.align-right {
text-align: right; }
.ticket-date__editor .custom-field__date input[type=text], .ticket-date__editor custom-field__time input[type=text] {
padding-right: 12px;
padding-left: 23px; }
.mobile .grid-mobile-asset__assignee-img {
margin-left: 5px;
margin-right: 0; }
.mobile .ka-profile .ka-header__version-selection {
margin-right: -20px; }
/*# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic21hcnQtaXQtcnRsLmNzcyIsInNvdXJjZXMiOlsic21hcnQtaXQtcnRsLnNjc3MiLCJib3VyYm9uL19ib3VyYm9uLnNjc3MiLCJib3VyYm9uL3NldHRpbmdzL19wcmVmaXhlci5zY3NzIiwiYm91cmJvbi9zZXR0aW5ncy9fcHgtdG8tZW0uc2NzcyIsImJvdXJib24vaGVscGVycy9fZ3JhZGllbnQtcG9zaXRpb25zLXBhcnNlci5zY3NzIiwiYm91cmJvbi9oZWxwZXJzL19saW5lYXItcG9zaXRpb25zLXBhcnNlci5zY3NzIiwiYm91cmJvbi9oZWxwZXJzL19yYWRpYWwtYXJnLXBhcnNlci5zY3NzIiwiYm91cmJvbi9oZWxwZXJzL19yYWRpYWwtcG9zaXRpb25zLXBhcnNlci5zY3NzIiwiYm91cmJvbi9oZWxwZXJzL19yZW5kZXItZ3JhZGllbnRzLnNjc3MiLCJib3VyYm9uL2hlbHBlcnMvX3NoYXBlLXNpemUtc3RyaXBwZXIuc2NzcyIsImJvdXJib24vZnVuY3Rpb25zL19mbGV4LWdyaWQuc2NzcyIsImJvdXJib24vZnVuY3Rpb25zL19ncmlkLXdpZHRoLnNjc3MiLCJib3VyYm9uL2Z1bmN0aW9ucy9fZ29sZGVuLXJhdGlvLnNjc3MiLCJib3VyYm9uL2Z1bmN0aW9ucy9fbGluZWFyLWdyYWRpZW50LnNjc3MiLCJib3VyYm9uL2Z1bmN0aW9ucy9fbW9kdWxhci1zY2FsZS5zY3NzIiwiYm91cmJvbi9mdW5jdGlvbnMvX3B4LXRvLWVtLnNjc3MiLCJib3VyYm9uL2Z1bmN0aW9ucy9fcmFkaWFsLWdyYWRpZW50LnNjc3MiLCJib3VyYm9uL2Z1bmN0aW9ucy9fc3RyaXAtdW5pdHMuc2NzcyIsImJvdXJib24vZnVuY3Rpb25zL190aW50LXNoYWRlLnNjc3MiLCJib3VyYm9uL2Z1bmN0aW9ucy9fdHJhbnNpdGlvbi1wcm9wZXJ0eS1uYW1lLnNjc3MiLCJib3VyYm9uL2NzczMvX2FuaW1hdGlvbi5zY3NzIiwiYm91cmJvbi9jc3MzL19hcHBlYXJhbmNlLnNjc3MiLCJib3VyYm9uL2NzczMvX2JhY2tmYWNlLXZpc2liaWxpdHkuc2NzcyIsImJvdXJib24vY3NzMy9fYmFja2dyb3VuZC5zY3NzIiwiYm91cmJvbi9jc3MzL19iYWNrZ3JvdW5kLWltYWdlLnNjc3MiLCJib3VyYm9uL2NzczMvX2JvcmRlci1pbWFnZS5zY3NzIiwiYm91cmJvbi9jc3MzL19ib3JkZXItcmFkaXVzLnNjc3MiLCJib3VyYm9uL2NzczMvX2JveC1zaXppbmcuc2NzcyIsImJvdXJib24vY3NzMy9fY2FsYy5zY3NzIiwiYm91cmJvbi9jc3MzL19jb2x1bW5zLnNjc3MiLCJib3VyYm9uL2NzczMvX2ZsZXgtYm94LnNjc3MiLCJib3VyYm9uL2NzczMvX2ZvbnQtZmFjZS5zY3NzIiwiYm91cmJvbi9jc3MzL19oeXBoZW5zLnNjc3MiLCJib3VyYm9uL2NzczMvX2hpZHBpLW1lZGlhLXF1ZXJ5LnNjc3MiLCJib3VyYm9uL2NzczMvX2ltYWdlLXJlbmRlcmluZy5zY3NzIiwiYm91cmJvbi9jc3MzL19pbmxpbmUtYmxvY2suc2NzcyIsImJvdXJib24vY3NzMy9fa2V5ZnJhbWVzLnNjc3MiLCJib3VyYm9uL2NzczMvX2xpbmVhci1ncmFkaWVudC5zY3NzIiwiYm91cmJvbi9jc3MzL19wZXJzcGVjdGl2ZS5zY3NzIiwiYm91cmJvbi9jc3MzL19yYWRpYWwtZ3JhZGllbnQuc2NzcyIsImJvdXJib24vY3NzMy9fdHJhbnNmb3JtLnNjc3MiLCJib3VyYm9uL2NzczMvX3RyYW5zaXRpb24uc2NzcyIsImJvdXJib24vY3NzMy9fdXNlci1zZWxlY3Quc2NzcyIsImJvdXJib24vY3NzMy9fcGxhY2Vob2xkZXIuc2NzcyIsImJvdXJib24vYWRkb25zL19idXR0b24uc2NzcyIsImJvdXJib24vYWRkb25zL19jbGVhcmZpeC5zY3NzIiwiYm91cmJvbi9hZGRvbnMvX2ZvbnQtZmFtaWx5LnNjc3MiLCJib3VyYm9uL2FkZG9ucy9faGlkZS10ZXh0LnNjc3MiLCJib3VyYm9uL2FkZG9ucy9faHRtbDUtaW5wdXQtdHlwZXMuc2NzcyIsImJvdXJib24vYWRkb25zL19wb3NpdGlvbi5zY3NzIiwiYm91cmJvbi9hZGRvbnMvX3ByZWZpeGVyLnNjc3MiLCJib3VyYm9uL2FkZG9ucy9fcmV0aW5hLWltYWdlLnNjc3MiLCJib3VyYm9uL2FkZG9ucy9fc2l6ZS5zY3NzIiwiYm91cmJvbi9hZGRvbnMvX3RpbWluZy1mdW5jdGlvbnMuc2NzcyIsImJvdXJib24vYWRkb25zL190cmlhbmdsZS5zY3NzIl0sInNvdXJjZXNDb250ZW50IjpbIkBpbXBvcnQgXCJib3VyYm9uL2JvdXJib25cIjtcblxuJGNvbG9yLWxpZ2h0LWdyZXk6ICNkOWQ5ZDk7XG4kZGVmYXVsdC1lbGVtZW50LWJvcmRlcjogMXB4IHNvbGlkICRjb2xvci1saWdodC1ncmV5O1xuJGRlZmF1bHQtaW5wdXQtcGFkZGluZzogMTJweDtcbiRyZXNvdXJjZS1wcmV2aWV3LXdpZHRoOiA3OTBweDtcbiRycy1pdGVtLWRlZmF1bHQtcGFkZGluZzogMTVweDtcblxuYm9keSB7XG4gIG92ZXJmbG93LXg6IGhpZGRlbjtcbn1cblxuLyoqIFN0YXJ0IDogQ29tbW9uIGNsYXNzZXMgKiovXG4ucHVsbC1yaWdodCB7XG4gIGZsb2F0OiBsZWZ0ICFpbXBvcnRhbnQ7XG59XG5cbi5uby1wYWRkaW5nLWxlZnQge1xuICBwYWRkaW5nLWxlZnQ6IDA7XG59XG5cbi5kcm9wZG93bi1pbnB1dF9fYnV0dG9uLCBpbnB1dC5jdXN0b20taW5wdXQsIGlucHV0LnR5cGVhaGVhZC1pbnB1dCwgaW5wdXRbdHlwZT1cInRleHRcIl0uZm9ybS1jb250cm9sLCBpbnB1dFt0eXBlPVwibnVtYmVyXCJdLmZvcm0tY29udHJvbCB7XG4gIHRleHQtYWxpZ246IHJpZ2h0O1xuICBwYWRkaW5nOiAwICRkZWZhdWx0LWlucHV0LXBhZGRpbmcgMCAyNXB4O1xufVxuXG5pbnB1dC5jdXN0b20taW5wdXRbdHlwZT1cIm51bWJlclwiXSB7XG4gIHBhZGRpbmc6IDAgJGRlZmF1bHQtaW5wdXQtcGFkZGluZyAwIDVweDtcbn1cblxuLnRpbWVwaWNrZXIsIC51aS1ib290c3RyYXBfX3RpbWVwaWNrZXIge1xuICBkaXJlY3Rpb246IGx0cjtcbiAgaW5wdXRbdHlwZT1cInRleHRcIl0uZm9ybS1jb250cm9sIHtcbiAgICBwYWRkaW5nOiAzcHggJGRlZmF1bHQtaW5wdXQtcGFkZGluZztcbiAgfVxufVxuXG4uZHJvcGRvd24taW5wdXRfX2J1dHRvbjphZnRlciB7XG4gIGxlZnQ6IDEwcHg7XG4gIHJpZ2h0OiBhdXRvO1xufVxuXG4uYWN0aW9uLWJsYWRlIC5tb2RhbC1kaWFsb2cge1xuICByaWdodDogYXV0bztcbiAgbGVmdDogMDtcbn1cblxuLmFjdGlvbi1ibGFkZV9fYXNzaWduLW1lIHtcbiAgcGFkZGluZy1sZWZ0OiAwO1xuICBwYWRkaW5nLXJpZ2h0OiAzMHB4O1xufVxuXG4uYWN0aW9uLWJsYWRlX19hdXRvLWFzc2lnbiAuYXV0by1hc3NpZ25fX3RleHQge1xuICBwYWRkaW5nLWxlZnQ6IDA7XG4gIHBhZGRpbmctcmlnaHQ6IDVweDtcbn1cblxuLmFjdGlvbi1ibGFkZV9fdGFiLWJhci1wYXJlbnQge1xuICBib3JkZXItbGVmdDogJGRlZmF1bHQtZWxlbWVudC1ib3JkZXI7XG4gIGJvcmRlci1yaWdodDogbm9uZTtcbn1cblxuLmFjdGlvbi1ibGFkZV9fdGFiLWJhciB7XG4gIGJvcmRlci1sZWZ0OiAkZGVmYXVsdC1lbGVtZW50LWJvcmRlcjtcbiAgYm9yZGVyLXJpZ2h0OiBub25lO1xufVxuXG4uYWN0aW9uLWJsYWRlX190YWItY29udGVudCB7XG4gIHJpZ2h0OiAxNTBweDtcbiAgbGVmdDogMDtcbn1cblxuLm1vZGFsLmZhZGU6bm90KC5pbikgLm1vZGFsLWRpYWxvZyB7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMjUlLCAwLCAwKTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMjUlLCAwLCAwKTtcbn1cblxuLm1vZGFsLWRldGFpbHNfX2NvbnRlbnQge1xuICBwYWRkaW5nOiAwIDgwcHggMjBweCAyNXB4O1xufVxuXG4ubW9kYWwtZGV0YWlsc19faWNvbiB7XG4gIHBhZGRpbmc6IDAgMjVweDtcbn1cblxuLmFjdGlvbi1ibGFkZV9fdGl0bGUge1xuICBwYWRkaW5nOiAwIDIwcHggMCAwO1xufVxuXG4uYWN0aW9uLWJsYWRlX19idXR0b24tY29udGFpbmVyLCAubGlua2VkLWl0ZW1fX2J1dHRvbi1jb250YWluZXIge1xuICBmbG9hdDogbGVmdDtcbn1cblxuLmFjdGlvbi1ibGFkZV9fYnV0dG9uLWNvbnRhaW5lciB7XG4gID4gaDEsID4gaDUge1xuICAgIGZsb2F0OiByaWdodDtcbiAgICBtYXJnaW4tbGVmdDogMTBweDtcbiAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gIH1cbn1cblxuLmJ0bi1jb250YWluZXIgYnV0dG9uICsgYnV0dG9uLCAuYWN0aW9uLWJsYWRlX19idXR0b24tY29udGFpbmVyIGJ1dHRvbiArIGJ1dHRvbiwgLmxpbmtlZC1pdGVtX19idXR0b24tY29udGFpbmVyIGJ1dHRvbiArIGJ1dHRvbiwgLnRpbWVsaW5lLW5vdGVfX2J0bi1jb250YWluZXIgYnV0dG9uICsgYnV0dG9uIHtcbiAgbWFyZ2luLWxlZnQ6IDA7XG4gIG1hcmdpbi1yaWdodDogMTBweDtcbn1cblxuLnN5c3RlbS1hbGVydF9fZGlzbWlzcyB7XG4gIGZsb2F0OiBsZWZ0O1xufVxuXG4uc3lzdGVtLWFsZXJ0X19pY29uIHtcbiAgZmxvYXQ6IHJpZ2h0O1xufVxuXG4uc3lzdGVtLWFsZXJ0X190ZXh0IHtcbiAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gIG1hcmdpbi1sZWZ0OiA1MHB4O1xuICBtYXJnaW4tcmlnaHQ6IDYwcHg7XG59XG5cbi5ibWMtc3lzdGVtLWFsZXJ0LW1vZGFsIC5tb2RhbC1mb290ZXIge1xuICBwYWRkaW5nOiAxMHB4IDAgMCAxNXB4O1xufVxuXG4uZmQtc2VsZWN0b3JfX2ZkLWZpZWxkIC5pY29uLWNyb3NzLCAuZmQtc2VsZWN0b3JfX2ZkLWZpZWxkIC5hc3NldC1pdGVtLXJlbmRlcmVyIC5pY29uLXRyYXNoLCAuYXNzZXQtaXRlbS1yZW5kZXJlciAuZmQtc2VsZWN0b3JfX2ZkLWZpZWxkIC5pY29uLXRyYXNoIHtcbiAgbGVmdDogMjBweDtcbiAgcmlnaHQ6IGF1dG87XG59XG5cbi5jcmVhdGUtdGlja2V0X19mb3JtX2ludmFsaWQsIC50aWNrZXQtZGF0ZV9fZm9ybV9pbnZhbGlkLCAudGlja2V0LXJpc2tzX19mb3JtX2ludmFsaWQsIC5jcmVhdGUtb3V0YWdlX19mb3JtX2ludmFsaWQsIC51cGRhdGUtb3V0YWdlX19mb3JtX2ludmFsaWQge1xuICAuaWNvbi1leGNsYW1hdGlvbl90cmlhbmdsZSB7XG4gICAgcGFkZGluZy1yaWdodDogMDtcbiAgICBwYWRkaW5nLWxlZnQ6IDEwcHg7XG4gIH1cblxuICBzcGFuIHtcbiAgICB1bmljb2RlLWJpZGk6IGVtYmVkO1xuICB9XG59XG5cbi5jcmVhdGUtdGlja2V0X19hY3Rpb24tYnRuICsgLmFjdGlvbi1wYW5lbF9fY2FuY2VsLWJ0biB7XG4gIG1hcmdpbi1sZWZ0OiAwO1xuICBtYXJnaW4tcmlnaHQ6IDE1cHg7XG59XG5cbi5jdXN0b20tZmllbGRfX2RhdGUsIC5jcmVhdGUtY2hhbmdlLXdpemFyZF9fZGF0ZSxcbi5jdXN0b20tZmllbGRfX3RpbWUsIC5jdXN0b20tZmllbGRfX3RpbWVfc2luZ2xlLFxuLmRyb3Bkb3duLWl0ZW1fZGF0ZS1yYW5nZSxcbi5jdXN0b20tZmllbGRfX2RhdGVfc2luZ2xlLCAuY3JlYXRlLWNoYW5nZS13aXphcmRfX3RpbWUge1xuICAuZm9ybS1jb250cm9sIHtcbiAgICB0ZXh0LWFsaWduOiByaWdodDtcbiAgfVxuXG4gIC5jdXN0b20tZmllbGRfX2RhdGUtaWNvbiwgLmFzc2V0LWRldGFpbHNfX2RhdGUtaWNvbiwgLmN1c3RvbS1maWVsZF9fdGltZS1pY29uIHtcbiAgICBsZWZ0OiA1cHg7XG4gIH1cblxuICAuZHJvcGRvd24tbWVudSB7XG4gICAgbGVmdDogYXV0byAhaW1wb3J0YW50O1xuXG4gICAgLmdseXBoaWNvbi1jaGV2cm9uLWxlZnQ6OmJlZm9yZSB7XG4gICAgICBjb250ZW50OiBcIlxcZTA4MFwiO1xuICAgIH1cblxuICAgIC5nbHlwaGljb24tY2hldnJvbi1yaWdodDo6YmVmb3JlIHtcbiAgICAgIGNvbnRlbnQ6IFwiXFxlMDc5XCI7XG4gICAgfVxuICB9XG59XG4uYXNzZXQtcG9pbnQge1xuICAuY3VzdG9tLWZpZWxkX19kYXRlIHtcbiAgICAuY3VzdG9tLWZpZWxkX19kYXRlLWljb24ge1xuICAgICAgbGVmdDogNXB4O1xuICAgIH1cbiAgfVxuICAuY3VzdG9tLWZpZWxkX190aW1lIHtcbiAgICAuY3VzdG9tLWZpZWxkX190aW1lLWljb24ge1xuICAgICAgbGVmdDogNXB4O1xuICAgIH1cbiAgfVxufVxuXG4ucmVsZWFzZS1wb2ludCB7XG4gIC5jdXN0b20tZmllbGRfX2RhdGUge1xuICAgIC5jcmVhdGUtcmVsZWFzZS13aXphcmRfX2RhdGUtaWNvbiB7XG4gICAgICBsZWZ0OiA4cHg7XG4gICAgICByaWdodDogaW5oZXJpdDtcbiAgICB9XG4gIH1cbiAgLmN1c3RvbS1maWVsZF9fdGltZSB7XG4gICAgLmNyZWF0ZS1yZWxlYXNlLXdpemFyZF9fdGltZS1pY29uIHtcbiAgICAgIGxlZnQ6IDhweDtcbiAgICAgIHJpZ2h0OiBpbmhlcml0O1xuICAgIH1cbiAgfVxuICAuY3VzdG9tLWZpZWxkX19kYXRlICsgLmN1c3RvbS1maWVsZF9fdGltZSB7XG4gICAgbWFyZ2luLXJpZ2h0OiAwcHg7XG4gICAgbWFyZ2luLWxlZnQ6IGluaGVyaXQ7XG4gIH1cbn1cblxuLmNyZWF0ZS1yZWxlYXNlLXdpemFyZF9fZGF0ZS1pY29uLCAuY3JlYXRlLXJlbGVhc2Utd2l6YXJkX190aW1lLWljb24ge1xuICBsZWZ0OiA4cHg7XG4gIHJpZ2h0OiBpbmhlcml0O1xufVxuXG4uY3JlYXRlLXJlbGVhc2Utd2l6YXJkX19yaXNrX21vZGUge1xuICBib3JkZXItbGVmdDogJGRlZmF1bHQtZWxlbWVudC1ib3JkZXI7XG59XG5cbi5yZWxlYXNlLXBsYW4taXRlbV9fbWlsZXN0b25lLWRyb3Bkb3duIHtcbiAgcGFkZGluZy1yaWdodDogMDtcbiAgcGFkZGluZy1sZWZ0OiAyMHB4O1xuICAuZHJvcGRvd24tbWVudSB7XG4gICAgcmlnaHQ6IDA7XG4gIH1cbiAgLmNoYXJ0X19ncm91cC1sYWJlbCB7XG4gICAgcGFkZGluZy1yaWdodDogMDtcbiAgICBwYWRkaW5nLWxlZnQ6IDVweDtcbiAgfVxufVxuXG4ucmVsZWFzZS1wbGFuX19taWxlc3RvbmUtZmlsdGVyIHtcbiAgZmxvYXQ6IGxlZnQ7XG4gIHJpZ2h0OiAwO1xuICBsZWZ0OiAxNXB4O1xuICAuZHJvcGRvd24tbWVudSB7XG4gICAgbGVmdDogMDtcbiAgICByaWdodDogYXV0bztcbiAgfVxufVxuXG4ucmVsZWFzZS1wbGFuX19zZXF1ZW5jZS1zYXZlLWJ1dHRvbnMge1xuICBmbG9hdDogbGVmdDtcbiAgbWFyZ2luLWxlZnQ6IDE1cHg7XG4gIG1hcmdpbi1yaWdodDogMDtcbn1cblxuLnJlbGVhc2UtcGxhbl9fYnV0dG9uLWdyb3VwcyB7XG4gIGZsb2F0OiBsZWZ0O1xufVxuXG4udGlja2V0LXRlbXBsYXRlX19zZWFyY2gtc2VjdGlvbiB7XG4gIC5zZWFyY2gtaW5wdXQge1xuICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICBwYWRkaW5nLXJpZ2h0OiAzNXB4O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IHJpZ2h0IDEwcHggdG9wIDUwJTtcbiAgfVxufVxuXG4uc2NyZWVuLWNvbmZpZ3VyYXRpb25fX2hlYWRlci10aXRsZSwgLmNyZWF0ZS10aWNrZXRfX2hlYWRlci10aXRsZSwgLmNyZWF0ZS1rYV9fcGFnZS10aXRsZSwgLmNyZWF0ZS1hcWlfX3BhZ2UtdGl0bGUsIC5jcmVhdGUtY2hhbmdlX19wYWdlLXRpdGxlLCAuY3JlYXRlLXJlbGVhc2VfX3BhZ2UtdGl0bGUge1xuICBtYXJnaW4tcmlnaHQ6IDA7XG4gIG1hcmdpbi1sZWZ0OiA0MHB4O1xufVxuXG4uc2VhcmNoLXJlc291cmNlX19jcmVhdGUtYmFjay1idXR0b24sIC5rY3MtYXNzZXNzbWVudF9fYmFjay1idXR0b24ge1xuICBtYXJnaW4tbGVmdDogMTBweDtcbiAgbWFyZ2luLXJpZ2h0OiAwO1xuXG4gIC5idG5fX2ljb24tbGVmdCB7XG4gICAgdHJhbnNmb3JtOiBzY2FsZVgoLTEpO1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgfVxufVxuXG4uc21hbGwtYnRuX3NlY29uZGFyeSB7XG4gIC5idG5fX2ljb24tbGVmdCB7XG4gICAgcGFkZGluZy1yaWdodDogMDtcbiAgICBwYWRkaW5nLWxlZnQ6IDEwcHg7XG4gIH1cbn1cblxuLnNlYXJjaC1yZXNvdXJjZV9fc2VhcmNoLWlucHV0IHtcbiAgcGFkZGluZzogMCA0MHB4IDAgMDtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogOTclIDUwJTtcbn1cblxuLnJzLWdyb3VwX19maWx0ZXIge1xuICBmbG9hdDogbGVmdDtcbn1cblxuLnByb2dyZXNzLW1vZGFsIC50ZXh0LWNvbnRlbnQge1xuICB0ZXh0LWFsaWduOiByaWdodDtcbn1cbi8qKiBFbmQgOiBDb21tb24gY2xhc3NlcyAqKi9cblxuLy8tLSBvdmVycmlkZSBsb2dpbiBzdHlsZXMgLS0vL1xuLmxvZ2luLWZvcm1fX2xvZ28tYm1jIHtcbiAgd2lkdGg6IDcxcHg7XG4gIG1hcmdpbi1yaWdodDogLTVweDtcbn1cblxuLmxvZ2luLWZvcm1fX2xhYmVsX3VzZXJuYW1lOmJlZm9yZSwgLmxvZ2luLWZvcm1fX2xhYmVsX3Bhc3M6YmVmb3JlIHtcbiAgcmlnaHQ6IDA7XG59XG5cbi5sb2dpbi1mb3JtX19pbnB1dCB7XG4gIHBhZGRpbmc6IDAgMzJweCAwIDRweDtcbn1cblxuLmxvZ2luLWZvb3Rlci1sb2dvIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogNTBweCAyMHB4O1xuICBmbG9hdDogbGVmdDtcbn1cbi5sb2dpbi1mb290ZXItY29weXJpZ2h0IHtcbiAgZmxvYXQ6IHJpZ2h0O1xufVxuLmxvZ2luLWZvb3Rlci1jb3B5cmlnaHQgbGk6Zmlyc3QtY2hpbGQge1xuICBkaXJlY3Rpb246IGx0cjtcbn1cbi5sb2dpbi1lcnJvcl9faW1hZ2Uge1xuICBtYXJnaW4tbGVmdDogMTBweDtcbiAgbWFyZ2luLXJpZ2h0OiAwO1xufVxuLy8tLSBlbmQgb3ZlcnJpZGUgbG9naW4gc3R5bGVzIC0tLy9cblxuLyoqIFN0YXJ0IDogRGFzaGJvYXJkIGNsYXNzZXMgb3ZlcnJpZGUqKi9cbi5kYXNoYm9hcmRfX2NvbHVtbl9sZWZ0IHtcbiAgZmxvYXQ6IHJpZ2h0O1xuICBib3JkZXItbGVmdC13aWR0aDogMXB4O1xuICBib3JkZXItcmlnaHQtd2lkdGg6IDA7XG59XG5cbi5jaGFydF9fcmVzb2x1dGlvbi1ncm91cCB7XG4gIHBhZGRpbmctYm90dG9tOiAyMHB4O1xuICBwYWRkaW5nLXJpZ2h0OiAyMHB4O1xufVxuXG4uY2hhcnRfX3J0bC1wYWRkaW5nX19yaWdodCB7XG5cdHBhZGRpbmctcmlnaHQ6IDIwcHg7XG59XG5cbi5jaGFydF9fZ3JvdXAtZmlsdGVyIHtcbiAgLmRyb3Bkb3duLW1lbnUge1xuICAgIGxlZnQ6IDAgIWltcG9ydGFudDtcbiAgICByaWdodDogYXV0b1xuICB9XG59XG5cbi53aWRnZXRfX2NvbXBhbnktbWVudSB7XG4gIGZsb2F0OiBsZWZ0O1xuICBwYWRkaW5nLWxlZnQ6IDIwcHg7XG4gIC5kcm9wZG93bi1tZW51IHtcbiAgICBsZWZ0OiAwICFpbXBvcnRhbnQ7XG4gICAgcmlnaHQ6IGF1dG9cbiAgfVxufVxuXG4ud2lkZ2V0X190aXRsZSB7XG4gIG1hcmdpbi1yaWdodDogMjBweDtcbn1cblxuLmNoYXJ0LWNvbHVtbiB7XG4gIGRpcmVjdGlvbjogbHRyO1xufVxuXG4uY2hhcnQtc2VjdGlvbl9fYXJlYS1sYWJlbCB7XG4gIGZsb2F0OiByaWdodDtcbn1cblxuLmZlZWQtaXRlbV9fY29udGVudCB7XG5cdG1hcmdpbi1yaWdodDogNzBweDtcblx0bWFyZ2luLWxlZnQ6IDEwcHg7XG59XG5cbi53aWRnZXRfX21lbnUsIC53aWRnZXRfX21lbnVfZmlsdGVycy1hcHBsaWVkIHtcblx0cmlnaHQ6IGF1dG87XG5cdGxlZnQ6IDA7XG5cdGJvcmRlci1sZWZ0OiBub25lO1xuICAgIGJvcmRlci1yaWdodDogJGRlZmF1bHQtZWxlbWVudC1ib3JkZXI7XG5cbiAgLmRyb3Bkb3duLW1lbnUge1xuICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuICB9XG59XG5cbi5kcm9wZG93bi1tZW51LCAuZHJvcGRvd24gLmRyb3Bkb3duLW1lbnUge1xuICB0ZXh0LWFsaWduOiByaWdodDtcbiAgbGVmdDogYXV0bzsgICAvL0Ryb3Bkb3duIGNhbiBiZSByaWdodCBvciBsZWZ0IGFsbGlnbmVkIGluIGRpZmZlcmVudCBzY2VuYXJpb3MuIFNob3VsZG50IGJlICFpbXBvcnRhbnQgaGVyZS5cbn1cblxudWwuZHJvcGRvd24tbWVudS5uYXZpZ2F0aW9uLWJhcl9faXRlbS1tZW51IGxpLm5hdmlnYXRpb24tYmFyX19pdGVtLW1lbnUtbGlzdCBhLmRyb3Bkb3duLWl0ZW0ge1xuICB0ZXh0LWFsaWduOiByaWdodDtcbn1cblxuLmRyb3Bkb3duLWl0ZW0sIC5kcm9wZG93bi1pdGVtX3NlbGVjdGVkLCAuZHJvcGRvd24tbWVudSAuZHJvcGRvd24taXRlbSwgLmRyb3Bkb3duLW1lbnUgLmRyb3Bkb3duLWl0ZW1fc2VsZWN0ZWQsIC5kcm9wZG93bi1pdGVtLWlubGluZSwgLmRyb3Bkb3duLWl0ZW0taW5saW5lX3NlbGVjdGVkIHtcbiAgJltyb2xlPVwibWVudWl0ZW1jaGVja2JveFwiXSB7XG4gICAgJjpiZWZvcmUge1xuICAgICAgbWFyZ2luLXJpZ2h0OiBpbmhlcml0O1xuICAgICAgbWFyZ2luLWxlZnQ6IDVweDtcbiAgICB9XG4gIH1cbn1cblxuLmRyb3Bkb3duLWl0ZW0sIC5kcm9wZG93bi1pdGVtX3NlbGVjdGVkLCAuZHJvcGRvd24tbWVudSAuZHJvcGRvd24taXRlbSwgLmRyb3Bkb3duLW1lbnUgLmRyb3Bkb3duLWl0ZW1fc2VsZWN0ZWQge1xuICAmW3JvbGU9XCJtZW51aXRlbWNoZWNrYm94XCJdIHtcbiAgICAmOmJlZm9yZSB7XG4gICAgICBmbG9hdDogcmlnaHQ7XG4gICAgICBsaW5lLWhlaWdodDogMzBweDtcbiAgICB9XG4gIH1cbn1cblxuLmRyb3Bkb3duLWl0ZW1fX2ZpbHRlci1zZWxlY3QtY29udHJvbCAucHVsbC1sZWZ0IHtcbiAgZmxvYXQ6IHJpZ2h0ICFpbXBvcnRhbnQ7XG59XG5cbi8qKiBUb29sdGlwIHBvc2l0aW9uICoqL1xuLmxpbmUtY2hhcnRfX3Rvb2x0aXAtcnRsIHtcbiAgLm52dG9vbHRpcCB7IG1hcmdpbi1sZWZ0OiAtMTgwcHg7IH1cbn1cblxuLyoqIEVuZCA6IERhc2hib2FyZCBjbGFzc2VzIG92ZXJyaWRlKiovXG5cbi8qKiBTdGFydCA6IFNtYXJ0IHJlY29yZGVyIGNsYXNzZXMgb3ZlcnJpZGUqKi9cblxuLnNtYXJ0LXJlY29yZGVyX19wb3B1cC1pdGVtLWltZyB7XG4gIGZsb2F0OiByaWdodDtcbn1cblxuLnNtYXJ0LXJlY29yZGVyX190ZXh0LWFsaWduIHtcblx0dGV4dC1hbGlnbjogbGVmdDtcbn1cblxuLnNtYXJ0LXJlY29yZGVyX19wb3B1cC1pdGVtLWNvbDIge1xuICBmbG9hdDogbGVmdDtcbiAgcGFkZGluZzogNHB4IDEwcHggMCAwO1xuICB3aWR0aDogMTAwcHg7XG59XG5cbi5zbWFydC1yZWNvcmRlcl9fcG9wdXAtaXRlbS1jb2wxIHtcbiAgbWFyZ2luOiAwIDBweCAwIDIwMHB4O1xuICB3aWR0aDozMDBweDtcbiAgJi5zbWFydC1yZWNvcmRlcl9fcG9wdXAtcGFkZGluZyxcbiAgJi5jcmVhdGUtdGlja2V0X19wb3B1cC1pdGVtLWNvbDEge1xuICAgIG1hcmdpbi1yaWdodDogNjBweDtcbiAgfVxufVxuXG4uc21hcnQtcmVjb3JkZXJfX3BvcHVwLWhlYWRlcl9jb250ZW50IHtcbiAgZmxvYXQ6IHJpZ2h0O1xufVxuXG4uc21hcnQtcmVjb3JkZXJfX3BvcHVwLWhlYWRlcl9jcmVhdGVfY3VzdG9tZXIge1xuICByaWdodDogYXV0bztcbiAgbGVmdDogMTBweDtcbn1cblxuLnNtYXJ0LXJlY29yZGVyLXJlc291cmNlX19oZWFkZXIge1xuICBwYWRkaW5nOiAwIDAgMCA1MHB4O1xufVxuXG4uc21hcnQtcmVjb3JkZXJfX2Zvb3RlciB7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG59XG5cbi5zbWFydC1yZWNvcmRlcl9fZm9vdGVyIC5idG5fc2Vjb25kYXJ5IHtcbiAgbWFyZ2luLWxlZnQ6IDA7XG4gIG1hcmdpbi1yaWdodDogMTBweDtcbn1cblxuLnNtYXJ0LXJlY29yZGVyLWFjdGlvbnNfX2NyZWF0ZURyb3Bkb3duIC5pY29uLXRyaWFuZ2xlX3VwIHtcbiAgcGFkZGluZy1sZWZ0OiAwO1xuICBwYWRkaW5nLXJpZ2h0OiAxMHB4O1xufVxuXG4uaW1wYWN0ZWQtYXNzZXRfX2VkaXRvciB7XG4gIC5jcmVhdGUtdGlja2V0X19zZXJ2aWNlLWl0ZW0ge1xuICAgIC5kcm9wZG93bi1tZW51IHtcbiAgICAgIHJpZ2h0OiAwICFpbXBvcnRhbnQ7XG4gICAgICBsZWZ0OiBhdXRvICFpbXBvcnRhbnQ7XG5cbiAgICAgIC5zbWFydC1yZWNvcmRlcl9fcG9wdXAtaXRlbS1jb2wxLnNtYXJ0LXJlY29yZGVyX19wb3B1cC1pdGVtLW1hcmdpbiB7XG4gICAgICAgIG1hcmdpbjogMCAwIDAgMjAwcHg7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi5ycy1ncm91cC1saXN0LWl0ZW1fX2ljb24tY29udGFpbmVyIHtcbiAgZmxvYXQ6IHJpZ2h0O1xufVxuXG4ucmVzb3VyY2UtcHJldmlld19fYm9keS1jb250cm9scyB7XG4gIHBhZGRpbmctcmlnaHQ6IDVweDtcbiAgbGVmdDogMDtcbiAgcmlnaHQ6IGluaGVyaXQ7XG4gIHBhZGRpbmctbGVmdDogMTBweDtcbn1cblxuLnJzLWdyb3VwLWxpc3QtaXRlbV9fcHJldmlldy1pY29uIHtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSkgc2NhbGVYKC0xKTtcbiAgLW1vei10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSkgc2NhbGVYKC0xKTtcbiAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKSBzY2FsZVgoLTEpO1xuICAtby10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSkgc2NhbGVYKC0xKTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpIHNjYWxlWCgtMSk7XG4gIGxlZnQ6IDE1cHg7XG4gIHJpZ2h0OiBpbmhlcml0O1xufVxuXG4uc21hcnQtcmVjb3JkZXJfX2xlZnQtcGFuZWwge1xuICBmbG9hdDogcmlnaHQ7XG4gIGJvcmRlci1sZWZ0OiAkZGVmYXVsdC1lbGVtZW50LWJvcmRlcjtcbn1cblxuLnBlcnNvbi1jdXN0b20tZmllbGQge1xuICBtYXJnaW4tcmlnaHQ6IDIwcHg7XG4gIG1hcmdpbi1sZWZ0OiBhdXRvO1xufVxuXG4ucGVyc29uLXByZXZpZXdfX2RldGFpbHMge1xuICBkaXY6Zmlyc3Qtb2YtdHlwZSB7XG4gICAgcGFkZGluZy1yaWdodDogMDtcbiAgfVxufVxuXG4ucGVyc29uLXByZXZpZXdfX2F2YXRhciB7XG4gIG1hcmdpbi1sZWZ0OiAxOHB4O1xuICBtYXJnaW4tcmlnaHQ6IGF1dG87XG59XG5cbi5wZXJzb24taXRlbV9fY2hlY2tib3gge1xuICBmbG9hdDogcmlnaHQ7XG4gIG1hcmdpbi1sZWZ0OiAxMHB4O1xuICBtYXJnaW4tcmlnaHQ6IDA7XG59XG5cbi5wZXJzb24tdGlja2V0X19pY29uIHtcbiAgZmxvYXQ6IHJpZ2h0O1xufVxuXG4ucGVyc29uLWl0ZW0tcmVuZGVyZXIge1xuICAuaWNvbi1hbmdsZV9yaWdodCB7XG4gICAgcmlnaHQ6IGluaGVyaXQ7XG4gICAgbGVmdDogMTFweDtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGVYKC0xKTtcbiAgICAtbW96LXRyYW5zZm9ybTogc2NhbGVYKC0xKTtcbiAgICAtbXMtdHJhbnNmb3JtOiBzY2FsZVgoLTEpO1xuICAgIC1vLXRyYW5zZm9ybTogc2NhbGVYKC0xKTtcbiAgICB0cmFuc2Zvcm06IHNjYWxlWCgtMSk7XG4gIH1cblxuICAubGlzdC1pdGVtX3VzZSB7XG4gICAgbWFyZ2luLXJpZ2h0OiBpbmhlcml0O1xuICAgIG1hcmdpbi1sZWZ0OiAxMHB4O1xuICB9XG59XG5cbi5wZXJzb24tYXNzZXRfX21haW4taW5mbyB7XG4gIHBhZGRpbmctcmlnaHQ6IDcwcHg7XG4gIHBhZGRpbmctbGVmdDogaW5pdGlhbDtcbn1cblxuLnBlcnNvbi1pdGVtLXJlbmRlcmVyX19tYWluLWluZm8ge1xuICBtYXJnaW4tcmlnaHQ6IDMwcHg7XG4gIG1hcmdpbi1sZWZ0OiBpbml0aWFsO1xufVxuXG4ucGVyc29uLXRpY2tldF9fcm93IHtcbiAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gIHBhZGRpbmctcmlnaHQ6IDEwcHg7XG59XG5cbi5zbWFydC1yZWNvcmRlcl9fc3VwcG9ydC1wYW5lbCB7XG4gIGZsb2F0OiByaWdodDtcbiAgcGFkZGluZy1yaWdodDogMTBweDtcbiAgcGFkZGluZy1sZWZ0OiAwO1xuICBAaW5jbHVkZSB0cmFuc2l0aW9uIChtYXJnaW4tcmlnaHQsIDAuM3MsIGVhc2UtaW4tb3V0KTtcbn1cblxuLnNtYXJ0LXJlY29yZGVyX19zdXBwb3J0LWNvbnRlbnQge1xuICBib3JkZXItcmlnaHQ6ICRkZWZhdWx0LWVsZW1lbnQtYm9yZGVyO1xuICBib3JkZXItbGVmdDogbm9uZTtcbn1cblxuLnJzLWdyb3VwLWxpc3QtaXRlbV9fdGVtcGxhdGUtY29sdW1uIHtcbiAgZmxvYXQ6IHJpZ2h0O1xufVxuXG4ud2lkZ2V0X19tZW51IC5kcm9wZG93bi1tZW51IHtcbiAgbGVmdDogLTFweDtcbiAgcmlnaHQ6IGF1dG87XG59XG5cbi53aWRnZXRfX21lbnVfZmlsdGVycy1hcHBsaWVkIC5kcm9wZG93bi1tZW51IHtcbiAgbGVmdDogLTFweDtcbiAgcmlnaHQ6IGF1dG87XG59XG4gIC8qKiBFbmQgOiBTbWFydCByZWNvcmRlciBjbGFzc2VzIG92ZXJyaWRlKiovXG5cbi8qKlN0YXJ0IDogR2xvYmFsIFNlYXJjaCAqKi9cbi5wcmV2aWV3LXBhbmVsIHtcbiAgbGVmdDogMDtcbiAgcmlnaHQ6IDM1JTtcbn1cblxuLnJlc3VsdHMtcGFuZWxfX3NlY3Rpb24tY291bnQge1xuICBsZWZ0OiAwO1xuICByaWdodDogYXV0bztcbn1cblxuLnJlc3VsdHMtcGFuZWxfX2l0ZW0tbGF5b3V0IC5pY29uLWFuZ2xlX3JpZ2h0IHtcbiAgbGVmdDogMTBweDtcbiAgcmlnaHQ6IGF1dG87XG4gIHRyYW5zZm9ybTogc2NhbGVYKC0xKTtcbn1cblxuLnJlc3VsdHMtcGFuZWxfX3NlY3Rpb24tdGl0bGVfc3ViIHtcbiAgbWFyZ2luOiAyMHB4IDAgMjBweCAxMDBweDtcbn1cblxuLnNlYXJjaF9fcmVzdWx0cy1jb3VudHtcbiAgZmxvYXQ6IHJpZ2h0O1xufVxuXG4uc2VhcmNoX19hY3RpdmUtY2F0ZWdvcnkge1xuICBmbG9hdDogcmlnaHQ7XG4gIC5pY29uLWFuZ2xlX3JpZ2h0IHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgdHJhbnNmb3JtOiBzY2FsZVgoLTEpO1xuICAgIG1hcmdpbjogMCAxNHB4IDFweCA0cHg7XG4gIH1cbn1cblxuLnNlYXJjaF9fZmlsdGVyIHtcbiAgZmxvYXQ6IHJpZ2h0O1xuICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gIG1hcmdpbi1sZWZ0OiAyMHB4XG59XG5cbi5zZWFyY2hfX2ZpbHRlci1wYW5lbCB7XG4gIC5wdWxsLWxlZnQge1xuICAgIGZsb2F0OiByaWdodCAhaW1wb3J0YW50O1xuICB9XG59XG5cbi5zZWFyY2hfX21vcmUtZmlsdGVycyB7XG4gIGZsb2F0OiBsZWZ0O1xuICBtYXJnaW4tcmlnaHQ6IDA7XG4gIG1hcmdpbi1sZWZ0OiAxMHB4O1xuXG4gICYgPiAuZHJvcGRvd24tbWVudS5wdWxsLXJpZ2h0IHtcbiAgICBsZWZ0OiAwO1xuICAgIHJpZ2h0OiBhdXRvO1xuICB9XG59XG5cbi5zZWFyY2hfX3RvcC1wYW5lbCB7XG4gIHBhZGRpbmc6IDAgMjBweCAwIDA7XG4gIC5zZWFyY2hfdG9wLXBhbmUtZmlyc3QgLnNlYXJjaC1jcml0ZXJpYV9yZXN1bHQtcGFnZSB7XG4gICAgZmxvYXQ6IHJpZ2h0O1xuICAgIG1hcmdpbi1yaWdodDogMjBweDtcbiAgfVxufVxuXG4uc2VhcmNoLWljb24ge1xuICBmbG9hdDogcmlnaHQ7XG59XG5cbi5kcm9wZG93bi1pdGVtX3NlYXJjaC1pY29uIHtcblx0bWFyZ2luLWxlZnQ6IDEwcHg7XG5cdG1hcmdpbi1yaWdodDogMDtcbn1cblxuLnNlYXJjaC1pdGVtLWxheW91dF9fbWFpbi1jb250ZW50IHtcbiAgcGFkZGluZy1yaWdodDogMTVweDtcbiAgcGFkZGluZy1sZWZ0OiBpbmhlcml0O1xufVxuXG4ucmVzdWx0cy1wYW5lbF9fc2VjdGlvbi1jb3VudCAuaWNvbi1hbmdsZV9yaWdodCB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgdHJhbnNmb3JtOiBzY2FsZVgoLTEpO1xufVxuLyoqRW5kIDogR2xvYmFsIFNlYXJjaCAqKi9cblxuLyoqIFN0YXJ0IDogU2NyZWVuIENvbmZpZ3VyYXRpb24gKiovXG4uc2NyZWVuLWNvbmZpZ3VyYXRpb25fX2dsb2JhbC1tZW51LXNlY3Rpb24ge1xuICBwYWRkaW5nOiAyMHB4IDIwcHggMCAwO1xufVxuXG4uc2NyZWVuLWNvbmZpZ3VyYXRpb25fX3NjcmVlbi1wcmV2aWV3IHtcbiAgZmxvYXQ6IHJpZ2h0O1xuICBwYWRkaW5nLXJpZ2h0OiAxNXB4O1xuICBwYWRkaW5nLWxlZnQ6IDA7XG59XG5cbi5zY3JlZW4tY29uZmlndXJhdGlvbl9fcGFuZWwtbGlzdCB7XG4gIHBhZGRpbmctcmlnaHQ6IDA7XG59XG5cbi5zY3JlZW4tY29uZmlndXJhdGlvbl9fcGFuZWwtaXRlbSB7XG4gIHBhZGRpbmc6IDVweCAxNXB4IDVweCAwO1xufVxuXG4uYXJlYS1jb250YWluZXIge1xuICBtYXgtaGVpZ2h0OiAxMDAlO1xuICBwYWRkaW5nOiAwO1xufVxuXG4uZmllbGRzLXdpZGdldF9fc2VhcmNoLWJveCB7XG4gIGxlZnQ6IDVweDtcbiAgcmlnaHQ6IGF1dG87XG4gIC5zZWFyY2gtaW5wdXQge1xuICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICBwYWRkaW5nLXJpZ2h0OiAzNXB4O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IDk1JSA1MCU7XG4gIH1cbn1cblxuLmZpZWxkLWl0ZW1fc3RhdGljIC5maWVsZC1pdGVtX19sYWJlbCB7XG5cdHBhZGRpbmctbGVmdDogMDtcblx0cGFkZGluZy1yaWdodDogNXB4O1xufVxuXG4uZmllbGQtaXRlbV9zdGF0aWMsIC5maWVsZC1pdGVtLCAuZ3JvdXAtZmllbGQtaXRlbXtcbiAgLnB1bGwtbGVmdCB7XG4gICAgZmxvYXQ6IHJpZ2h0ICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuLmZpZWxkLWl0ZW1fX2V4cGFuZC1idXR0b24ge1xuICAuaWNvbi1hbmdsZV9yaWdodCB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHRyYW5zZm9ybTogc2NhbGVYKC0xKTtcbiAgfVxuICAuaWNvbi1kb3RzIHtcbiAgICBmbG9hdDogcmlnaHQ7XG4gIH1cbn1cblxuLmZpZWxkLWl0ZW1fX2RlcGVuZGVuY3ktYmxvY2sge1xuICBwYWRkaW5nLWxlZnQ6IDA7XG4gIHBhZGRpbmctcmlnaHQ6IDIwcHg7XG59XG5cbi5maWVsZC1pdGVtX19kZXBlbmRlbmN5LWxpc3Qge1xuICBwYWRkaW5nLXJpZ2h0OiAwcHg7XG59XG5cbi5hY3Rpb24tZWRpdG9yX19kZWxldGUtYnRuIHtcblx0ZmxvYXQ6IGxlZnQ7XG59XG5cbi5hY3Rpb24tZWRpdG9yIC5idG4tZ3JvdXAgYnV0dG9uIHtcblx0ZmxvYXQ6IHJpZ2h0O1xufVxuXG4uZmllbGQtaXRlbV9fcHJvcGVydHktbGFiZWwge1xuXHRpbnB1dFt0eXBlPVwiY2hlY2tib3hcIl0ge1xuXHRcdG1hcmdpbjogLTRweCAwIDAgNXB4O1xuXHR9XG59XG5cbi5hY3Rpb24tZWRpdG9yX19hY3Rpb24tcGFuZWwtc2VjdGlvbiB7XG4gIC5lbWFpbC1hY2NlbGVyYXRvcnNfX3BvcHVwLWl0ZW0tZXhwcmVzc2lvbiB7XG4gICAgZmxvYXQ6IHJpZ2h0O1xuICB9XG4gIC5lbWFpbC1hY2NlbGVyYXRvcnNfX3BvcHVwLWl0ZW0tZGVzYyB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gIH1cbn1cblxuLmVtYWlsLWFjY2VsZXJhdG9yc19fcG9wdXAge1xuICByaWdodDogNDBweDtcbn1cbi8qKiBFbmQgOiBTY3JlZW4gQ29uZmlndXJhdGlvbiAqKi9cblxuLyoqIFN0YXJ0IDogU2NyZWVuIENvbmZpZ3VyYXRpb24gSW1hZ2VzKiovXG4uaS1jb25maWd1cmF0aW9uXG4sLmktaW5jaWRlbnREZXRhaWxzU2NyZWVuLWFkZGl0aW9uYWxJbmZvXG4sLmktaW5jaWRlbnREZXRhaWxzU2NyZWVuLWFzc2lnbm1lbnRcbiwuaS1pbmNpZGVudERldGFpbHNTY3JlZW4tY2F0ZWdvcml6YXRpb25cbiwuaS1pbmNpZGVudERldGFpbHNTY3JlZW4tY3VzdG9tZXJDYXJkXG4sLmktaW5jaWRlbnREZXRhaWxzU2NyZWVuLXJlY29yZFN1bW1hcnlcbiwuaS1pbmNpZGVudERldGFpbHNTY3JlZW5cbiwuaS1wZXJzb25EZXRhaWxzU2NyZWVuLXBlcnNvblN1bW1hcnlcbiwuaS1wZXJzb25EZXRhaWxzU2NyZWVuXG4sLmktdGFza0RldGFpbHNTY3JlZW4tYWRkaXRpb25hbEluZm9cbiwuaS10YXNrRGV0YWlsc1NjcmVlbi1hc3NpZ25tZW50XG4sLmktdGFza0RldGFpbHNTY3JlZW4tY2F0ZWdvcml6YXRpb25cbiwuaS10YXNrRGV0YWlsc1NjcmVlbi1yZWNvcmRTdW1tYXJ5XG4sLmktdGFza0RldGFpbHNTY3JlZW5cbiwuaS13b3JrT3JkZXJEZXRhaWxzU2NyZWVuLWFkZGl0aW9uYWxJbmZvXG4sLmktd29ya09yZGVyRGV0YWlsc1NjcmVlbi1hc3NpZ25tZW50XG4sLmktd29ya09yZGVyRGV0YWlsc1NjcmVlbi1jYXRlZ29yaXphdGlvblxuLC5pLXdvcmtPcmRlckRldGFpbHNTY3JlZW4tY3VzdG9tZXJDYXJkXG4sLmktd29ya09yZGVyRGV0YWlsc1NjcmVlbi1yZWNvcmRTdW1tYXJ5XG4sLmktd29ya09yZGVyRGV0YWlsc1NjcmVlblxuLC5pLWNoYW5nZVJlcXVlc3RTY3JlZW5cbiwuaS1jaGFuZ2VSZXF1ZXN0U2NyZWVuLWJhc2ljc1xuLC5pLWNoYW5nZVJlcXVlc3RTY3JlZW4tZGF0ZXNcbiwuaS1jaGFuZ2VSZXF1ZXN0U2NyZWVuLXJpc2tcbiwuaS1wcm9ibGVtU2NyZWVuXG4sLmktcHJvYmxlbVNjcmVlbi1hZGRpdGlvbmFsSW5mb1xuLC5pLXByb2JsZW1TY3JlZW4tYXNzaWdubWVudFxuLC5pLXByb2JsZW1TY3JlZW4tY2F0ZWdvcml6YXRpb25cbiwuaS1wcm9ibGVtU2NyZWVuLXJlY29yZFN1bW1hcnlcbiwuaS1hc3NldFNjcmVlblxuLC5pLWFzc2V0U2NyZWVuLWdlbmVyaWNcbiwuaS1hc3NldFNjcmVlbi10eXBlU3BlY2lmaWNcbntcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIuLi9pbWcvY29uZmlndXJhdGlvbi1pbWFnZXMucG5nXCIpO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAtbW96LXRyYW5zZm9ybTogc2NhbGUoLTEsIDEpO1xuICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoLTEsIDEpO1xuICAtby10cmFuc2Zvcm06IHNjYWxlKC0xLCAxKTtcbiAgLW1zLXRyYW5zZm9ybTogc2NhbGUoLTEsIDEpO1xuICB0cmFuc2Zvcm06IHNjYWxlKC0xLCAxKTtcbn1cblxuLmktcGVyc29uRGV0YWlsc1NjcmVlbi1wZXJzb25TdW1tYXJ5IHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTI5N3B4IC01NjZweDtcbiAgd2lkdGg6IDI5NnB4O1xuICBoZWlnaHQ6IDI4MnB4O1xufVxuXG4uaS1wZXJzb25EZXRhaWxzU2NyZWVuIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogMCAtNTY2cHg7XG4gIHdpZHRoOiAyOTZweDtcbiAgaGVpZ2h0OiAyODJweDtcbn1cbi8qKiBFbmQgOiBTY3JlZW4gQ29uZmlndXJhdGlvbiBJbWFnZXMqKi9cblxuLyoqIFN0YXJ0IDogQVFJIFF1ZXN0aW9uIFNldCAqKi9cbi5jcmVhdGUtYXFpX190YWJsZSB7XG4gIG1hcmdpbi1sZWZ0OiAwO1xuICBtYXJnaW4tcmlnaHQ6IDM1cHg7XG59XG5cbi5jcmVhdGUtYXFpX190YWJsZS1jb2xfX3F1ZXN0aW9uLXNldCwgLmNyZWF0ZS1hcWlfX3RhYmxlLWNlbGxfX3F1ZXN0aW9uLXNldCB7XG4gIGJvcmRlci1sZWZ0OiAwO1xufVxuXG4uY3JlYXRlLWFxaV9fdGFibGUtY2VsbC1yaWdodCB7XG4gIGJvcmRlci1sZWZ0OiAkZGVmYXVsdC1lbGVtZW50LWJvcmRlcjtcbn1cblxuLmNyZWF0ZS1hcWlfX3RhYmxlLWNlbGwtdG9wIHtcbiAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gIHBhZGRpbmc6IDAgMTBweCAwIDVweDtcbn1cblxuLmNyZWF0ZS1hcWlfX3RhYmxlLXJvdyB7XG4gIHRleHQtYWxpZ246IHJpZ2h0O1xufVxuXG4uY3JlYXRlLWFxaV9fZGVmYXVsdC1jbG9uZS1pY29uIHtcbiAgcGFkZGluZy1sZWZ0OiAwO1xuICBwYWRkaW5nLXJpZ2h0OiA5M3B4O1xufVxuXG4uY3JlYXRlLWFxaV9fdGFibGUtY2VsbC1yaWdodCwgLmNyZWF0ZS1hcWlfX3RhYmxlLWNlbGxfX2NvbXBhbnksIC5jcmVhdGUtYXFpX190YWJsZS1jZWxsX19vcmdhbmlzYXRpb24sIC5jcmVhdGUtYXFpX190YWJsZS1jZWxsX19xdWVzdGlvbi1zZXQge1xuICBwYWRkaW5nOiAwIDEwcHggMCA1cHg7XG59XG5cbi5jcmVhdGUtYXFpX19lZGl0LWljb25zIHtcbiAgcGFkZGluZy1sZWZ0OiA3NXB4O1xuICBwYWRkaW5nLXJpZ2h0OiAwO1xuICBmbG9hdDogcmlnaHQ7XG4gIGhlaWdodDogMThweDtcbn1cblxuLnF1ZXN0aW9uLWVkaXRvcl9fcXVlc3Rpb24tcGFuZWwtaGVhZC1zb3J0YWJsZSB7XG4gIGJvcmRlci1yaWdodDogMDtcbiAgYm9yZGVyLWxlZnQ6ICRkZWZhdWx0LWVsZW1lbnQtYm9yZGVyO1xufVxuXG4ucXVlc3Rpb24tZWRpdG9yX19jaGVja2JveC1sYWJlbCB7XG4gIGlucHV0W3R5cGU9XCJjaGVja2JveFwiXSB7XG4gICAgbWFyZ2luOiAtNHB4IDAgMCA1cHg7XG4gIH1cbn1cbi8qKiBFbmQgOiBBUUkgUXVlc3Rpb24gU2V0ICoqL1xuXG4vKiogU3RhcnQgOiBTZXJ2aWNlIFJlcXVlc3QgKiovXG4uc2VydmljZS1yZXF1ZXN0X19jb29yZGluYXRvciwgLnRpY2tldF9fYXNzaWduZWUtdGh1bWJuYWlsLCAuc2VydmljZS1yZXF1ZXN0X19xdWFudGl0eSwgLnNlcnZpY2UtcmVxdWVzdF9fZGVmaW5pdGlvbiwgLnNlcnZpY2UtcmVxdWVzdF9fZXhwZWN0ZWQtZGF0ZSwgLnNlcnZpY2UtcmVxdWVzdF9fcmVxdWlyZWQtZGF0ZSB7XG4gIGZsb2F0OiByaWdodDtcbn1cblxuLnNlcnZpY2UtcmVxdWVzdF9fcmVxdWlyZWQtZGF0ZS5jcmVhdGUtdGlja2V0X19kYXRlIC5jdXN0b20tZmllbGRfX2RhdGUgKyAuY3VzdG9tLWZpZWxkX190aW1lIHtcbiAgbWFyZ2luLXJpZ2h0OiAwO1xufVxuXG4uc2VydmljZS1yZXF1ZXN0X19jZW50ZXItaW5mbyB7XG4gIHBhZGRpbmc6IDIwcHggMzBweCAyMHB4IDA7XG59XG5cbi5zcmQtcXVlc3Rpb25fX2RhdGUsIC5zcmQtcXVlc3Rpb25fX3RpbWUge1xuICAuZm9ybS1jb250cm9sIHtcbiAgICB0ZXh0LWFsaWduOiByaWdodDtcbiAgfVxuXG4gIC5zcmQtcXVlc3Rpb25fX2RhdGUtaWNvbiwgLnNyZC1xdWVzdGlvbl9fdGltZS1pY29uIHtcbiAgICBsZWZ0OiBpbmhlcml0O1xuICAgIHJpZ2h0OiAxMTBweDtcbiAgfVxuXG4gIC5kcm9wZG93bi1tZW51IHtcbiAgICBsZWZ0OiBhdXRvICFpbXBvcnRhbnQ7XG5cbiAgICAuZ2x5cGhpY29uLWNoZXZyb24tbGVmdDo6YmVmb3JlIHtcbiAgICAgIGNvbnRlbnQ6IFwiXFxlMDgwXCI7XG4gICAgfVxuXG4gICAgLmdseXBoaWNvbi1jaGV2cm9uLXJpZ2h0OjpiZWZvcmUge1xuICAgICAgY29udGVudDogXCJcXGUwNzlcIjtcbiAgICB9XG4gIH1cbn1cbi8qKiBFbmQgOiBTZXJ2aWNlIFJlcXVlc3QgKiovXG5cbi8qKiBTdGFydCA6IEtub3dsZWRnZSBTdHlsZXMgKiovXG4ua2EtY29uZmlnX19zZWN0aW9uLWhlYWRlciB7XG5cdHBhZGRpbmc6IDAgMTBweCAyMHB4IDA7XG59XG5cbi5rYS1jb25maWdfX2xpc3QtaXRlbS1jb250ZW50IHtcblx0cmlnaHQ6IDU1cHg7XG5cdGxlZnQ6IDM1cHg7XG59XG5cbi5rYS1jb25maWdfX2xpc3QtaXRlbS1wb2ludGVyIHtcblx0bGVmdDogMDtcblx0cmlnaHQ6IGF1dG87XG5cdHRyYW5zZm9ybTogc2NhbGVYKC0xKTtcbn1cblxuLmthLWNvbmZpZ19fZWRpdC1pdGVtLWNvbnRhaW5lcjIge1xuXHRmbG9hdDogbGVmdDtcbn1cblxuLmthLWNvbmZpZ19fZWRpdC1pdGVtLXBvaW50ZXIge1xuXHRwYWRkaW5nLWxlZnQ6IDIwcHg7XG5cdHBhZGRpbmctcmlnaHQ6IDA7XG59XG5cbi5rYS1jb25maWdfX2VkaXQtaXRlbS1sYWJlbCwgLmthLWNvbmZpZ19fZWRpdC1pdGVtLXN1bW1hcnkge1xuXHRtYXJnaW4tcmlnaHQ6IDIwcHg7XG5cdG1hcmdpbi1sZWZ0OiAwO1xufVxuXG4vKiogRW5kIDogS25vd2xlZGdlIFN0eWxlcyAqKi9cblxuLyoqIFN0YXJ0IDogUGVyc29uIFByb2ZpbGUgKiovXG4ucGVyc29uX19jb21wYW55LW5hbWUge1xuXHRsZWZ0OiAwO1xuXHRyaWdodDogaW5oZXJpdDtcbn1cblxuLnByb2ZpbGVfX2hlYWRlci1pY29uIHtcblx0ZmxvYXQ6IHJpZ2h0O1xufVxuXG4ucGVyc29uX19hY3Rpb24tYmFyIHtcblx0bGVmdDogMDtcblx0cmlnaHQ6IGluaGVyaXQ7XG59XG5cbi5wcm9maWxlX19oZWFkZXItY29udGVudCB7XG5cdG1hcmdpbi1sZWZ0OiAwO1xuXHRtYXJnaW4tcmlnaHQ6IDEwNHB4O1xufVxuXG4ucGVyc29uLWFzc2V0X19pY29uIHtcblx0ZmxvYXQ6IHJpZ2h0O1xufVxuXG4ucGVyc29uX19lZGl0LWljb24ge1xuXHRsZWZ0OiBpbmhlcml0O1xuXHRyaWdodDogODBweDtcbn1cblxuLnBlcnNvbl9fYXZhdGFyX21lbnVfaXRlbSB7XG4gIHRleHQtYWxpZ246IHJpZ2h0O1xufVxuXG4ubmF2LXRhYnMge1xuXHRsaSArIGxpIHtcblx0XHRib3JkZXItbGVmdDogaW5oZXJpdDtcblx0XHRib3JkZXItcmlnaHQ6ICRkZWZhdWx0LWVsZW1lbnQtYm9yZGVyO1xuXHR9XG59XG5cbi5wZXJzb24tc2VydmljZS1zdW1tYXJ5X19yYXRpbmctc3RhciB7XG4gIGZsb2F0OiByaWdodDtcbiAgbWFyZ2luLXRvcDogLTdweDtcbn1cblxuLnBlcnNvbi1zZXJ2aWNlLXN1bW1hcnlfX3JhdGluZy1zdGFyOmZpcnN0LWNoaWxkIHtcbiAgcGFkZGluZy1sZWZ0OiA1cHg7XG4gIHBhZGRpbmctcmlnaHQ6IDA7XG59XG5cbi5wZXJzb24tc2VydmljZS1zdW1tYXJ5X19lc2NhbGF0aW9uIHtcbiAgcGFkZGluZy1yaWdodDogNXB4O1xuICBwYWRkaW5nLWxlZnQ6IGluaGVyaXQ7XG59XG5cbi5wZXJzb24tc2VydmljZS1zdW1tYXJ5X19lc2NhbGF0aW9uLXNlY3Rpb24gLmljb24tZXhjbGFtYXRpb25fdHJpYW5nbGUge1xuICBmbG9hdDogcmlnaHQ7XG59XG4vKiogRW5kIDogUGVyc29uIFN0eWxlcyAqKi9cblxuLyoqIFN0YXJ0IDogSW5jaWRlbnQgUHJvZmlsZSAqKi9cbi5wcm9maWxlX19tYWluLXBhbmVsIHtcbiAgZmxvYXQ6IHJpZ2h0O1xufVxuXG4udGlja2V0X19iYXNpYy1pbmZvIC5wdWxsLWxlZnR7XG4gIGZsb2F0OiByaWdodCAhaW1wb3J0YW50O1xufVxuXG5AbWVkaWEgKG1pbi13aWR0aDogMTAyNHB4KXtcblx0LnRpY2tldF9fYmFzaWMtaW5mbyB7XG5cdFx0JiA+IGRpdjpmaXJzdC1jaGlsZCB7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDEwcHg7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuXHRcdH1cblx0fVxufVxuXG5AbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIGFuZCAobWF4LXdpZHRoOiAxMDIzcHgpIHtcblx0LnRpY2tldF9fYmFzaWMtaW5mbyB7XG5cdFx0JiA+IGRpdjpmaXJzdC1jaGlsZCB7XG5cdFx0XHRwYWRkaW5nLWxlZnQ6IDIycHg7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuXHRcdH1cblx0fVxufVxuXG4uc2VydmljZS1yZXF1ZXN0X19zdW1tYXJ5LXNlY3Rpb24ge1xuICBtYXJnaW4tcmlnaHQ6IC0xNHB4O1xuICBtYXJnaW4tbGVmdDogMnB4O1xufVxuXG4udGlja2V0X19uYW1lIHtcbiAgcGFkZGluZy1yaWdodDogMDtcbiAgcGFkZGluZy1sZWZ0OiAxMHB4O1xufVxuXG4udGlja2V0LWNvbnRyb2xzIHtcbiAgZmxvYXQ6IGxlZnQ7XG59XG5cbi5wcm9maWxlLWFjdGlvbi1iYXJfX2l0ZW0ge1xuICAmICsgJiB7XG4gICAgbWFyZ2luLXJpZ2h0OiAyMHB4O1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuICB9XG59XG5cbi50aWNrZXRfX2luZm9ybWF0aW9uIHtcbiAgcGFkZGluZy1sZWZ0OiAwO1xuICBwYWRkaW5nLXJpZ2h0OiAxMHB4O1xufVxuXG4udGlja2V0X19uYW1lIHtcbiAgcGFkZGluZy1sZWZ0OiAxMHB4O1xuICBwYWRkaW5nLXJpZ2h0OiBhdXRvO1xufVxuXG4udGlja2V0X19sYXN0dXBkYXRlZCB7XG4gIHBhZGRpbmctbGVmdDogMDtcbiAgcGFkZGluZy1yaWdodDogMTBweDtcbn1cblxuLnRpY2tldF9fc3RhdHVzLXNlbGVjdG9yIHtcbiAgZmxvYXQ6IHJpZ2h0O1xuICBwYWRkaW5nLWxlZnQ6IDE1cHg7XG4gIHBhZGRpbmctcmlnaHQ6IDA7XG59XG5cbi5vdXRhZ2VfX3N0YXR1cy1zZWxlY3RvciB7XG5cdEBleHRlbmQgLnRpY2tldF9fc3RhdHVzLXNlbGVjdG9yO1xuXHRjdXJzb3I6IGRlZmF1bHQ7XG5cdGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7XG59XG5cbi50aWNrZXRfX3N0YXR1cy1pY29uIHtcbiAgbWFyZ2luLWxlZnQ6IDA7XG4gIG1hcmdpbi1yaWdodDogNXB4O1xufVxuXG4udGlja2V0X19yaXNrLWxldmVsLWJhZGdlIHtcbiAgbWFyZ2luLXJpZ2h0OiAwO1xuICBtYXJnaW4tbGVmdDogMTBweDtcbn1cblxuLnRpY2tldF9fY2hhbmdlLWNsYXNzIHtcbiAgbWFyZ2luLWxlZnQ6IDA7XG4gIG1hcmdpbi1yaWdodDogMTBweDtcbn1cblxuLmVkaXRhYmxlLWNvbnRlbnQtc2VjdGlvbl9fY29udHJvbHMge1xuICBsZWZ0OiAxMHB4O1xuICByaWdodDogaW5oZXJpdDtcbn1cblxuLnBlcnNvbi1zdW1tYXJ5IHtcbiAgcGFkZGluZy1sZWZ0OiAxNXB4O1xuICBwYWRkaW5nLXJpZ2h0OiAwO1xufVxuXG4ucGVyc29uLXN1bW1hcnlfX2J1c2luZXNzLWNhcmQsIC5hc3NldC1wZXJzb24tc3VtbWFyeV9fYnVzaW5lc3MtY2FyZCB7XG4gIG1hcmdpbi1yaWdodDogMjBweDtcbiAgbWFyZ2luLWxlZnQ6IDA7XG59XG5cbi5wZXJzb24tYWRkcmVzc19fY29sdW1uOm5vdCg6bGFzdC1vZi10eXBlKSB7XG4gIHBhZGRpbmctbGVmdDogMjBweDtcbiAgcGFkZGluZy1yaWdodDogMDtcbn1cblxuLnRpY2tldC1jYXRlZ29yeS1zZWN0aW9uX19pbXBhY3RlZC1zZXJ2aWNlIHtcbiAgcGFkZGluZzogMDtcbn1cblxuLnRpY2tldC1jYXRlZ29yeS1zZWN0aW9uX19pbXBhY3RlZC1hc3NldCB7XG4gIHBhZGRpbmc6IDA7XG59XG5cbi50aWNrZXRfX2NhdGVnb3J5LXNlY3Rpb24ge1xuICBwYWRkaW5nOiAzMHB4IDIwcHggMTBweCAyMHB4O1xufVxuXG4uZHJvcGRvd24taXRlbV9fYWN0dWFsLXZhbHVlIHtcbiAgZmxvYXQ6IHJpZ2h0O1xufVxuXG4uZHJvcGRvd24taXRlbV9fbGluayB7XG4gIG1hcmdpbi1yaWdodDogMDtcbiAgbWFyZ2luLWxlZnQ6IDUwcHg7XG59XG5cbi5jYXRlZ29yeS13aWRnZXRfX2l0ZW0gLmRyb3Bkb3duLWl0ZW1fX2Nvbm5lY3RlZC12YWx1ZSwgLmNhdGVnb3J5LWVkaXRvcl9fY2F0ZWdvcnktaXRlbSAuZHJvcGRvd24taXRlbV9fY29ubmVjdGVkLXZhbHVlIHtcblx0ZmxvYXQ6IGxlZnQ7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG59XG5cbi5rYS1tZXRhZGF0YV9fcGFuZWwgLmthLW1ldGFkYXRhX19jYXRlZ29yaWVzIC5kcm9wZG93bi1tZW51IGxpIHtcbiAgYSBzcGFuOmZpcnN0LWNoaWxkIHtcbiAgICBmbG9hdDogcmlnaHQ7XG4gIH1cbn1cblxuLnRpY2tldC1hc3NpZ25lZV9faW5mbyB7XG4gIHBhZGRpbmctbGVmdDogMDtcbiAgcGFkZGluZy1yaWdodDogMjBweDtcbn1cblxuLnRpY2tldC1hc3NpZ25lZV9fc3VwcG9ydC1ncm91cCB7XG4gIHBhZGRpbmctbGVmdDogMDtcbiAgcGFkZGluZy1yaWdodDogNTNweDtcbn1cblxuLnByb2ZpbGUtcmVsYXRpb25fX29yZGVyaW5nLWxhYmVsIHtcbiAgZmxvYXQ6IHJpZ2h0O1xufVxuLnByb2ZpbGUtcmVsYXRpb25fX25vLXJlbGF0aW9uIHtcbiAgcGFkZGluZy1sZWZ0OiAwO1xuICBwYWRkaW5nLXJpZ2h0OiAxNXB4O1xufVxuXG4ucHJvZmlsZS1yZWxhdGlvbl9faXRlbS1pY29ue1xuICBmbG9hdDogcmlnaHQ7XG59XG5cbi5wcm9maWxlLXJlbGF0aW9uX19pdGVtLWRldGFpbHMge1xuICBtYXJnaW4tcmlnaHQ6IDc0cHg7XG4gIG1hcmdpbi1sZWZ0OiAwO1xufVxuXG4ucHJvZmlsZS1yZWxhdGlvbl9fcmVtb3ZlIHtcbiAgbGVmdDogOXB4O1xuICByaWdodDogaW5oZXJpdDtcbn1cblxuLnByb2ZpbGUtcmVsYXRpb25fX2l0ZW0tdGFzay1jb2wxIHtcbiAgcGFkZGluZy1yaWdodDogMTNweDtcbiAgYm9yZGVyLWxlZnQ6ICRkZWZhdWx0LWVsZW1lbnQtYm9yZGVyO1xuICBib3JkZXItcmlnaHQ6IG5vbmU7XG59XG5cbi5wcm9maWxlLXJlbGF0aW9uX19pdGVtLXRhc2stY29sMntcbiAgcmlnaHQ6IDMxcHg7XG4gIHBhZGRpbmctcmlnaHQ6IDVweDtcbiAgYm9yZGVyLWxlZnQ6ICRkZWZhdWx0LWVsZW1lbnQtYm9yZGVyO1xuICBib3JkZXItcmlnaHQ6IG5vbmU7XG59XG5cbi5wcm9maWxlLXJlbGF0aW9uX19pdGVtLXRhc2staWNvbiB7XG4gIGZsb2F0OiByaWdodDtcbn1cblxuLnByb2ZpbGUtcmVsYXRpb25fX2l0ZW0tdGFzay1jb2wzIHtcbiAgbWFyZ2luLXJpZ2h0OiA4MHB4O1xufVxuXG4ucHJvZmlsZS1yZWxhdGlvbl9faXRlbS10YXNrLWdyb3VwLWJ0bntcbiAgZmxvYXQ6IHJpZ2h0O1xufVxuXG4ucHJvZmlsZS1yZWxhdGlvbl9faXRlbS10YXNrLWdyb3VwLXNlYzEge1xuICBtYXJnaW46IDBweCAtMjBweCAwIDA7XG59XG5cbi5wcm9maWxlLXJlbGF0aW9uX19pdGVtLXRhc2stZ3JvdXAtc2VxLWlucHV0IHtcbiAgbWFyZ2luLXJpZ2h0OiAyMHB4ICFpbXBvcnRhbnQ7XG4gIHBhZGRpbmctbGVmdDogMHB4O1xuICBwYWRkaW5nLXJpZ2h0OiAycHg7XG59XG5cbi5wcm9maWxlLXJlbGF0aW9uX19pdGVtLXRhc2stc2VxLWlucHV0IHtcbiAgcGFkZGluZy1yaWdodDogMnB4O1xufVxuXG4ucHJvZmlsZS1yZWxhdGlvbl9fdGFzay1zZXEtY29udHJvbHMge1xuICBsZWZ0OiAxMHB4O1xuICByaWdodDogYXV0bztcbn1cblxuLnByb2ZpbGUtcmVsYXRpb25fX3Rhc2stc2VxLWFjdGlvbnN7XG4gIG1hcmdpbi1sZWZ0OiAzMHB4O1xuICBtYXJnaW4tcmlnaHQ6IGluaGVyaXQ7XG59XG5cbi50aW1lbGluZS13aWRnZXRfX21lbnUsIC50aW1lbGluZS13aWRnZXRfX21lbnVfZmlsdGVycy1hcHBsaWVkIHtcbiAgbGVmdDogMDtcbiAgcmlnaHQ6IGF1dG87XG4gIGJvcmRlci1yaWdodDogJGRlZmF1bHQtZWxlbWVudC1ib3JkZXI7XG4gIGJvcmRlci1sZWZ0OiAwO1xufVxuXG4ucHJvZmlsZV9fbWFpbi1jb250ZW50IHtcbiAgYm9yZGVyLWxlZnQ6ICRkZWZhdWx0LWVsZW1lbnQtYm9yZGVyO1xuICBib3JkZXItcmlnaHQ6IDA7XG59XG5cbi50aWNrZXRfX2Fzc2lnbm1lbnQsIC50aWNrZXRfX2RhdGVzIHtcbiAgcGFkZGluZzogMCAyMHB4IDIwcHggMHB4O1xufVxuXG4ucHJvZmlsZS1hY3Rpb24tYmFyX19pdGVtIC5kcm9wZG93bi1tZW51IHtcbiAgbGVmdDogMDtcbiAgcmlnaHQ6IGF1dG87XG59XG5cbi5lZGl0LWN1c3RvbWVyLWNhcmRfX2RlbGV0ZS1jb250YWN0LWJ0biB7XG4gIGxlZnQ6IDhweDtcbiAgcmlnaHQ6IGluaGVyaXQ7XG59XG5cbi50aWNrZXQtc3VtbWFyeV9fY29udGVudCB7XG4gIHRleHQtYWxpZ246IHJpZ2h0O1xufVxuXG4uYXR0YWNobWVudF9fZGlzbWlzcyB7XG4gIHJpZ2h0OiBpbmhlcml0O1xuICBsZWZ0OiAxMHB4O1xufVxuXG4udGlja2V0LXRlbXBsYXRlLW1vZGFsX19tZW51LWhlYWRlciB7XG4gIC5pY29uLWFuZ2xlX3JpZ2h0IHtcbiAgICBsZWZ0OiAtM3B4O1xuICAgIHJpZ2h0OiBpbmhlcml0O1xuICAgIHRyYW5zZm9ybTogc2NhbGUoLTEpO1xuICB9XG5cbiAgLmNvbnRyb2wtbGFiZWwge1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgIG1hcmdpbi1yaWdodDogMTVweDtcbiAgfVxufVxuLyoqIEVuZCA6IEluY2lkZW50IFByb2ZpbGUgKiovXG5cbi8qKiBTdGFydCA6IFdvcmtvcmRlciBQcm9maWxlICoqL1xuLnRpY2tldC1hc3NpZ25lZV9fZGV0YWlscyB7XG4gIHBhZGRpbmctcmlnaHQ6IDI1cHggIWltcG9ydGFudDtcbiAgcGFkZGluZy1sZWZ0OiAwO1xufVxuXG4uZWRpdC10aWNrZXQtZGF0ZXMgLmN1c3RvbS1maWVsZF9fZGF0ZV90aW1lX2NvbnRhaW5lciB7XG4gIC5jdXN0b20tZmllbGRfX3RpbWUge1xuICAgIG1hcmdpbi1yaWdodDogNXB4O1xuICB9XG59XG5cbi5hY3Rpb24tYmxhZGVfX3Rhc2stdGVtcGxhdGUtcHJldmlldyB7XG4gIHJpZ2h0OiA1MCU7XG4gIGxlZnQ6IGluaGVyaXQ7XG59XG5cbi50YXNrLWdyb3VwLXRlbXBsYXRlLXByZXZpZXdfX251bSB7XG4gIGZsb2F0OiByaWdodDtcbn1cblxuLnRhc2stZ3JvdXAtdGVtcGxhdGUtcHJldmlld19fcHJpb3JpdHkge1xuICBmbG9hdDogbGVmdDtcbn1cblxuLnRpY2tldC10ZW1wbGF0ZS1saXN0X19pbnB1dCB7XG4gIGZsb2F0OiByaWdodDtcbiAgbWFyZ2luLXJpZ2h0OiAtMjVweCAhaW1wb3J0YW50O1xuICBtYXJnaW4tbGVmdDogMCAhaW1wb3J0YW50O1xufVxuXG4udGlja2V0LXRlbXBsYXRlLWxpc3RfX2l0ZW0ge1xuICBwYWRkaW5nOiAxNnB4IDQxcHggMTZweCAxNnB4O1xufVxuLyoqIEVuZCA6IFdvcmtvcmRlciBQcm9maWxlICoqL1xuXG4vKiogU3RhcnQgOiBLbm93bGVkZ2UgUHJvZmlsZSAqKi9cbi5rYV9fYXJ0aWNsZS1pZCB7XG4gIGZsb2F0OiByaWdodDtcbn1cblxuLmthLWhlYWRlcl9fc3RhdHVzLXNlbGVjdG9yIHtcbiAgZmxvYXQ6IHJpZ2h0O1xuICBwYWRkaW5nLWxlZnQ6IDE1cHg7XG4gIHBhZGRpbmctcmlnaHQ6IDA7XG5cbiAgJi5rYS1oZWFkZXItc3RhdHVzLWRyb3Bkb3duIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgcGFkZGluZy1yaWdodDogMTVweDtcblxuICAgIC5rYS1oZWFkZXJfX3N0YXR1c190ZXh0IHtcbiAgICAgIG1hcmdpbi1sZWZ0OiA1cHg7XG4gICAgICBmbG9hdDogcmlnaHQ7XG4gICAgfVxuXG4gICAgLmthLWhlYWRlcl9fc3RhdHVzLWljb24ge1xuICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgfVxuICB9XG59XG5cbi5rYS1oZWFkZXJfX3ZlcnNpb24tc2VsZWN0aW9uIHtcbiAgZmxvYXQ6IHJpZ2h0O1xuICBtYXJnaW4tcmlnaHQ6IDIwcHg7XG4gIG1hcmdpbi1sZWZ0OiAwO1xufVxuXG4ua2EtaGVhZGVyX19hY3Rpb24taXRlbXMge1xuICBmbG9hdDogbGVmdDtcbn1cblxuLmFsZXJ0LWJhbm5lcl9faGVhZGVyIHtcbiAgcGFkZGluZy1sZWZ0OiAwO1xuICBwYWRkaW5nLXJpZ2h0OiAyMHB4O1xufVxuXG4uaWNvbi1leGNsYW1hdGlvbl90cmlhbmdsZSB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbn1cblxuLmFsZXJ0LWJhbm5lcl9fdGl0bGUge1xuICBmbG9hdDogcmlnaHQgIWltcG9ydGFudDtcbiAgcGFkZGluZy1sZWZ0OiAyMHB4O1xuICBwYWRkaW5nLXJpZ2h0OiAwO1xufVxuXG4ua2FfZmxhZy1pY29uIHtcbiAgZmxvYXQ6IHJpZ2h0O1xufVxuXG4ua2FfZmxhZy10ZXh0IHtcbiAgbWFyZ2luLXJpZ2h0OiA2MHB4O1xuICBtYXJnaW4tbGVmdDogNTBweDtcbiAgdGV4dC1hbGlnbjogcmlnaHQ7XG59XG5cbi5hbGVydC1iYW5uZXJfX2FsZXJ0LWJ1dHRvbi1oaWRlIHtcbiAgbGVmdDogMTBweDtcbiAgcmlnaHQ6IGluaGVyaXQ7XG59XG5cbi5rYV9fYm9keSB7XG4gIG1hcmdpbi1yaWdodDogMzVweDtcbiAgbWFyZ2luLWxlZnQ6IDA7XG59XG5cbi5rYS10ZXh0X19zZWN0aW9uLXRleHQge1xuICBwYWRkaW5nOiAyMHB4IDEwcHggMzBweCA2MHB4O1xufVxuXG4ua2EtZGV0YWlsc19faWNvbiB7XG4gIHBhZGRpbmctbGVmdDogMTBweDtcbiAgcGFkZGluZy1yaWdodDogMDtcbn1cblxuLmthLW1ldGFkYXRhX19jYS1zZWN0aW9uLWl0ZW0ge1xuICBmbG9hdDogcmlnaHQ7XG4gICY6Zmlyc3QtY2hpbGQge1xuICAgIHBhZGRpbmc6IDAgMCAwIDE1cHg7XG4gIH1cbn1cblxuLmthLW1ldGFkYXRhX19jYS1zZWN0aW9uLWl0ZW0gLnB1bGwtbGVmdCwgLmthLW1ldGFkYXRhX19zZWN0aW9uIC5wdWxsLWxlZnQge1xuICBmbG9hdDogcmlnaHQgIWltcG9ydGFudDtcbn1cblxuLmthX19hdXRob3ItbmFtZSB7XG4gIGZsb2F0OiByaWdodDtcbiAgcGFkZGluZzogMCAxMHB4IDAgMDtcbn1cblxuLnJzLWdyb3VwLWxpc3QtaXRlbV9faW5mbyB7XG4gIHBhZGRpbmc6IDAgMTVweCAwIDA7XG4gIHRleHQtYWxpZ246IHJpZ2h0O1xufVxuXG4ucnMtZ3JvdXAtbGlzdC1pdGVtX19hdHRhY2htZW50LWljb24ge1xuICBmbG9hdDogcmlnaHQ7XG59XG5cbi5ycy1ncm91cC1saXN0LWl0ZW1fX2F0dGFjaG1lbnQtcmVtb3ZlLWljb24ge1xuICBsZWZ0OiA1cHg7XG4gIHJpZ2h0OiBpbmhlcml0O1xufVxuXG4ua2EtZWRpdF9fYWN0aW9uLXBhbmVsIHtcbiAgLmthLWVkaXQtYWN0aW9uLXBhbmVsX192ZXJzaW9uLXNlY3Rpb24ge1xuICAgIGZsb2F0OiByaWdodDtcbiAgfVxuXG4gIC5wdWxsLXJpZ2h0IHtcbiAgICBmbG9hdDogbGVmdDtcbiAgfVxuXG4gIC5idG4tZ3JvdXAgLnNtYWxsLWJ0bl9zZWNvbmRhcnkge1xuICAgIGZsb2F0OiByaWdodDtcbiAgfVxufVxuXG4udGlja2V0LWluY2lkZW50LWFzc2lnbmVlX19hY3Rpb24ge1xuICBwYWRkaW5nLXJpZ2h0OiA1M3B4O1xuICBwYWRkaW5nLWxlZnQ6IDA7XG59XG5cbi5rYS1tZXRhZGF0YV9fYXNzaWdubWVudCB7XG4gIHBhZGRpbmctbGVmdDogMjZweDtcbiAgcGFkZGluZy1yaWdodDogMDtcbn1cblxuLmthLW1ldGFkYXRhX19hc3NpZ25tZW50LWJ0biB7XG4gIG1hcmdpbi1yaWdodDogMTBweDtcbiAgbWFyZ2luLWxlZnQ6IC04cHg7XG59XG4vKiogRW5kIDogS25vd2xlZGdlIFByb2ZpbGUgKiovXG5cbi8qKiBTdGFydCA6IEFzc2V0IFByb2ZpbGUgKiovXG4uYXNzZXQtaXRlbS1yZW5kZXJlciAuaWNvbi10cmFzaCB7XG4gIGxlZnQ6IDA7XG4gIHJpZ2h0OiBpbmhlcml0O1xufVxuXG4uYXNzZXRfX2FjdGlvbi1iYXIge1xuICBmbG9hdDogbGVmdDtcbn1cblxuLmFzc2V0LXByb2ZpbGVfX2hlYWRlci1pbWFnZSB7XG4gZmxvYXQ6IHJpZ2h0O1xufVxuXG4uYXNzZXQtZGV0YWlsc19fZHJvcGRvd24sIC5jaGFydF9fcGVyc3BlY3RpdmUtY29udGFpbmVyIHtcbiAgdWwuZHJvcGRvd24tbWVudSAuZHJvcGRvd24taXRlbV9zZWFyY2gtYmFyIC5kcm9wZG93bi1pdGVtX3NlYXJjaCB7XG4gICAgcGFkZGluZzogMCAyNXB4IDAgMDtcbiAgfVxufVxuXG4ucHJvZmlsZS1yZWxhdGlvbl9fYnV0dG9uLWJhciAuZXhwbG9yZXItYnV0dG9ucyB7XG4gIHBhZGRpbmctbGVmdDogMzVweDtcbiAgcGFkZGluZy1yaWdodDogMDtcblxuICAuZ3JhcGg6YmVmb3JlLCAubGlzdDpiZWZvcmUge1xuICAgIHBhZGRpbmctbGVmdDogNXB4O1xuICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gIH1cbn1cblxuLnJlc291cmNlLXNsaWNlX19vdXRhZ2UtZmlsdGVyIHtcbiAgbGVmdDogMDtcbiAgcmlnaHQ6IGluaGVyaXQ7XG4gIGJvcmRlci1yaWdodDogJGRlZmF1bHQtZWxlbWVudC1ib3JkZXI7XG4gIGJvcmRlci1sZWZ0OiAwO1xuXG4gIC5kcm9wZG93bi1tZW51IHtcbiAgICBsZWZ0OiAtMXB4O1xuICAgIHJpZ2h0OiBhdXRvO1xuICB9XG59XG5cbi50YWdfX2ZpeGVkLXdpZHRoIHtcbiAgZmxvYXQ6IHJpZ2h0O1xufVxuXG4uY3JlYXRlLW91dGFnZV9fZm9ybV92YWxpZCwgLmNyZWF0ZS1vdXRhZ2VfX2Zvcm1faW52YWxpZCB7XG4gIHJpZ2h0OiAyMHB4O1xuICBsZWZ0OiBpbmhlcml0O1xufVxuXG4uYWRkLXBlb3BsZV9fdHlwZS1zZWN0aW9uIHtcbiAgZmxvYXQ6IHJpZ2h0O1xufVxuXG4uYWRkLXBlb3BsZV9fc2VhcmNoLWZvcm0ge1xuICBtYXJnaW4tbGVmdDogMjBweDtcbiAgbWFyZ2luLXJpZ2h0OiAyNDBweDtcbn1cblxuLmFkZC1wZW9wbGVfX3NlYXJjaC1iYXIge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiA5OCUgNTAlO1xuICBwYWRkaW5nLXJpZ2h0OiA0MHB4O1xuICBwYWRkaW5nLWxlZnQ6IDA7XG59XG5cbi5hZGQtcGVvcGxlLWJsYWRlX19saXN0IC5hZGQtcGVvcGxlX191c2VyLXBpYyB7XG4gIGZsb2F0OiByaWdodDtcbn1cblxuLmFkZC1wZW9wbGUtYmxhZGVfX2xpc3QsXG4uYWRkLXBlb3BsZS1ibGFkZV9fbGlzdC1maWx0ZXIge1xuICAuYWRkLXBlb3BsZV9fZGV0YWlscyB7XG4gICAgbWFyZ2luOiAwIDYwcHggMCAxMzBweDtcbiAgfVxufVxuXG4uYWRkLXBlb3BsZV9fcm9sZS1zZWN0aW9uIHtcbiAgZmxvYXQ6IHJpZ2h0O1xuICBwYWRkaW5nOiAwIDIwcHggMTBweCAwXG59XG5cbi5sYWJlbF9jb250cm9sLXdyYXAgLnB1bGwtbGVmdCB7XG4gIGZsb2F0OiByaWdodCAhaW1wb3J0YW50O1xufVxuXG4uZHJvcGRvd24tY2xlYXIge1xuICBsZWZ0OiAyNXB4O1xuICByaWdodDogYXV0bztcbn1cbiAgLyoqIEVuZCA6IEFzc2V0IFByb2ZpbGUgKiovXG5cbi8qKiBTdGFydCA6IEtub3duIGVycm9yICoqL1xuLnVwZGF0ZS1zdGF0dXNfX3ByZXYtYnV0dG9uIHtcbiAgLmljb24tYW5nbGVfbGVmdCB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZVgoLTEpO1xuICAgIC1tb3otdHJhbnNmb3JtOiBzY2FsZVgoLTEpO1xuICAgIC1tcy10cmFuc2Zvcm06IHNjYWxlWCgtMSk7XG4gICAgLW8tdHJhbnNmb3JtOiBzY2FsZVgoLTEpO1xuICAgIHRyYW5zZm9ybTogc2NhbGVYKC0xKTtcbiAgfVxufVxuXG4udXBkYXRlLXN0YXR1c19fbmV4dC1idXR0b24ge1xuICAuaWNvbi1hbmdsZV9yaWdodCB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZVgoLTEpO1xuICAgIC1tb3otdHJhbnNmb3JtOiBzY2FsZVgoLTEpO1xuICAgIC1tcy10cmFuc2Zvcm06IHNjYWxlWCgtMSk7XG4gICAgLW8tdHJhbnNmb3JtOiBzY2FsZVgoLTEpO1xuICAgIHRyYW5zZm9ybTogc2NhbGVYKC0xKTtcbiAgfVxufVxuLyoqIEVuZCA6IEtub3duIGVycm9yICoqL1xuXG4vKiogU3RhcnQgOiBDaGFuZ2UgUHJvZmlsZSAqKi9cbi50aWNrZXRfX21hbmFnZW1lbnQtY2hhbmdlIHtcbiAgcGFkZGluZzogMTVweCAyMHB4IDVweCAxMHB4O1xufVxuXG4uY2hhbmdlLWhlYWRlcl9fc3VtbWFyeSB7XG4gIHBhZGRpbmctbGVmdDogNXB4O1xuICBwYWRkaW5nLXJpZ2h0OiAwO1xufVxuXG4uY2hhbmdlLWhlYWRlcl9fc3RhdHVzLXNlbGVjdG9yIHtcbiAgZmxvYXQ6IHJpZ2h0O1xuICBwYWRkaW5nLWxlZnQ6IDE1cHg7XG4gIHBhZGRpbmctcmlnaHQ6IDA7XG59XG5cbi5jaGFuZ2UtaGVhZGVyX19sYXN0dXBkYXRlZCB7XG4gIHBhZGRpbmctbGVmdDogMTBweDtcbiAgcGFkZGluZy1yaWdodDogMDtcbiAgZmxvYXQ6IGxlZnQ7XG59XG5cbi5jaGFuZ2UtY29udHJvbHMge1xuICBmbG9hdDogbGVmdDtcbiAgLnByb2ZpbGUtYWN0aW9uLWJhcl9faXRlbS1tb3JlLWFjdGlvbnMge1xuICAgIG1hcmdpbi1sZWZ0OiAxNXB4O1xuICB9XG59XG5cbi5jaGFuZ2UtaGVhZGVyX19zbGEtc2VjdGlvbiB7XG4gIHBhZGRpbmc6IDVweCAyMHB4IDVweCAwcHg7XG59XG5cbi5yZWxlYXNlLWNvbnRyb2xzIHtcbiAgbGVmdDogMDtcbiAgcmlnaHQ6IGF1dG87XG5cbiAgLnByb2ZpbGUtYWN0aW9uLWJhcl9faXRlbS1tb3JlLWFjdGlvbnMge1xuICAgIG1hcmdpbi1sZWZ0OiAxNXB4O1xuICB9XG59XG5cbi5jaGFuZ2UtZGV0YWlsc19fc2VjdGlvbiB7XG4gIC50aWNrZXQtYXNzaWduZWVfX2RldGFpbHMge1xuICAgIHdpZHRoOiA4OSUgIWltcG9ydGFudDtcbiAgfVxufVxuXG4udGlja2V0LXN1bW1hcnlfX2NoYXJhY3Rlci1saW1pdCB7XG4gIGxlZnQ6IDEycHg7XG4gIHJpZ2h0OiBhdXRvO1xufVxuXG4udGlja2V0X19jaGFuZ2UtcmVxdWVzdGVkRm9yIHtcbiAgLml0ZW0taW5wdXRfX2RlbGV0ZS1idG4sIC5sb2FkaW5nLXNwaW5uZXIge1xuICAgIGxlZnQ6IDEwcHg7XG4gICAgcmlnaHQ6IGF1dG87XG4gIH1cbn1cblxuLmFzc2lnbi1saXN0X19pdGVtLXBhcmVudC1pY29uIC5pY29uLXRyaWFuZ2xlX3JpZ2h0IHtcbiAgdHJhbnNmb3JtOiBzY2FsZVgoLTEpO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG59XG5cbi5jcmVhdGUtY2hhbmdlLXdpemFyZF9fcmlza19saXN0IC5saXN0LWdyb3VwIC5saXN0LWdyb3VwLWl0ZW0ge1xuICBwYWRkaW5nLXJpZ2h0OiAwO1xuICBwYWRkaW5nLWxlZnQ6IGluaGVyaXQ7XG4gIHNwYW4ge1xuICAgIHBhZGRpbmctcmlnaHQ6IDQwcHg7XG4gICAgcGFkZGluZy1sZWZ0OiBpbmhlcml0O1xuICB9XG59XG5cbi5jcmVhdGUtY2hhbmdlLXdpemFyZF9fcmlza19saXN0IC5pY29uLWFuZ2xlX3JpZ2h0IHtcbiAgdHJhbnNmb3JtOiBzY2FsZVgoLTEpO1xufVxuXG4ucHJvZmlsZS1yZWxhdGlvbl9faXRlbXMtZmlsdGVyIHtcbiAgZmxvYXQ6IGxlZnQ7XG4gIG1hcmdpbi1sZWZ0OiAyMHB4O1xuICBtYXJnaW4tcmlnaHQ6IGluaGVyaXQ7XG5cbiAgLmRyb3Bkb3duLW1lbnUge1xuICAgIGxlZnQ6IDA7XG4gICAgcmlnaHQ6IGF1dG87XG4gIH1cblxuICAuZHJvcGRvd24taW5wdXRfX2J1dHRvbiB7XG4gICAgbWFyZ2luLWxlZnQ6IDE1cHg7XG4gICAgbWFyZ2luLXJpZ2h0OiBpbmhlcml0O1xuICB9XG59XG5cbi5jaGFuZ2Utd2l6YXJkX19kYXRlc19jdXN0b20tZmllbGQtYXJlYSB7XG4gIHBhZGRpbmctcmlnaHQ6IDQwcHg7XG59XG5cbi5jcmVhdGUtY2hhbmdlLXdpemFyZF9fdGFiLWludmFsaWQge1xuICBsZWZ0OiA1cHg7XG4gIHJpZ2h0OiB1bnNldDtcbn1cblxuLmFzc2lnbm1lbnRfX2VkaXQtYnV0dG9uIHtcbiAgbGVmdDogMTBweDtcbiAgcmlnaHQ6IGluaGVyaXQ7XG59XG5cbi5hdHRhY2htZW50cy1wcmV2aWV3ZXJfX2ZpbGVzLWxpc3RfaXRlbSArIC5hdHRhY2htZW50cy1wcmV2aWV3ZXJfX2ZpbGVzLWxpc3RfaXRlbSB7XG4gIG1hcmdpbi1sZWZ0OiA1MHB4O1xufVxuXG4udGlja2V0X19wbGFucyB7XG4gIHBhZGRpbmc6IDIwcHggMjBweCAwIDA7XG59XG5cbi50aWNrZXRfX3BsYW5zX2xpc3QgPiBsaSB7XG4gIGZsb2F0OiByaWdodDtcbn1cblxuLmF0dGFjaG1lbnRzLXByZXZpZXdlcl9fY2xvc2UtYnV0dG9uIHtcbiAgbGVmdDogMTBweDtcbiAgcmlnaHQ6IGluaGVyaXQ7XG59XG5cbi5hdHRhY2htZW50cy1wcmV2aWV3ZXJfX2NvbnRhaW5lcl9sZWZ0IHtcbiAgZmxvYXQ6IHJpZ2h0O1xufVxuXG4uYXR0YWNobWVudHMtcHJldmlld2VyX19jb250YWluZXJfcmlnaHQge1xuICBmbG9hdDogbGVmdDtcbn1cblxuLmF0dGFjaG1lbnRzLXByZXZpZXdlcl9fZmlsZXMtbGlzdF9pdGVtICsgLmF0dGFjaG1lbnRzLXByZXZpZXdlcl9fZmlsZXMtbGlzdF9pdGVtIHtcbiAgbWFyZ2luLWxlZnQ6IGluaGVyaXQ7XG4gIG1hcmdpbi1yaWdodDogNTBweDtcbn1cblxuLmNuZy13aXpfX2RvY3VtZW50c19zZWxlY3Rpb24tbGlzdC1jb250cm9sIGJ1dHRvbiB7XG4gIGxlZnQ6IDA7XG4gIHJpZ2h0OiBpbmhlcml0O1xufVxuXG4uY25nLXdpel9fZG9jdW1lbnRzLWdyaWQtaXRlbSAuY25nLXdpel9fZG9jdW1lbnRzLWl0ZW1fcGxhbi1yZW1vdmUtdHJpZ2dlciB7XG4gIGxlZnQ6IDklO1xuICByaWdodDogaW5oZXJpdDtcbn1cblxuLnRpY2tldF9fcGxhbnMtZWRpdF9jb250cm9sIHtcbiAgbGVmdDogMDtcbiAgcmlnaHQ6IGluaGVyaXQ7XG59XG5cbi50aWNrZXQtc3VtbWFyeV9fY29udGVudCAuZHJvcC16b25lIC5kcm9wLXpvbmVfX2hpZ2hsaWdodCB7XG4gIC5kcm9wLXpvbmVfX3RpcC1pbmxpbmUge1xuICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuICB9XG5cbiAgLmF0dGFjaGVkLWZpbGVzIHtcbiAgICB0ZXh0LWFsaWduOiByaWdodDtcbiAgICAuYXR0YWNobWVudF9fZGlzbWlzcyB7XG4gICAgICBsZWZ0OiA1cHg7XG4gICAgICByaWdodDogaW5oZXJpdDtcbiAgICB9XG4gIH1cbn1cblxuLmFwcHJvdmFsLWJhbm5lcl9fc3VtbWFyeSB7XG4gIGZsb2F0OiBsZWZ0O1xuICAuaWNvbi1hbmdsZV9yaWdodCB7XG4gICAgdHJhbnNmb3JtOiBzY2FsZVgoLTEpO1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgfVxufVxuXG4uYXBwcm92YWwtYmFubmVyX19oZWFkZXIge1xuICAucHVsbC1sZWZ0IHtcbiAgICBmbG9hdDogcmlnaHQgIWltcG9ydGFudDtcbiAgfVxufVxuXG4uYXBwcm92YWwtYmFubmVyX19hY3Rpb25zIHtcbiAgYnV0dG9uIHtcbiAgICBmbG9hdDogcmlnaHQ7XG4gIH1cbn1cblxuLmFwcHJvdmFsLWJhbm5lciB7XG4gIHBhZGRpbmctcmlnaHQ6IDIwcHg7XG4gIHBhZGRpbmctbGVmdDogMDtcbn1cblxuLmJ0bi1ncm91cCB7XG4gIGJ1dHRvbiArIGJ1dHRvbiB7XG4gICAgbWFyZ2luLXJpZ2h0OiAxcHg7XG4gICAgbWFyZ2luLWxlZnQ6IDA7XG4gIH1cbn1cblxuLmltcGFjdC1zaW11bGF0b3JfX3RvcC1iYXIgLnRleHQtcmlnaHR7XG5cdHRleHQtYWxpZ246IGxlZnQ7XG59XG4vKiogRW5kIDogQ2hhbmdlIFByb2ZpbGUgKiovXG5cbi8qKiBTdGFydCA6IEJyb2FkY2FzdCBkaXNwbGF5ICoqL1xuLmZlZWQtaXRlbSB7XG4gIHBhZGRpbmc6IDEwcHggMHB4IDEwcHggNXB4O1xufVxuXG4uZmVlZC1pdGVtX19zbGEtYmFyIHtcbiAgcmlnaHQ6IDBweDtcbiAgbGVmdDogYXV0bztcbn1cbi8qKiBFbmQgOiBCcm9hZGNhc3QgZGlzcGxheSAqKi9cblxuLyoqIFN0YXJ0IDogUHJvYmxlbSBJbnZlc3RpZ2F0aW9uICoqL1xuLmNyZWF0ZS1jaGFuZ2Utd2l6YXJkX19pbXBhY3RlZC1hcmVhIHtcbiAgcGFkZGluZzogM3B4IDEwcHggM3B4IDI2cHg7XG4gIG1hcmdpbi1sZWZ0OiA4cHg7XG4gIG1hcmdpbi1yaWdodDogaW5oZXJpdDtcbn1cblxuLmNyZWF0ZS1jaGFuZ2Utd2l6YXJkX19pbXBhY3RlZC1hcmVhOmxhc3QtY2hpbGQge1xuICBtYXJnaW4tcmlnaHQ6IDA7XG59XG5cbi50aWNrZXRfX3Byb2JsZW0tZGV0YWlscyAuZmQtc2VsZWN0b3JfX2ZkLWZpZWxkIHtcbiAgJjpub3QoOmxhc3Qtb2YtdHlwZSkge1xuICAgIC5pY29uLWNyb3NzIHtcbiAgICAgIHJpZ2h0OiBhdXRvO1xuICAgIH1cbiAgfVxufVxuLyoqIFN0YXJ0IDogUHJvYmxlbSBJbnZlc3RpZ2F0aW9uICoqL1xuXG4vKiogU3RhcnQgOiBUaWNrZXQgUHJvZmlsZSAtIENvbW1vbiBNb2R1bGVzICAqKi9cblxuLmxpbmstYmxhZGVfX2l0ZW0tY2hlY2sge1xuICBmbG9hdDogcmlnaHQ7XG59XG5cbi5saW5rLWJsYWRlX19pdGVtLWljb24ge1xuICBmbG9hdDogcmlnaHQ7XG59XG5cbi5saW5rLWJsYWRlX19pdGVtLWRldGFpbHMge1xuICBtYXJnaW4tcmlnaHQ6IDEwOHB4O1xuICBtYXJnaW4tbGVmdDogMDtcbn1cblxuLmxpbmstYmxhZGVfX3JlbGF0aW9uc2hpcC10eXBlIHtcbiAgZmxvYXQ6IHJpZ2h0O1xuICBwYWRkaW5nLXJpZ2h0OiAyMHB4O1xuICBwYWRkaW5nLWxlZnQ6IDA7XG59XG5cbi5hc3NpZ24tc2VhcmNoIHtcbiAgcGFkZGluZzogMCA0MHB4IDAgMDtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogcmlnaHQgMTBweCB0b3AgNTAlO1xufVxuXG4uYXNzaWduLWZpbHRlcl9yaWdodC1tb3N0IHtcbiAgdWwuZHJvcGRvd24tbWVudSB7XG4gICAgICBsZWZ0OiAwO1xuICAgICAgcmlnaHQ6IGF1dG87XG4gIH1cbn1cblxuLnByb2ZpbGVfX3N1cHBvcnQtcGFuZWwgLnJzIHtcbiAgb3ZlcmZsb3cteDogaGlkZGVuO1xufVxuXG4ucmVzb3VyY2UtcHJldmlld19fY29udGFpbmVyIC50aWNrZXRfX2hlYWRlciB7XG4gIHBhZGRpbmctbGVmdDogMjAwcHg7XG4gIHBhZGRpbmctcmlnaHQ6IGluaGVyaXQ7XG59XG5cbi5yZXNvdXJjZS1wcmV2aWV3LW9wZW5lZCB7XG4gIC5wcm9maWxlX19zdXBwb3J0LXBhbmVsLCAuc21hcnQtcmVjb3JkZXJfX3N1cHBvcnQtcGFuZWwge1xuICAgIG1hcmdpbi1yaWdodDogLSRyZXNvdXJjZS1wcmV2aWV3LXdpZHRoO1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgIGZsb2F0OiByaWdodDtcbiAgfVxufVxuXG4ucmVzb3VyY2UtcHJldmlldyB7XG4gIHBhZGRpbmctbGVmdDogNTBweDtcbiAgcGFkZGluZy1yaWdodDogMDtcbiAgcmlnaHQ6IDEwMCU7XG4gIGxlZnQ6IGluaGVyaXQ7XG4gIGJvcmRlci1sZWZ0OiAwO1xuICBib3JkZXItcmlnaHQ6ICRkZWZhdWx0LWVsZW1lbnQtYm9yZGVyO1xufVxuXG4uc2xhLWljb24ge1xuICBtYXJnaW4tcmlnaHQ6IC0xMnB4O1xufVxuXG4ucnMtZ3JvdXAtbGlzdC1pdGVtX19pY29uX2FjdGlvbiB7XG4gICYgKyAucnMtZ3JvdXAtbGlzdC1pdGVtX19pY29uLCAmICsgLnJzLWdyb3VwLWxpc3QtaXRlbV9faWNvbl9vdXRhZ2Uge1xuICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICBwYWRkaW5nLXJpZ2h0OiAkcnMtaXRlbS1kZWZhdWx0LXBhZGRpbmc7XG4gIH1cbn1cblxuLml0ZW0taW5wdXRfX2RlbGV0ZS1idG4ge1xuICBsZWZ0OiA0cHg7XG4gIHJpZ2h0OiBhdXRvO1xufVxuXG4uYWN0aW9uLWJsYWRlX190aWNrZXQtdGVtcGxhdGUtcHJldmlldywgLmFjdGlvbi1ibGFkZV9faW5jaWRlbnQtdGVtcGxhdGUtcHJldmlldyxcbi5hY3Rpb24tYmxhZGVfX3dvcmtvcmRlci10ZW1wbGF0ZS1wcmV2aWV3LCAuYWN0aW9uLWJsYWRlX190YXNrLXRlbXBsYXRlLXByZXZpZXcge1xuXHRsZWZ0OiBpbmhlcml0O1xuXHRyaWdodDogNTAlO1xufVxuXG4vKiogU3RhcnQgOiBBY3Rpdml0eSBOb3RlICoqL1xuLnRpbWVsaW5lLXdpZGdldF9fYWRkLW5vdGUtaW5wdXQge1xuICBwYWRkaW5nLXJpZ2h0OiAxMHB4O1xuICBwYWRkaW5nLWxlZnQ6IDA7XG59XG4udGltZWxpbmUtaXRlbV9fbWFpbi1jb250ZW50IHtcbiAgbWFyZ2luLXJpZ2h0OiA3MHB4O1xuICBtYXJnaW4tbGVmdDogMDtcbn1cblxuLnRpbWVsaW5lLWl0ZW1fX2hlYWRsaW5lIHtcbiAgcGFkZGluZzogNXB4IDAgNXB4IDMwcHg7XG59XG5cbi5mZWVkLWl0ZW1fX3B1YmxpYyB7XG4gIGxlZnQ6IDE1cHg7XG4gIHJpZ2h0OiBpbmhlcml0O1xufVxuXG4udGltZWxpbmUtaXRlbV9fbWVzc2FnZSB7XG4gIHBhZGRpbmctbGVmdDogMzBweDtcbiAgcGFkZGluZy1yaWdodDogMDtcbn1cblxuLnRpbWVsaW5lLW5vdGVfX2NvbnRhaW5lcntcbiAgdGV4dC1hbGlnbjogcmlnaHQ7XG59XG5cbi50aW1lbGluZS1ub3RlX19wbGFjZWhvbGRlciB7XG4gIHJpZ2h0OiAxcHg7XG4gIGxlZnQ6IGF1dG87XG59XG5cbi50aW1lbGluZS1ub3RlX190eXBlIHtcbiAgZmxvYXQ6IGxlZnQ7XG59XG5cbi50aW1lbGluZS1ub3RlX19hY2Nlc3Mge1xuICBmbG9hdDogcmlnaHQ7XG4gIHBhZGRpbmctcmlnaHQ6IDBweDtcbn1cblxuLnRpbWVsaW5lLW5vdGVfX2NvbnRyb2xzLWNvbnRhaW5lciB7XG4gIGZsb2F0OiByaWdodDtcbn1cblxuLnRpbWVsaW5lLW5vdGVfX2J0bi1jb250YWluZXIge1xuICBmbG9hdDogbGVmdDtcbn1cblxuLnRpbWVsaW5lLW5vdGVfY29udHJvbCwgLnRpbWVsaW5lLW5vdGVfY29udHJvbF9kaXNhYmxlZCB7XG4gIGZsb2F0OiByaWdodDtcbn1cblxuLnRpbWVsaW5lLW5vdGVfX3R5cGUtc2VsZWN0b3IgLmRyb3Bkb3duLW1lbnUge1xuICBsZWZ0OiAtOHB4O1xuICByaWdodDogYXV0bztcbn1cblxuLmZlZWQtaXRlbV9fcmVzcG9uc2UtY29udGVudCwgLmZlZWQtaXRlbV9fcmVzcG9uc2UtZGF0ZS10aW1lIHtcbiAgbWFyZ2luLXJpZ2h0OiA0MHB4O1xuICBtYXJnaW4tbGVmdDogMDtcbn1cblxuLnRpbWVsaW5lLXdpZGdldF9fbWVudSAuZHJvcGRvd24tbWVudSwgLnRpbWVsaW5lLXdpZGdldF9fbWVudV9maWx0ZXJzLWFwcGxpZWQgLmRyb3Bkb3duLW1lbnUge1xuICByaWdodDogYXV0bztcbiAgbGVmdDogLTFweDtcbiAgdGV4dC1hbGlnbjogcmlnaHQ7XG5cbiAgLmRyb3Bkb3duLWl0ZW1fc2VsZWN0ZWRbcm9sZT1cIm1lbnVpdGVtY2hlY2tib3hcIl06OmJlZm9yZSB7XG4gICAgbWFyZ2luLXJpZ2h0OiAwO1xuICB9XG59XG4vKiogRW5kIDogQWN0aXZpdHkgTm90ZSAqKi9cblxuLyoqIEVuZCA6IFRpY2tldCBQcm9maWxlIC0gQ29tbW9uIE1vZHVsZXMgICoqL1xuXG4vLy0tIENvbnNvbGUgc3BlY2lmaWMgY2xhc3NlcyBvdmVycmlkZSAtLS8vXG4udGMtbWV0cmljX19zdGF0cy1iYXIge1xuICBtYXJnaW4tbGVmdDogMDtcbiAgbWFyZ2luLXJpZ2h0OiA2MzVweDtcbn1cbi5tb2JpbGUgLnRjLW1ldHJpY19fc3RhdHMtYmFyIHtcbiAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gIG1hcmdpbi1yaWdodDogMHB4O1xufVxuLnRjLW1ldHJpY19fbWFpbi1iYXIge1xuICBwYWRkaW5nOiAwIDIwcHggMCAwO1xufVxuLm1vYmlsZSAudGMtbWV0cmljX19tYWluLWJhciB7XG4gIHBhZGRpbmc6IDAgOHB4IDAgMDtcbn1cbi50Yy1tZXRyaWNfX2l0ZW1fbXksIC50Yy1tZXRyaWNfX2l0ZW1fY3JpdGljYWwsIC50Yy1tZXRyaWNfX2l0ZW1fbmV3LCAudGMtbWV0cmljX19pdGVtX29wZW4sIC50Yy1tZXRyaWNfX2l0ZW1fYWxsLCAudGMtbWV0cmljX19pdGVtX25lZWRzQXR0ZW50aW9uIHtcbiAgYm9yZGVyLWxlZnQ6IG5vbmU7XG4gIGJvcmRlci1yaWdodDogJGRlZmF1bHQtZWxlbWVudC1ib3JkZXI7XG59XG4udGNfX3VzZXItZmlsdGVyIHtcbiAgcGFkZGluZzogMCAyMHB4IDAgMDtcbiAgLmRyb3Bkb3duLWlucHV0IHtcbiAgICAudXNlci1wcmVzZXQtbmFtZXtcbiAgICAgIGZsb2F0OnJpZ2h0O1xuICAgIH1cbiAgICAucHJlc2V0LWFjdGlvbnN7XG4gICAgICBmbG9hdDpsZWZ0O1xuICAgIH1cbiAgfVxufVxuXG4ubW9iaWxlIC50Y19fdXNlci1maWx0ZXIgLmRyb3Bkb3duLW1lbnUge1xuICBsZWZ0OiAwO1xuICByaWdodDogYXV0bztcbn1cblxuLnRjLXJlZnJlc2gtY29uc29sZSwgLnRjLW1ldHJpY19fbWFpbi1iYXIsIC50Y19fcGFnZS1uYW1lLCAudGMtaGVhZGVyX19tYWluLWJhciwgLnRjX19maWx0ZXItdG9nZ2xlLCAudGNfX3NlbGVjdGVkLWZpbHRlcnMge1xuICBmbG9hdDogcmlnaHQ7XG59XG4ubW9iaWxlIC50Yy1yZWZyZXNoLWNvbnNvbGUge1xuICBmbG9hdDogbGVmdDtcbn1cbi50Y19fZmlsdGVyLWFjdGlvbnMge1xuICBmbG9hdDogbGVmdDtcbiAgcGFkZGluZy1sZWZ0OiAwO1xufVxuLnRjX19maWx0ZXItdG9nZ2xlID4gYnV0dG9uIHtcbiAgcGFkZGluZzogMCAyMHB4IDAgMTBweDtcbn1cblxuLnRjLWZpbHRlci1jdXN0b20tdHlwZWFoZWFkX19hZGRpdGlvbmFsLWluZm8ge1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xufVxuXG4uZHJvcGRvd24taXRlbV9faGVhZGVyX2FjY29yZGlvbiwgLmRyb3Bkb3duLWl0ZW1fX2hlYWRlcl9leHBhbmRlZCwgLmRyb3Bkb3duLWl0ZW1fX2hlYWRlcl9jb2xsYXBzZWQge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBsZWZ0IDEwcHggY2VudGVyO1xufVxuXG5cbi50Y19fZmlsdGVyLXRvZ2dsZSAudGMtZmlsdGVyLW9wdGlvbiwgLnRjX19maWx0ZXItdG9nZ2xlIC50Yy1maWx0ZXItb3B0aW9uX3NlbGVjdGVkIHtcbiAgLmRyb3Bkb3duLW1lbnUge1xuICAgIHRvcDogMzhweCAhaW1wb3J0YW50O1xuICB9XG4gIC5kcm9wZG93bi1pdGVtX3JhbmdlLWJhciB7XG4gICAgLmRyb3Bkb3duLWl0ZW1fZmlsdGVyLXdhcm5pbmcgPiBpIHtcbiAgICAgIGZsb2F0OiByaWdodDtcbiAgICAgIG1hcmdpbi10b3A6IDVweDtcbiAgICAgIHBhZGRpbmc6IDAgMCAwIDEwcHg7XG4gICAgfVxuXG5cblxuICAgIC5yYW5nZS10ZW1wbGF0ZSB7XG4gICAgICA+IGlucHV0IHtcbiAgICAgICAgbWFyZ2luOiAwIDAgMCAxMHB4O1xuICAgICAgfVxuXG4gICAgICAuY3JpdGVyaWEtcm93IHtcbiAgICAgICAgLmNyaXRlcmlhLXJvd19fYWN0aXZhdGUge1xuICAgICAgICAgIGZsb2F0OiByaWdodDtcbiAgICAgICAgICBtYXJnaW46IC0zcHggMCAwIDVweDtcbiAgICAgICAgfVxuICAgICAgICAuY3JpdGVyaWEtcm93X190aXRsZSwgLmRyb3Bkb3duLWlucHV0IHtcbiAgICAgICAgICBmbG9hdDogcmlnaHQ7XG4gICAgICAgICAgbWFyZ2luOiAwIDAgMCAxMHB4O1xuICAgICAgICB9XG5cbiAgICAgICAgLmNyaXRlcmlhLXJvd19faW5wdXQtY29udGFpbmVyIC5kcm9wZG93bi1tZW51IHtcbiAgICAgICAgICBsZWZ0OiAxMnB4ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgcmlnaHQ6IDE3MHB4O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi50Y19fcmliYm9uLWJhciB7XG4gIHBhZGRpbmctcmlnaHQ6IDE2cHg7XG4gIHBhZGRpbmctbGVmdDogMDtcbn1cblxuLnRjX3NlbGVjdGVkLWl0ZW1zLWNvdW50ZXIge1xuICBmbG9hdDogbGVmdDtcbiAgbWFyZ2luLXJpZ2h0OiAwO1xufVxuXG4udGFnX3JlbW92YWJsZSB7XG4gIHBhZGRpbmc6IDAgMTBweCAwIDJweDtcbiAgbWFyZ2luOiAwIDAgMCAxMHB4O1xufVxuXG4udGFnIHtcbiAgbWFyZ2luOiAwIDAgMCAxMHB4O1xufVxuXG4uZHJvcGRvd24taXRlbV9fY29ubmVjdGVkLXZhbHVlIHtcbiAgbGVmdDogMzVweDtcbiAgcmlnaHQ6IGluaGVyaXQ7XG59XG5cbi5kcm9wZG93bi1pdGVtX2R1YWwtbGluZSB7XG5cdC5kcm9wZG93bi1pdGVtX19jb25uZWN0ZWQtdmFsdWUge1xuXHRcdGxlZnQ6IGF1dG87XG4gICAgICAgIHRleHQtYWxpZ246IHJpZ2h0ICFpbXBvcnRhbnQ7XG5cdH1cbn1cblxuLmNhdGVnb3J5LWVkaXRvci1saW5rc19fYWRkLWJ0biB7XG5cdG1hcmdpbi1yaWdodDogMHB4O1xufVxuXG4udGFnX19yZW1vdmUge1xuICBtYXJnaW46IDAgMTJweCAwIDA7XG4gIHVuaWNvZGUtYmlkaTogZW1iZWQ7XG59XG5cbi50Yy1zZWxlY3RlZC1maWx0ZXJfX2l0ZW0tZGV0YWlsIHtcbiAgZmxvYXQ6IHJpZ2h0O1xufVxuXG4udGMtc2VsZWN0ZWQtZmlsdGVyX19pdGVtX3N0YXRpYyB7XG4gIG1hcmdpbjogMCAwIDEwcHggMTBweDtcbn1cblxuLnNhdmUtZmlsdGVyLXByZXNldCB7XG4gIC5zZWFyY2hfX2ZpbHRlciB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgbWFyZ2luLWxlZnQ6IDA7XG5cbiAgICAuc2VhcmNoX19maWx0ZXItdG9nZ2xlIHtcbiAgICAgIHBhZGRpbmc6IDAgMCAwIDVweDtcbiAgICB9XG5cbiAgICAuc2VhcmNoX19maWx0ZXItZHJvcGRvd24uZHJvcGRvd24tbWVudSB7XG4gICAgICBsZWZ0OiAwICFpbXBvcnRhbnQ7XG4gICAgICByaWdodDogYXV0bztcbiAgICB9XG4gIH1cbn1cblxuLnNhdmUtZmlsdGVyLXByZXNldF9fY2hlY2tib3gtbGFiZWwge1xuICBwYWRkaW5nOiAyMHB4IDAgMCAxMHB4O1xufVxuXG4uc2F2ZS1maWx0ZXItcHJlc2V0X19jaGVja2JveCB7XG4gIG1hcmdpbi1yaWdodDogYXV0byAhaW1wb3J0YW50O1xuICBtYXJnaW4tbGVmdDogMTJweCAhaW1wb3J0YW50O1xufVxuXG4uc2F2ZS1maWx0ZXItcHJlc2V0X19jb2x1bW4tdGFibGUge1xuICAudGMtc2VsZWN0ZWQtZmlsdGVyX19pdGVtX3N0YXRpYyB7XG4gICAgbWFyZ2luOiAwO1xuXG4gICAgLmljb24tZG90cyB7XG4gICAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gICAgICBtYXJnaW4tbGVmdDogMTBweDtcbiAgICB9XG4gIH1cbn1cblxuLnRjX19hY2Nlc3NpYmxlIC50Y19fY2h1bmstc2VjdGlvbiAudGNfX3Jvdy1jb3VudCB7XG4gIGZsb2F0OiByaWdodDtcbiAgcGFkZGluZzogNXB4IDVweCA1cHggMTBweDtcbn1cblxuLyoqIGNvbHVtbiBjb25maWcgYmxhZGUgc3R5bGVzICovXG4uY29sdW1uLWNvbmZpZ3VyYXRvcl9fdGlwIHtcbiAgcGFkZGluZzogNHB4IDE4cHggMCAwO1xufVxuXG4uY29sdW1uLWNvbmZpZ3VyYXRvcl9fZmlsdGVyLWVsZW1lbnQge1xuICAuZHJvcGRvd24taXRlbV9zZWxlY3RlZFtyb2xlPVwibWVudWl0ZW1jaGVja2JveFwiXTo6YmVmb3JlLCAuY25nLXdpel9fZG9jdW1lbnRzX3NlbGVjdGlvbi1pdGVtLXNlbGVjdGVkW3JvbGU9XCJtZW51aXRlbWNoZWNrYm94XCJdOjpiZWZvcmUge1xuICAgIG1hcmdpbjogMCAwIDAgNXB4O1xuICB9XG5cbiAgLmRyb3Bkb3duLW1lbnUge1xuICAgIC5kcm9wZG93bi1pdGVtX3NlbGVjdGVkW3JvbGU9XCJtZW51aXRlbWNoZWNrYm94XCJdOjpiZWZvcmUsIC5jbmctd2l6X19kb2N1bWVudHNfc2VsZWN0aW9uLWl0ZW0tc2VsZWN0ZWRbcm9sZT1cIm1lbnVpdGVtY2hlY2tib3hcIl06OmJlZm9yZSB7XG4gICAgICBtYXJnaW46IDAgMCAwIDVweDtcbiAgICB9XG4gIH1cbn1cblxuLmNvbHVtbi1jb25maWd1cmF0b3JfX2NvbHVtbiAudGFnX19yZW1vdmUge1xuICBmbG9hdDogbGVmdDtcbn1cblxuLmNvbHVtbi1jb25maWd1cmF0b3JfX2NvbHVtbiB7XG4gIC5pY29uLWRvdHMge1xuICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICBtYXJnaW4tbGVmdDogMTBweDtcbiAgfVxufVxuXG4vLy0tIGVuZCBvdmVycmlkZSBjb25zb2xlIHN0eWxlcyAtLS8vXG5cbi8vc3RhcnQgb3ZlcnJpZGUgaGVhZGVyIG5hdiBzdHlsZXNcbi5oZWFkZXJfX25hdmlnYXRpb24tYmFyX2l0ZW0sIC5uYXZpZ2F0aW9uLWJhcl9faXRlbXMtY29udGFpbmVyLCAuaGVhZGVyX19sb2dvLCAubmF2aWdhdGlvbi1iYXJfX3NlYXJjaCwgLmhpc3RvcnktbWVudSwgLmNoYXQtbm90aWZpY2F0aW9ucywgLmhlYWRlcl9fdXNlci1uYW1lLCAuaGVhZGVyX191c2VyLWF2YXRhciwgLmhpc3RvcnktaGVhZGVyX190eXBlLCAuaGlzdG9yeS1tZW51X19uby1oaXN0b3J5IHtcbiAgZmxvYXQ6IHJpZ2h0O1xufVxuXG4uaGVhZGVyX191c2VyIHtcbiAgZmxvYXQ6IGxlZnQ7XG59XG5cbi5oZWFkZXJfX2FwcC1uYW1lIHtcblx0bWFyZ2luOiAtMXB4IDAgMCAyMHB4O1xufVxuXG4ubmF2aWdhdGlvbi1iYXJfX2l0ZW1zLWNvbnRhaW5lciB7XG5cdG1hcmdpbi1sZWZ0OiAwO1xuXHRtYXJnaW4tcmlnaHQ6IDhweDtcbn1cblxuLmhlYWRlcl9fbG9nbyB7XG5cdGJhY2tncm91bmQtcG9zaXRpb246IDE1cHg7XG59XG5cbi5oZWFkZXJfX2FwcC1uYW1lOmFmdGVyIHtcbiAgcmlnaHQ6IDM1MHB4O1xufVxuXG4ubmF2aWdhdGlvbi1iYXJfX2l0ZW1zLWNvbnRhaW5lciAucHVsbC1sZWZ0IHtcbiAgZmxvYXQ6IHJpZ2h0ICFpbXBvcnRhbnQ7XG59XG5cbi5oZWFkZXItc2VhcmNoIHtcbiAgcGFkZGluZy1sZWZ0OiA0MHB4O1xuICBwYWRkaW5nLXJpZ2h0OiAwcHg7XG59XG5cbi5zZWFyY2hfX2Nsb3NlIHtcbiAgbGVmdDogMHB4O1xuICByaWdodDogYXV0bztcbn1cblxuLmNoYXQtbm90aWZpY2F0aW9ucyAuZHJvcGRvd24tbWVudSwgLmhpc3RvcnktbWVudV9fYnRuLWNsZWFyLWhpc3RvcnksIC5oZWFkZXJfX3VzZXItbmFtZSAuZHJvcGRvd24tbWVudSAge1xuICByaWdodDogYXV0bztcbiAgbGVmdDogMCAhaW1wb3J0YW50O1xufVxuXG4uaGlzdG9yeS1tZW51IHtcbiAgLmRyb3Bkb3duLW1lbnUge1xuICAgIGxlZnQ6IC0wLjVweCAhaW1wb3J0YW50O1xuICAgIHJpZ2h0OiBhdXRvO1xuICB9XG59XG5cbi5jaGF0LWxpc3RfX2hpc3RvcnktbGluayB7XG4gIHBhZGRpbmc6IDBweCAxMHB4IDBweCAwcHg7XG59XG5cbi51c2VyLXNldHRpbmdzX19ncm91cF9pdGVtLXRleHQge1xuICBwYWRkaW5nLWxlZnQ6IDBweDtcbiAgcGFkZGluZy1yaWdodDogMTFweDtcbn1cblxuLmFjdGl2ZS1zdGF0dXM6YWZ0ZXIge1xuICBmbG9hdDogbGVmdDtcbn1cblxuLmFib3V0X19jYXB0aW9uIHtcbiAgYmFja2dyb3VuZDogdXJsKCcuLi9pbWcvYm1jLWxvZ28tcG9zLnBuZycpIG5vLXJlcGVhdCBjZW50ZXIgbGVmdDtcbn1cblxuLnRlbXBsYXRlLWNob29zZXItZHJvcGRvd24taXRlbV9fdGl0bGUge1xuICBwYWRkaW5nLXJpZ2h0OiA5cHg7XG4gIHBhZGRpbmctbGVmdDogMHB4O1xufVxuLy9lbmQgb3ZlcnJpZGUgaGVhZGVyIG5hdiBzdHlsZXNcblxuXG4vKiogY3JlYXRlIGNoYW5nZSBzdHlsZXMgKi9cblxuLmNoYW5nZS10ZW1wbGF0ZV9fcHJldmlldywgLnJlbGVhc2UtdGVtcGxhdGVfX3ByZXZpZXcge1xuICBsZWZ0OiAwO1xuICByaWdodDogNjEwcHg7XG4gIGJvcmRlci1sZWZ0OiBub25lO1xuICBib3JkZXItcmlnaHQ6ICRkZWZhdWx0LWVsZW1lbnQtYm9yZGVyO1xufVxuXG4uY2hhbmdlLXRlbXBsYXRlX19pbnB1dC1maWVsZCwgLnJlbGVhc2UtdGVtcGxhdGVfX2lucHV0LWZpZWxkIHtcbiAgbWFyZ2luOiAyMHB4IDIwcHggMCAwO1xuICAuZHJvcGRvd24taXRlbV9zZWFyY2gge1xuICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gIH1cbn1cblxuLmNoYW5nZS10ZW1wbGF0ZV9fc2VhcmNoLCAuY3JlYXRlLWNoYW5nZV9fY29udGVudC1zY3JhdGNoLCAucmVsZWFzZS10ZW1wbGF0ZV9fc2VhcmNoIHtcbiAgLml0ZW0taW5wdXRfX2RlbGV0ZS1idG4ge1xuICAgIHJpZ2h0OiAtMzNweDtcbiAgfVxufVxuXG4uY2hhbmdlLXRlbXBsYXRlX19zZWFyY2gtaW5wdXQsIC5yZWxlYXNlLXRlbXBsYXRlX19zZWFyY2gtaW5wdXQge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiByaWdodCAxMHB4IHRvcCA1MCU7XG59XG5cbi5jcmVhdGUtY2hhbmdlX19pbnB1dC1jb250YWluZXIge1xuICAuZHJvcGRvd24tbWVudSB7XG4gICAgcmlnaHQ6IDIwcHg7XG4gICAgbGVmdDogYXV0byAhaW1wb3J0YW50O1xuICB9XG59XG5cbi5jcmVhdGUtY2hhbmdlX190ZW1wbGF0ZS1pdGVtLCAuY3JlYXRlLXJlbGVhc2VfX3RlbXBsYXRlLWl0ZW0ge1xuICAubGlzdC1pdGVtX3VzZSB7XG4gICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgIG1hcmdpbi1sZWZ0OiAxMHB4O1xuICB9XG5cbiAgLnRlbXBsYXRlLWl0ZW1fX2luZm9ybWF0aW9uIHtcbiAgICByaWdodDogOTBweDtcbiAgICBsZWZ0OiA1cHg7XG4gIH1cbn1cblxuLmNyZWF0ZS1jaGFuZ2VfX3RpbWluZy1pdGVtIHtcbiAgZmxvYXQ6IHJpZ2h0O1xuICBib3JkZXItbGVmdDogJGRlZmF1bHQtZWxlbWVudC1ib3JkZXI7XG4gIGJvcmRlci1yaWdodDogdW5zZXQ7XG59XG5cbi5jcmVhdGUtY2hhbmdlX190aW1pbmctaXRlbV9maXJzdC1jb2wge1xuXHRib3JkZXItcmlnaHQ6ICRkZWZhdWx0LWVsZW1lbnQtYm9yZGVyO1xufVxuXG4uY3JlYXRlLWNoYW5nZV9fY29tbW9uLWJ0biwgLmNyZWF0ZS1yZWxlYXNlX19jb21tb24tYnRuIHtcbiAgbWFyZ2luLWxlZnQ6IDEwcHg7XG4gIG1hcmdpbi1yaWdodDogMDtcbn1cblxuLmNyZWF0ZS1jaGFuZ2VfX2FjdGlvbi1wYW5lbCAucHVsbC1yaWdodCB7XG4gID4gaDEsID4gaDUsIC5pY29uLXF1ZXN0aW9uX2NpcmNsZSwgPiBidXR0b24ge1xuICAgIGZsb2F0OiByaWdodDtcbiAgfVxuXG4gID4gaDEsID4gaDUsIC5pY29uLXF1ZXN0aW9uX2NpcmNsZSB7XG4gICAgbWFyZ2luLWxlZnQ6IDEwcHg7XG4gICAgbWFyZ2luLXJpZ2h0OiAwO1xuICB9XG5cbiAgLmljb24tcXVlc3Rpb25fY2lyY2xlIHtcbiAgICBtYXJnaW4tdG9wOiAzMnB4O1xuICB9XG5cbiAgPiBidXR0b24ge1xuICAgIG1hcmdpbi10b3A6IDIwcHg7XG4gIH1cbn1cblxuLmNyZWF0ZS1jaGFuZ2VfX2NvbnRlbnRfc2Nyb2xsIHtcbiAgcGFkZGluZy1yaWdodDogMDtcbiAgcGFkZGluZy1sZWZ0OiAzMHB4O1xufVxuXG4uY3JlYXRlLWNoYW5nZV9fd2l6YXJkLXBhZ2UtdGl0bGUsIC5jcmVhdGUtcmVsZWFzZV9fd2l6YXJkLXBhZ2UtdGl0bGUge1xuICBmbG9hdDogcmlnaHQ7XG59XG5cbi5jcmVhdGUtY2hhbmdlLXdpemFyZF9fdGFiLWNvbnRlbnQsIC5jcmVhdGUtcmVsZWFzZS13aXphcmRfX3RhYi1jb250ZW50IHtcbiAgbGVmdDogMDtcbiAgcmlnaHQ6IDEyNXB4O1xufVxuXG4uY3JlYXRlLWNoYW5nZS13aXphcmRfX3RhYiwgLmNyZWF0ZS1yZWxlYXNlLXdpemFyZF9fdGFiIHtcbiAgYm9yZGVyLWxlZnQ6ICRkZWZhdWx0LWVsZW1lbnQtYm9yZGVyO1xufVxuXG4uY3JlYXRlLWNoYW5nZS13aXphcmRfX3JlcXVlc3RlZEZvciB7XG4gIC5pdGVtLWlucHV0X19kZWxldGUtYnRuLCAuY3JlYXRlLWNoYW5nZS13aXphcmRfX2ltcGFjdGVkLWFyZWFfZGVsZXRlLWJ0biwgLmxvYWRpbmctc3Bpbm5lciB7XG4gICAgcmlnaHQ6IGF1dG87XG4gICAgbGVmdDogMjVweDtcbiAgfVxuXG4gIC5kcm9wZG93bi1tZW51IHtcbiAgICBsZWZ0OiBhdXRvO1xuICAgIHJpZ2h0OiAxNXB4O1xuICB9XG59XG5cbi5jcmVhdGUtY2hhbmdlLXdpemFyZF9fYXNzaWdubWVudC1oZWFkZXIge1xuICByaWdodDogYXV0bztcbiAgbGVmdDogMDtcblxuICAuY3JlYXRlLWNoYW5nZS13aXphcmRfX2Fzc2lnbm1lbnQtaGVhZGVyLWl0ZW0ge1xuICAgIGZsb2F0OiByaWdodDtcblxuICAgIC50aWNrZXQtYXNzaWduZWVfX2luZm8ge1xuICAgICAgLnRpY2tldF9fZmllbGQtdmFsdWUge1xuICAgICAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4uY3JlYXRlLWNoYW5nZV9fdHlwZS1zZWxlY3RvcjpsYXN0LW9mLXR5cGUsIC5jcmVhdGUtcmVsZWFzZV9fdHlwZS1zZWxlY3RvcjpsYXN0LW9mLXR5cGUge1xuICBib3JkZXItbGVmdDogJGRlZmF1bHQtZWxlbWVudC1ib3JkZXI7XG59XG5cbi5jcmVhdGUtY2hhbmdlLXdpemFyZF9fZGF0ZXMtcmF0aW9uYWxlLWxhYmVsIHNwYW4ge1xuICBwYWRkaW5nLXJpZ2h0OiAxMHB4O1xuICBwYWRkaW5nLWxlZnQ6IDA7XG59XG5cbi5jaS1zZWFyY2hfX2hlYWRlciB7XG4gIHBhZGRpbmctbGVmdDogMDtcbiAgcGFkZGluZy1yaWdodDogMTVweDtcbn1cblxuLmNpLXNlYXJjaC1zZWN0aW9uX19jb3VudCB7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG5cbiAgaDEge1xuICAgIHBhZGRpbmc6IDE1cHggMHB4IDBweCAxNXB4O1xuICB9XG5cbiAgaDMge1xuICAgIHBhZGRpbmc6IDVweCAwcHggMHB4IDE1cHg7XG4gIH1cblxuICA+IGJ1dHRvbiB7XG4gICAgcGFkZGluZzogMCAwIDAgNXB4O1xuXG4gICAgc3BhbiB7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgICBmb250LXNpemU6IDEzcHg7XG4gICAgfVxuICB9XG59XG5cbi5jaS1zZWFyY2gtc2VjdGlvbiAuc2VhcmNoX2JhciB7XG4gIGZsb2F0OiByaWdodDtcbiAgbWFyZ2luOiAwcHggMTVweCAwcHggMHB4O1xuXG4gIC5zZWFyY2hfX2ZpbHRlci1kcm9wZG93biB7XG4gICAgcmlnaHQ6IDA7XG4gIH1cbn1cblxuLmNpLXNlYXJjaC1zZWN0aW9uX19hY3Rpb24tcGFuZWwge1xuICBtYXJnaW46IDI1cHggMTBweCAwIDA7XG59XG5cbi5jaS1zZWFyY2gtc2VjdGlvbl9fYWRkX3F1ZXJ5IHtcbiAgbWFyZ2luOiAxMHB4IDIwcHggMCAwO1xufVxuXG4uY2ktc2VhcmNoLXNlY3Rpb25fX3NhdmVfcHJlc2V0cyB7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG4gIGZsb2F0OiBsZWZ0O1xuICBtYXJnaW4tbGVmdDogMTBweDtcbiAgbWFyZ2luLXJpZ2h0OiAwO1xufVxuXG4uY2ktc2VhcmNoLXNlY3Rpb25fX3N1bW1hcnkgLnRhZy1zZWN0aW9uLCAuY2ktc2VhcmNoLXNlY3Rpb25fX3N1bW1hcnkgLnRhZy1zZWN0aW9uX3RvcC1zZXBhcmF0ZWQge1xuICBsZWZ0OiAtMTQwJTtcbiAgcmlnaHQ6IGF1dG87XG59XG5cbi5jaS1zZWFyY2gtc2VjdGlvbl9fcmVsYXRlX3VucmVsYXRlX3NlY3Rpb24ge1xuICBmbG9hdDogcmlnaHQ7XG5cbiAgLmNpLXNlYXJjaC1zZWN0aW9uX19hY3Rpb24ge1xuICAgIGZsb2F0OiByaWdodDtcblxuICAgIC5kcm9wZG93bi1pbnB1dF9fYnV0dG9uLCAucGVyc29uLXNlbGVjdC10eXBlIHtcbiAgICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICAgIG1hcmdpbi1sZWZ0OiAxNXB4O1xuICAgICAgcGFkZGluZzogMCAyNXB4IDAgMTJweDtcbiAgICB9XG4gIH1cblxuICAuY2ktc2VhcmNoLXNlY3Rpb25fX3JlbGF0ZV9idG4ge1xuICAgIG1hcmdpbi1yaWdodDogMTVweDtcbiAgfVxuXG4gIC5jaS1zZWFyY2gtc2VjdGlvbl9fdW5yZWxhdGVfYnRuIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDEwcHg7XG4gICAgbWFyZ2luLWxlZnQ6IDA7XG4gIH1cbn1cblxuLmNpLXNlYXJjaC1zZWN0aW9uX19yZXN1bHRzIHtcbiAgcGFkZGluZy1sZWZ0OiAwO1xuICBwYWRkaW5nLXJpZ2h0OiAxMjBweDtcbn1cblxuLmNpLXNlYXJjaC1zZWN0aW9uX3NhdmVfcHJlc2V0X2FjdGlvbl9ibGFkZV9ib2R5IHtcbiAgcmlnaHQ6IDQwcHg7XG5cbiAgLmNpLXNlYXJjaC1zZWN0aW9uX2ZpbHRlci1pdGVtIHtcbiAgICBmbG9hdDogcmlnaHQ7XG4gICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgIG1hcmdpbi1sZWZ0OiAxMHB4O1xuXG4gICAgLmNpLXNlYXJjaC1zZWN0aW9uX2ZpbHRlci10aXRsZSB7XG4gICAgICBwYWRkaW5nOiAwIDEwcHggMCA0MHB4O1xuICAgIH1cbiAgfVxufVxuXG4uc2VhcmNoX19maWx0ZXItZHJvcGRvd24ge1xuICAuc2VhcmNoLWZpbHRlcl9fb3B0aW9uIHtcbiAgICAuZHJvcGRvd24taXRlbV9yYW5nZS1iYXIge1xuICAgICAgLmRyb3Bkb3duLWl0ZW1fZmlsdGVyLXdhcm5pbmcgPiBpIHtcbiAgICAgICAgZmxvYXQ6IHJpZ2h0O1xuICAgICAgICBtYXJnaW4tdG9wOiA1cHg7XG4gICAgICAgIHBhZGRpbmc6IDAgMCAwIDEwcHg7XG4gICAgICB9XG5cbiAgICAgIC5yYW5nZS10ZW1wbGF0ZSB7XG4gICAgICAgID4gaW5wdXQge1xuICAgICAgICAgIG1hcmdpbjogMCAwIDAgMTBweDtcbiAgICAgICAgfVxuXG4gICAgICAgIC5jcml0ZXJpYS1yb3cge1xuICAgICAgICAgIC5jcml0ZXJpYS1yb3dfX2FjdGl2YXRlIHtcbiAgICAgICAgICAgIGZsb2F0OiByaWdodDtcbiAgICAgICAgICAgIG1hcmdpbjogLTNweCAwIDAgNXB4O1xuICAgICAgICAgIH1cbiAgICAgICAgICAuY3JpdGVyaWEtcm93X190aXRsZSwgLmRyb3Bkb3duLWlucHV0IHtcbiAgICAgICAgICAgIGZsb2F0OiByaWdodDtcbiAgICAgICAgICAgIG1hcmdpbjogMCAwIDAgMTBweDtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICAuY3JpdGVyaWEtcm93X19pbnB1dC1jb250YWluZXIgLmRyb3Bkb3duLW1lbnUge1xuICAgICAgICAgICAgbGVmdDogMTJweCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgcmlnaHQ6IDE3MHB4O1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4vLy8vL3Jpc2sgcXVlc3Rpb25zXG4uY3JlYXRlLWNoYW5nZS13aXphcmRfX3Jpc2tfbW9kZSB7XG4gIGJvcmRlci1yaWdodDogbm9uZTtcbiAgYm9yZGVyLWxlZnQ6ICRkZWZhdWx0LWVsZW1lbnQtYm9yZGVyO1xufVxuXG4uY3JlYXRlLWNoYW5nZS13aXphcmRfX3Jpc2tfbW9kZSAuY29sLXhzLTEyLCAuY3JlYXRlLWNoYW5nZS13aXphcmRfX3Jpc2tfc2VsZWN0aW9uIC5jb2wteHMtMTIge1xuICBwYWRkaW5nLWxlZnQ6IDE1cHg7XG4gIHBhZGRpbmctcmlnaHQ6IDMwcHg7XG59XG5cbi5jcmVhdGUtY2hhbmdlLXdpemFyZF9fZGF0ZS1pY29uLCAuY3JlYXRlLWNoYW5nZS13aXphcmRfX3RpbWUtaWNvbiB7XG4gIGxlZnQ6IGF1dG87XG4gIHJpZ2h0OiAxNjNweDtcbn1cblxuLmNyZWF0ZS1jaGFuZ2Utd2l6YXJkX19oaWdoZXJfcmlzaywgLmNyZWF0ZS1jaGFuZ2Utd2l6YXJkX19sb3dlcl9yaXNrIHtcbiAgcGFkZGluZy1sZWZ0OiAwO1xuICBwYWRkaW5nLXJpZ2h0OiA0MHB4O1xufVxuXG4vLy8vL2RhdGVzXG4uY3JlYXRlLWNoYW5nZS13aXphcmRfX2RhdGVzLWNvbnRlbnQgLmRhdGVzLWNvbHVtbiB7XG4gIHJpZ2h0OiAwO1xuICBsZWZ0OiBhdXRvO1xuICBib3JkZXItcmlnaHQ6IG5vbmU7XG4gIGJvcmRlci1sZWZ0OiAkZGVmYXVsdC1lbGVtZW50LWJvcmRlcjtcbn1cblxuLmNyZWF0ZS1jaGFuZ2Utd2l6YXJkX19kYXRlLCAuY3JlYXRlLWNoYW5nZS13aXphcmRfX3RpbWUge1xuICBwYWRkaW5nLXJpZ2h0OiAwO1xuICBwYWRkaW5nLWxlZnQ6IDEycHg7XG59XG5cbi5jdXN0b20tZmllbGRfX3RpbWUsIC5jdXN0b20tZmllbGRfX3RpbWVfc2luZ2xlLFxuLmNyZWF0ZS1jaGFuZ2Utd2l6YXJkX190aW1lLCAuc3JkLXF1ZXN0aW9uX190aW1lIHtcbiAgLmRyb3Bkb3duLW1lbnUge1xuICAgIGRpcmVjdGlvbjogbHRyO1xuXG4gICAgPiB0YWJsZSB7XG4gICAgICBmbG9hdDogcmlnaHQ7XG4gICAgfVxuICB9XG59XG5cbi5jcmVhdGUtY2hhbmdlLXdpemFyZF9fY2FsZW5kYXJfY29udGFpbmVyIHtcbiAgbGVmdDogMDtcbiAgcmlnaHQ6IDQ5NnB4O1xufVxuXG4uY3JlYXRlLWNoYW5nZS13aXphcmRfX2NhbGVuZGFyX2NvbnRhaW5lcl9leHBhbmRlZCB7XG4gIHJpZ2h0OiAwO1xufVxuXG4uY3JlYXRlLWNoYW5nZS13aXphcmRfX2NhbGVuZGFyIHtcbiAgLnZpZXctc2VsZWN0b3ItbGlzdCB7XG4gICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgbWFyZ2luLXJpZ2h0OiAxNXB4O1xuICB9XG5cbiAgLndlZWtlbmQtem9vbS1jb2x1bW4ge1xuICAgIHRleHQtYWxpZ246IGxlZnQ7XG5cbiAgICAuYnV0dG9uLWxpc3Qge1xuICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgfVxuICB9XG59XG5cbi5jcmVhdGUtY2hhbmdlLXdpemFyZF9fY2FsZW5kYXIgbWFpbiBkaXZbdWktdmlld10ge1xuICBkaXJlY3Rpb246IGx0cjtcbn1cblxuLy8vZG9jdW1lbnRzXG4uY25nLXdpel9fZG9jdW1lbnRzIHtcbiAgYm9yZGVyLXJpZ2h0OiBub25lO1xufVxuXG4uY25nLXdpel9fZG9jdW1lbnRzX3NlbGVjdGlvbi1saXN0LWNvbnRyb2wgYnV0dG9uIHtcbiAgbGVmdDogMDtcbiAgcmlnaHQ6IGF1dG87XG59XG5cbi5jbmctd2l6X19kb2N1bWVudHMtcGFuZWwge1xuICBmbG9hdDogcmlnaHQ7XG4gIGJvcmRlci1yaWdodDogbm9uZTtcbiAgYm9yZGVyLWxlZnQ6ICRkZWZhdWx0LWVsZW1lbnQtYm9yZGVyO1xufVxuXG4uY25nLXdpel9fZG9jdW1lbnRzX3NpZGUtaW5mbyB7XG4gIGxlZnQ6IDA7XG4gIHJpZ2h0OiBhdXRvO1xufVxuXG4uY25nLXdpel9fZG9jdW1lbnRzX3NlbGVjdGlvbi1pdGVtW3JvbGU9XCJtZW51aXRlbWNoZWNrYm94XCJdOjpiZWZvcmUge1xuICBtYXJnaW4tcmlnaHQ6IDA7XG4gIG1hcmdpbi1sZWZ0OiA1cHg7XG59XG5cbi5jaS1zZWFyY2gtc2VjdGlvbl9fcmVzdWx0cyAubmdDZWxsOmxhc3Qtb2YtdHlwZSB7XG4gIG1pbi13aWR0aDogMjVweCAhaW1wb3J0YW50O1xuICB3aWR0aDogMjVweCAhaW1wb3J0YW50O1xufVxuXG4uY2ktc2VhcmNoLXNlY3Rpb25fX3Jlc3VsdHMgLm5nQ2VsbCB7XG4gIGhlaWdodDogNDBweCAhaW1wb3J0YW50O1xufVxuXG4vKiogZW5kIGNyZWF0ZSBjaGFuZ2Ugc3R5bGVzICovXG5cbi8qKiBjcmVhdGUgdGl4IGZvcm0gc3R5bGVzICovXG5cbi50aWNrZXQtdGVtcGxhdGVfX2Jyb3dzZS1idG4ge1xuICBtYXJnaW4tbGVmdDogMDtcbiAgbWFyZ2luLXJpZ2h0OiAyMHB4O1xufVxuXG4uY3JlYXRlLXRpY2tldF9fZGF0ZSAuY3VzdG9tLWZpZWxkX19kYXRlLCAuY3JlYXRlLXRpY2tldF9fZGF0ZSAuY3JlYXRlLWNoYW5nZS13aXphcmRfX2RhdGUge1xuICBtYXJnaW4tcmlnaHQ6IDA7XG4gIG1hcmdpbi1sZWZ0OiAxMHB4O1xufVxuXG4uY3VzdG9tLWZpZWxkX19kYXRlLmNvbC1zbS02IHtcbiAgd2lkdGg6IDEzMHB4O1xufVxuXG4uY3VzdG9tLWZpZWxkX19kYXRlX3RpbWVfY29udGFpbmVyIC5jdXN0b20tZmllbGRfX2RhdGUsIC5jdXN0b20tZmllbGRfX2RhdGVfdGltZV9jb250YWluZXIgLmNyZWF0ZS1jaGFuZ2Utd2l6YXJkX19kYXRlIHtcbiAgbWFyZ2luLXJpZ2h0OiAwO1xufVxuXG4uY3VzdG9tLWZpZWxkX19kYXRlLCAuY3JlYXRlLWNoYW5nZS13aXphcmRfX2RhdGUge1xuICArIC5jdXN0b20tZmllbGRfX3RpbWUsICsgLmN1c3RvbS1maWVsZF9fdGltZV9zaW5nbGUsICsgLmN1c3RvbS1maWVsZF9fZGF0ZV9zaW5nbGUsICsgLmNyZWF0ZS1jaGFuZ2Utd2l6YXJkX190aW1lIHtcbiAgICBtYXJnaW4tbGVmdDogMDtcbiAgICBtYXJnaW4tcmlnaHQ6IDE0cHg7XG4gIH1cbn1cblxuLnRpY2tldC10ZW1wbGF0ZV9fYXNzaWdubWVudC1idG4ge1xuICBtYXJnaW4tbGVmdDogLThweDtcbiAgbWFyZ2luLXJpZ2h0OiAxMHB4O1xufVxuXG4uY3JlYXRlLWNoYW5nZS13aXphcmRfX2ltcGFjdGVkLWFyZWFfZGVsZXRlLWJ0biB7XG4gIHJpZ2h0OiBhdXRvO1xuICBsZWZ0OiAzcHg7XG59XG5cbi5jcmVhdGUtb3V0YWdlX19hc3NldC10ZXh0IHtcbiAgbWFyZ2luLWxlZnQ6IDA7XG4gIG1hcmdpbi1yaWdodDogMTBweDtcbn1cblxuLmNyZWF0ZS1vdXRhZ2VfX2Zvcm1fdmFsaWQsIC5jcmVhdGUtb3V0YWdlX19mb3JtX2ludmFsaWQge1xuICByaWdodDogMjBweDtcbiAgbGVmdDogYXV0bztcbn1cblxuLnBlcnNvbi1pdGVtX19zZWxlY3QtdHlwZSB7XG4gIGxlZnQ6IDM1cHg7XG4gIHJpZ2h0OiBhdXRvO1xufVxuXG4udGlja2V0LW5ldy1pbmNpZGVudC1hc3NpZ25lZV9fYWN0aW9uLCAudGlja2V0LXRlbXBsYXRlX19hc3NpZ24tYnRuIHtcbiAgbWFyZ2luLWxlZnQ6IDA7XG4gIG1hcmdpbi1yaWdodDogMjBweDtcbn1cblxuLnRpY2tldF9fbmFtZS1saW5rIHtcbiAgbWFyZ2luLXJpZ2h0OiAwO1xuICBtYXJnaW4tbGVmdDogMTBweDtcbn1cbi8qKiBlbmQgY3JlYXRlIHRpeCBmb3JtIHN0eWxlcyAqL1xuXG4vKiogY3JlYXRlIGtub3dsZWRnZSBzdHlsZXMgKi9cblxuLmNyZWF0ZS1rYV9fYWN0aW9uLXBhbmVsIHtcbiAgcGFkZGluZy1sZWZ0OiAyMHB4O1xufVxuXG4uY3JlYXRlLWthX19zZXQtZGVmYXVsdC10ZW1wbGF0ZSB7XG4gIHBhZGRpbmctcmlnaHQ6IDA7XG4gIHBhZGRpbmctbGVmdDogMzBweDtcbn1cblxuLmNyZWF0ZS1rYS10ZW1wbGF0ZV9fYmFjay1idXR0b24ge1xuICBwYWRkaW5nLXJpZ2h0OiAwO1xuXG4gIGkge1xuICAgIC1tb3otdHJhbnNmb3JtOiBzY2FsZSgxLCAxKTsgLy91c2luZyBmb3IgbWlycm9yaW5nIGljb25cbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMSwgMSk7XG4gICAgLW8tdHJhbnNmb3JtOiBzY2FsZSgxLCAxKTtcbiAgICAtbXMtdHJhbnNmb3JtOiBzY2FsZSgxLCAxKTtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDEsIDEpO1xuICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICBtYXJnaW4tbGVmdDogNHB4O1xuICB9XG59XG5cbi5jcmVhdGUta2EtdGVtcGxhdGVfX3N0eWxlIHtcbiAgbGVmdDogYXV0bztcbiAgcmlnaHQ6IC01cHg7XG59XG5cbi5jcmVhdGUta2EtZWRpdF9fbWFpbi1jb250ZW50IHtcbiAgZmxvYXQ6IHJpZ2h0O1xufVxuXG4ua2EtbWV0YWRhdGFfX3BhbmVsIHtcbiAgcmlnaHQ6IGF1dG87XG4gIGxlZnQ6IDA7XG59XG5cbi5jcmVhdGUta2EtZWRpdF9fdGVtcGxhdGUge1xuICAuc21hbGwtYnRuX3NlY29uZGFyeSwgLmthLW1ldGFkYXRhLXNwZWNpZmljLXNlY3Rpb25fX2J1dHRvbiwgLmthLW1ldGFkYXRhX19hc3NpZ25tZW50LWJ0biwgLmNyZWF0ZS1rYS1zaW1pbGFyX19tZXJnZS1idG4ge1xuICAgIGxlZnQ6IDA7XG4gICAgcmlnaHQ6IGF1dG87XG4gIH1cbn1cblxuLmNyZWF0ZS1rYS1lZGl0X19lZGl0b3Ige1xuICAubGFiZWxfX3RleHQsIC5sYWJlbF9fdGV4dF9yZXF1aXJlZCB7XG4gICAgcGFkZGluZy1yaWdodDogMTVweDtcbiAgfVxufVxuXG4ua2EtY2tlZGl0b3JfX2NvbnRlbnQge1xuICBwYWRkaW5nLWxlZnQ6IDA7XG4gIHBhZGRpbmctcmlnaHQ6IDE1cHg7XG59XG5cbi5jcmVhdGUta2EtYWN0aW9uLXBhbmVsX192ZXJzaW9uLXRleHQge1xuICBtYXJnaW4tbGVmdDogMjBweDtcbn1cblxuLm1vZGFsLWthLWZpbmRlcl9fdGV4dCAuaXRlbS1pbnB1dF9fZGVsZXRlLWJ0biB7XG4gIGxlZnQ6IDIwcHg7XG4gIHJpZ2h0OiBpbmhlcml0O1xufVxuXG4vLy9tZXRhZGF0YSBzZWN0aW9uXG4ua2EtbWV0YWRhdGFfX2hlYWRlciB7XG4gIHBhZGRpbmc6IDIwcHggMTVweCAwIDA7XG59XG5cbi5rYS1tZXRhZGF0YV9fYXNzaWdubWVudCB7XG4gIHBhZGRpbmctcmlnaHQ6IDA7XG4gIHBhZGRpbmctbGVmdDogMjZweDtcbn1cblxuLmthLW1ldGFkYXRhX19zZWN0aW9uIHtcbiAgLmZkLXNlbGVjdG9yX19mZC1maWVsZCAuaWNvbi1jcm9zcyB7XG4gICAgbGVmdDogN3B4O1xuICB9XG59XG5cbi8qKiBlbmQgY3JlYXRlIGtub3dsZWRnZSBzdHlsZXMgKi9cblxuLyoqIGNhdGVnb3J5IGVkaXRvciBzdHlsZXMgKi9cbi5jYXRlZ29yeS1lZGl0b3JfX2Rpc3BsYXksIC5jYXRlZ29yeS13aWRnZXRfX2NhdGVnb3J5LWVkaXRvciB7XG4gIHBhZGRpbmctbGVmdDogNDBweDtcbiAgcGFkZGluZy1yaWdodDogMTJweDtcbn1cblxuLnNlbGVjdC1jdXN0b20tZHJvcGRvd25fX3NwaW5uZXItY29udGFpbmVyIHtcbiAgbGVmdDogMTBweDtcbiAgcmlnaHQ6IGF1dG87XG59XG4vKiogZW5kIGNhdGVnb3J5IGVkaXRvciBzdHlsZXMgKi9cblxuLyoqIGxhdW5jaCBhc3NldCBhY3Rpb25zIGJsYWRlIHN0eWxlcyAqL1xuLmFjLWxhdW5jaC1hY3Rpb25zIHtcbiAgZmxvYXQ6IHJpZ2h0O1xuICBtYXJnaW46IDEwcHggNXB4IDAgMTNweDtcblxuICAucHJvZmlsZS1hY3Rpb24tYmFyX19pdGVtIC5kcm9wZG93bi1tZW51IHtcbiAgICBsZWZ0OiBhdXRvO1xuICAgIHJpZ2h0OiAwO1xuICB9XG59XG5cbi5saW5rLWJsYWRlX19pdGVtIHtcbiAgcGFkZGluZzogMjBweCAwcHggMTRweCAyMHB4O1xufVxuXG4ubGluay1ibGFkZV9fcmVsYXRpb25zaGlwLXR5cGUge1xuICBwYWRkaW5nLWxlZnQ6IDA7XG4gIHBhZGRpbmctcmlnaHQ6IDIwcHg7XG5cbiAgLmRyb3Bkb3duLWlucHV0IHtcbiAgICBtYXJnaW4tbGVmdDogMDtcbiAgICBtYXJnaW4tcmlnaHQ6IDIwcHg7XG4gIH1cbn1cblxuLmFkZC1wZW9wbGVfX3JvbGUtZHJvcGRvd24ge1xuICBtYXJnaW4tbGVmdDogMDtcbiAgbWFyZ2luLXJpZ2h0OiAxNXB4O1xufVxuXG4uYWN0aW9uLWJsYWRlX190YWItY29udGVudCB7XG4gIC5kcm9wZG93bi1tZW51IHtcbiAgICBsZWZ0OiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgcmlnaHQ6IGF1dG8gIWltcG9ydGFudDtcbiAgfVxufVxuXG4vKiogbGF1bmNoIGFzc2V0IGFjdGlvbnMgYmxhZGUgc3R5bGVzIGVuZCAqL1xuXG4vKiogU3RhcnQgOiBDSSBFeHBsb3JlciBsaXN0ICovXG4uYXNzZXRfX2NpLWV4cGxvcmVyIHtcbiAgaGVhZGVyIHtcbiAgICA+IGRpdiB7XG4gICAgICBmbG9hdDogbGVmdDtcbiAgICB9XG5cbiAgICAudGV4dC1yaWdodCB7XG4gICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgIH1cblxuICAgIC5jbG9zZS1idG4sIC5ncmFwaGljYWwtc2ltdWxhdG9yX19pY29uLWd1aWRlIHtcbiAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgICAgbWFyZ2luLXJpZ2h0OiAxMHB4O1xuICAgIH1cbiAgfVxuXG4gIC5tYWluIHtcbiAgICAucmVsYXRpb25zaGlwLXR5cGVzLWZpbHRlciB7XG4gICAgICBmbG9hdDogcmlnaHQ7XG4gICAgfVxuXG4gICAgLmdyYXBoaWNhbC1jaSAudG9vbGJhciB7XG4gICAgICAuc3RhcnRpbmctYXNzZXQge1xuICAgICAgICBmbG9hdDogcmlnaHQ7XG5cbiAgICAgICAgaDQge1xuICAgICAgICAgIC5hc3NldC1sYWJlbCB7XG4gICAgICAgICAgICBmbG9hdDogcmlnaHQ7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgLmFzc2V0LW5hbWUgYnV0dG9uIHtcbiAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDEwcHg7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIC5wYW4tYWN0aW9ucyB7XG4gICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgfVxuICAgIH1cblxuICAgIC5saXN0LWNpLWNvbnRhaW5lciB7XG4gICAgICAuY29udGVudCAubGlzdC1jaSAubGlzdCAubGlzdC1pdGVtIC5saXN0LWZpZWxkIHtcbiAgICAgICAgJi5sZWZ0LWZpZWxkIHtcbiAgICAgICAgICBmbG9hdDogcmlnaHQ7XG4gICAgICAgIH1cblxuICAgICAgICAmLnJpZ2h0LWZpZWxkIHtcbiAgICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgfVxuXG4gICAgICAgICYuYXNzZXQtbmFtZSB7XG4gICAgICAgICAgYnV0dG9uIHtcbiAgICAgICAgICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAudG9vbGJhciAudGFnLXNlY3Rpb24ge1xuICAgICAgICAmLnB1bGwtbGVmdCB7XG4gICAgICAgICAgZmxvYXQ6IHJpZ2h0ICFpbXBvcnRhbnQ7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLmdyYXBoaWNhbC1zaW11bGF0b3JfX2ljb24tZ3VpZGUgKyAucG9wb3ZlciB7XG4gIGxlZnQ6IDEwcHggIWltcG9ydGFudDtcbiAgcmlnaHQ6IGF1dG87XG4gIC5hcnJvdyB7XG4gICAgcmlnaHQ6IDc3JTtcbiAgICBsZWZ0OiBhdXRvO1xuICB9XG59XG4vKiogRW5kIDogQ0kgRXhwbG9yZXIgbGlzdCAqL1xuXG4vKiogY2hhdCBhbmQgZW1haWwgc3R5bGVzICovXG5cbi5jaGF0LXdpbmRvdywgLmNoYXQtcG9wdXAtd2luZG93LCAuZW1haWwtd2luZG93IHtcbiAgbGVmdDogMDtcbiAgcmlnaHQ6IGF1dG87XG59XG4uY2hhdF9fY29udHJvbHMge1xuICBkaXJlY3Rpb246IGx0cjtcbn1cbi5jaGF0X19jb250cm9scywgLmVtYWlsX19jb250cm9scyB7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG59XG5cbi5jaGF0X19zZWFyY2gtYmFyX2lucHV0LCAuY2hhdC1oaXN0b3J5X19zZWFyY2gtaW5wdXQge1xuICBwYWRkaW5nLWxlZnQ6IDA7XG4gIHBhZGRpbmctcmlnaHQ6IDQwcHg7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IHJpZ2h0IDEwcHggY2VudGVyO1xufVxuXG4uY2hhdF9fc2VhcmNoLWJhcl9zZWFyY2gtc3Bpbm5lciB7XG4gIGxlZnQ6IC05MCU7XG59XG5cbi5jaGF0X19zZWFyY2gtcmVzdWx0LXNldC1oZWFkZXIge1xuICBwYWRkaW5nLWxlZnQ6IDA7XG4gIHBhZGRpbmctcmlnaHQ6IDE1cHg7XG59XG5cbi5jaGF0X19zZWFyY2gtcmVzdWx0X2ljb24ge1xuICBwYWRkaW5nOiAxNXB4IDEwcHggMTVweCAyMHB4O1xufVxuXG4uY2hhdF9fc2VhcmNoLXJlc3VsdF9kaXNwbGF5LWlkIHtcbiAgZmxvYXQ6IHJpZ2h0O1xuICBwYWRkaW5nLXJpZ2h0OiAwO1xuICBwYWRkaW5nLWxlZnQ6IDVweDtcbn1cblxuLmNoYXRfX3JlbW92ZS1jb25uZWN0aW9uIHtcbiAgZmxvYXQ6IGxlZnQ7XG59XG5cbi5jaGF0X19wYXJlbnQtbGluayB7XG4gIHBhZGRpbmctbGVmdDogMDtcbiAgcGFkZGluZy1yaWdodDogNXB4O1xufVxuXG4uY2hhdF9fYm9keS1jb252ZXJzYXRpb24ge1xuICAuaWNvbi1zcGVha2VyIH4gc3BhbiB7XG4gICAgdW5pY29kZS1iaWRpOiBlbWJlZDtcbiAgfVxufVxuXG4uY2hhdF9fc2VhcmNoLXJlc3VsdF91c2VyLWRldGFpbHMsIC5jaGF0X19zZWFyY2gtcmVzdWx0X3VzZXItcGhvbmUsIC5jaGF0X19zZWFyY2gtcmVzdWx0X3VzZXItZW1haWwge1xuICBwYWRkaW5nLWxlZnQ6IDA7XG4gIHBhZGRpbmctcmlnaHQ6IDEwcHg7XG59XG5cbi5jaGF0LWhpc3RvcnlfX3NlYXJjaCwgLmNoYXQtaGlzdG9yeV9fY29udmVyc2F0aW9uLWRldGFpbHMge1xuICBmbG9hdDogcmlnaHQ7XG59XG5cbi5lbWFpbF9fcmVjaXBpZW50LXRpdGxlIHtcbiAgcGFkZGluZy1sZWZ0OiAwO1xuICBwYWRkaW5nLXJpZ2h0OiAxMHB4O1xufVxuXG4uZW1haWxfX3JlY2lwaWVudC1saXN0IHtcbiAgcGFkZGluZzogMCAwIDAgMTBweDtcbn1cblxuLmVtYWlsX19zdWJqZWN0LXRleHQge1xuICBwYWRkaW5nOiAwIDQwcHggMCAyMHB4O1xufVxuXG4uZW1haWxfX2Zvb3Rlci1oZWxwIHtcbiAgZmxvYXQ6IGxlZnQ7XG4gID4gaSB7XG4gICAgcGFkZGluZy1yaWdodDogMDtcbiAgICBwYWRkaW5nLWxlZnQ6IDEwcHg7XG4gIH1cbn1cblxuLmVtYWlsX19hdHRhY2htZW50LWljb24ge1xuICBwYWRkaW5nLWxlZnQ6IDA7XG4gIHBhZGRpbmctcmlnaHQ6IDEwcHg7XG59XG5cbi5lbWFpbF9fYXR0YWNobWVudC1pY29uLXNtYWxsIHtcbiAgcmlnaHQ6IDVweDtcbiAgbGVmdDogYXV0bztcbn1cblxuLmVtYWlsX19hdHRhY2htZW50X2Rpc21pc3Mge1xuICBsZWZ0OiA1cHg7XG4gIHJpZ2h0OiBhdXRvO1xufVxuXG4ucG9wb3V0LXdpbmRvdy1hbGVydC1tb2RhbCAubW9kYWwtZm9vdGVyIHtcblx0cGFkZGluZzogMTBweCAwIDAgMTVweDtcbn1cblxuLmVtYWlsLWFjY2VsZXJhdG9yc19fcG9wdXAtaXRlbS1leHByZXNzaW9uIHtcblx0ZmxvYXQ6IHJpZ2h0O1xufVxuXG4uZW1haWwtYWNjZWxlcmF0b3JzX19wb3B1cC1pdGVtLWRlc2Mge1xuICBmbG9hdDogbGVmdDtcbn1cbi8qKiBjaGF0IGFuZCBlbWFpbCBzdHlsZXMgZW5kICovXG5cbi8qKiBrbm93bGVkZ2UgZGFzaGJvYXJkIHN0eWxlcyAqL1xuXG4ua25vd2xlZGdlLXRlYW0ge1xuICAua25vd2xlZGdlLXRlYW1fX2hlYWRlciB7XG4gICAgLmtub3dsZWRnZS10ZWFtX19oZWFkZXItdGl0bGUge1xuICAgICAgZmxvYXQ6IHJpZ2h0O1xuICAgIH1cbiAgICAua25vd2xlZGdlLXRlYW1fX21hbmFnZS10ZWFtIHtcbiAgICAgIGZsb2F0OiBsZWZ0O1xuXG4gICAgICAuaWNvbi1nZWFyIHtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAwcHg7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAycHg7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLmtub3dsZWRnZS10ZWFtX19sZWZ0LXBhbmVsIHtcbiAgICBmbG9hdDogcmlnaHQ7XG4gIH1cblxuICAua25vd2xlZGdlLXRlYW1fX3JpZ2h0LXBhbmVsIHtcbiAgICBib3JkZXItbGVmdDogbm9uZTtcbiAgICBib3JkZXItcmlnaHQ6ICRkZWZhdWx0LWVsZW1lbnQtYm9yZGVyO1xuXG4gICAgLm5hdmlnYXRpb24taXRlbSB7XG4gICAgICAuaXRlbS1jb250ZW50IHtcbiAgICAgICAgcmlnaHQ6IDYwcHg7XG4gICAgICAgIGxlZnQ6IDUwcHg7XG4gICAgICB9XG5cbiAgICAgIC5rYS1jb25maWdfX2xpc3QtaXRlbS1wb2ludGVyIHtcbiAgICAgICAgbGVmdDogMTBweDtcbiAgICAgICAgcmlnaHQ6IGF1dG87XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLmtub3dsZWRnZS10ZWFtX190aWxlLWdyaWQgLmtub3dsZWRnZS10ZWFtX19wZXJzb24tY2FyZCAucGVyc29uLWNhcmRfX2NvbnRlbnQge1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgIG1hcmdpbi1yaWdodDogMTBweDtcbiAgfVxufVxuXG4ua25vd2xlZGdlLXRlYW1fX21hbmFnZS1wYW5lbCB7XG4gIC5hc3NpZ24tbGlzdF9fdXNlci1waWMge1xuICAgIHdpZHRoOiA2MHB4ICFpbXBvcnRhbnQ7XG4gIH1cblxuICAua3QtbW9kYWwtYm9keSB7XG4gICAgLmtub3dsZWRnZS10ZWFtX19zZWxlY3QtY29tcGFueSB7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDEycHg7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgIH1cblxuICAgIC5rbm93bGVkZ2UtdGVhbV9fc2VhcmNoLWJhciB7XG4gICAgICAuc21hcnQtcmVjb3JkZXJfX3BvcHVwLWl0ZW0tY29sMSB7XG4gICAgICAgIG1hcmdpbjogMCA2MHB4IDAgMDtcbiAgICAgIH1cbiAgICAgIGlucHV0LmFzc2lnbi1zZWFyY2gge1xuICAgICAgICBwYWRkaW5nOiAwIDQwcHggMCAxMnB4O1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4vKioga25vd2xlZGdlIGRhc2hib2FyZCBzdHlsZXMgZW5kICovXG5cbi8qKiBLQ1MgcGVyZm9ybSBhc3Nlc3NtZW50IHN0eWxlcyAqL1xuXG4ua2NzLWFzc2Vzc21lbnRfX3F1ZXN0aW9ucy1jb250YWluZXIge1xuICAucXVlc3Rpb24tbGlzdF9faXRlbSB7XG4gICAgLmFuc3dlcl9idG5feWVzIHtcbiAgICAgIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IDAgIWltcG9ydGFudDtcbiAgICAgIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IDAgIWltcG9ydGFudDtcbiAgICAgIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiA3cHggIWltcG9ydGFudDtcbiAgICAgIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiA3cHggIWltcG9ydGFudDtcbiAgICB9XG5cbiAgICAuYW5zd2VyX2J0bl9ubyB7XG4gICAgICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogMCAhaW1wb3J0YW50O1xuICAgICAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IDAgIWltcG9ydGFudDtcbiAgICAgIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IDdweCAhaW1wb3J0YW50O1xuICAgICAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogN3B4ICFpbXBvcnRhbnQ7XG4gICAgfVxuXG4gICAgLmFjdGlvbl9idG4ge1xuICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiAwICFpbXBvcnRhbnQ7XG4gICAgICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAwICFpbXBvcnRhbnQ7XG4gICAgfVxuICB9XG59XG5cbi5rY3MtYXNzZXNzbWVudF9fYnV0dG9uLWNvbnRhaW5lciB7XG4gIGZsb2F0OiBsZWZ0O1xuXG4gIGJ1dHRvbiB7XG4gICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgbWFyZ2luLXJpZ2h0OiAxMHB4O1xuICB9XG59XG5cbi5zcmQtcXVlc3Rpb25fZHJhZnQge1xuICAgIC5zcmQtcXVlc3Rpb25fZGF0ZS1kaXYsIC5zcmQtcXVlc3Rpb25fdGltZS1kaXYge1xuICAgICAgd2lkdGg6IDMwJTtcbiAgICB9XG59XG5cbi8qKiBLQ1MgcGVyZm9ybSBhc3Nlc3NtZW50IHN0eWxlcyBlbmQgKi9cblxuLnNsYS1yZWFjaC10aW1lIHtcbiAgbWFyZ2luLXJpZ2h0OiAxMHB4O1xuICBtYXJnaW4tbGVmdDogMDtcbn1cblxuLmFjdGlvbi1ibGFkZS1uYXJyb3cgLm1vZGFsLWRpYWxvZyB7XG4gIHJpZ2h0OiBhdXRvO1xuICBsZWZ0OiAwO1xufVxuXG4uaW5wdXQtY291bnRlcl9faW5jcmVhc2UsXG4uaW5wdXQtY291bnRlcl9fZGVjcmVhc2Uge1xuICByaWdodDogYXV0bztcbiAgbGVmdDogMXB4O1xufVxuXG4uaW5wdXQtY291bnRlcl9faW5wdXQge1xuICBwYWRkaW5nOiAwO1xufVxuXG4udGlja2V0LWNhdGVnb3J5LXNlY3Rpb25fX3NlcnZpY2UtdHlwZSB7XG4gIHBhZGRpbmctcmlnaHQ6IDA7XG59XG5cbi5wcm9maWxlLXJlbGF0aW9uX19pdGVtLXRhc2stZGV0YWlscyB7XG4gIG1hcmdpbi1yaWdodDogODVweDtcbiAgbWFyZ2luLWxlZnQ6IDA7XG59XG5cbi5hY3Rpdml0eS1jb250cm9scyB7XG4gIGxlZnQ6IDA7XG4gIHJpZ2h0OiBhdXRvO1xufVxuXG4ubmdTb3J0QnV0dG9uRG93biwgLm5nU29ydEJ1dHRvblVwIHtcbiAgbGVmdDogNXB4O1xuICByaWdodDphdXRvO1xufVxuXG4jaGVhZGVyX3NlYXJjaCB7XG4gIC50b29sdGlwIHtcbiAgICByaWdodDogMTBweCAhaW1wb3J0YW50O1xuICB9XG4gIC50b29sdGlwLWFycm93IHtcbiAgICByaWdodDogMiU7XG4gIH1cbiAgYnV0dG9uLmRyb3Bkb3duLWlucHV0X19idXR0b24ge1xuICAgIGJvcmRlci1yYWRpdXM6IDAgMnB4IDJweCAwO1xuICB9XG4gIC5nbG9iYWwtc2VhcmNoLWNyaXRlcmlhX3dyYXBwZXIge1xuICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICBwYWRkaW5nLXJpZ2h0OiAxMHB4O1xuICB9XG4gIC5nbG9iYWwtc2VhcmNoLWlucHV0X3dyYXBwZXIge1xuICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gICAgcGFkZGluZy1sZWZ0OiAxMHB4O1xuICB9XG59XG5cbi5oZWFkZXItc2VhcmNoX19iYXIge1xuICBib3JkZXItcmFkaXVzOiAycHggMCAwIDJweDtcbn1cblxuLnRjX19maWx0ZXItdG9nZ2xlIC5maWx0ZXItYXBwbHktY2FuY2VsIC5maWx0ZXItYWN0aW9uLXJvdyAucm93LWxpbmstY29udGFpbmVyIHtcbiAgZmxvYXQ6IGxlZnQ7XG59XG5cblxuLm1vZGFsLWV4dHJhLXNtYWxsLWxlZnQge1xuICB3aWR0aDogMzAwcHggIWltcG9ydGFudDtcbiAgcmlnaHQ6IDAgIWltcG9ydGFudDtcbn1cblxuLmFjdGlvbi1ibGFkZS1sZWZ0Lm1vZGFsOm5vdCguaW4pIC5tb2RhbC1kaWFsb2cge1xuICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMTI1JSwgMCwgMCk7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMTI1JSwgMCwgMCk7XG59XG5cbmEuY29uc29sZS1jb25maWdfX3NpZGUtbWVudS1pdGVtIHtcbiAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gIHBhZGRpbmctcmlnaHQ6IDI1cHg7XG59XG5cbi5wZXJzb24tbmFtZV9fZWRpdG9yIHtcbiAgLmRyb3Bkb3duLW1lbnUge1xuICAgIHdpZHRoOiA1NTBweDtcblxuICAgIC5jcmVhdGUtdGlja2V0X19wb3B1cC1pdGVtLWNvbDEge1xuICAgICAgd2lkdGg6IDI1MHB4O1xuICAgIH1cbiAgfVxufVxuXG4ubGl2ZV9fYWdlbnRfcmlnaHRfcGFuZWwtZm9vdGVyIHtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbn1cblxuLmxpdmVfX2FnZW50X3JpZ2h0X3BhbmVsLWZvb3RlciAuYnRuX3NlY29uZGFyeSB7XG4gIG1hcmdpbi1sZWZ0OiAwO1xuICBtYXJnaW4tcmlnaHQ6IDEwcHg7XG59XG5cbi50Y19fcXVpY2stc2VhcmNoIHtcbiAgZmxvYXQ6IHJpZ2h0O1xufVxuXG4ub3V0YWdlLWVkaXRfX2NvbnRyb2xzIHtcbiAgIEBpbmNsdWRlIHBvc2l0aW9uKGFic29sdXRlLCBhdXRvIGF1dG8gYXV0byAyMHB4KTtcbn1cblxuLmRlY2lzaW9uLXRyZWVfYnRuLWdyb3VwIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB0ZXh0LWFsaWduOiByaWdodDtcbiAgZGlyZWN0aW9uOiBsdHI7XG4gIGZvbnQtc2l6ZTogMDtcblxuICBidXR0b24ge1xuICAgIGRpcmVjdGlvbjogcnRsO1xuICAgIG1hcmdpbi1sZWZ0OiA1cHg7XG4gIH1cblxuICAuZGVjaXNpb24tdHJlZV9fcmVzZXQtYnRuIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgfVxufVxuXG4uc3JkLXF1ZXN0aW9uX19kcm9wZG93biB7XG4gIC5zcmQtcXVlc3Rpb24taW5wdXRib3gge1xuICAgIC5kcm9wZG93bi1pdGVtX3NlYXJjaC1pY29uIHtcbiAgICAgIHJpZ2h0OiAxMnB4O1xuICAgICAgbGVmdDogYXV0bztcbiAgICB9XG5cbiAgICAuZHJvcGRvd24taXRlbV9zZWFyY2gge1xuICAgICAgcGFkZGluZy1yaWdodDogMzBweDtcbiAgICB9XG4gIH1cbn1cblxuLnRpY2tldF9fY3VzdG9taXplZC1ib2R5IHtcbiAgLmVkaXRhYmxlLWNvbnRlbnQtc2VjdGlvbl9fY29udHJvbHMge1xuICAgIC5lZGl0YWJsZS1jb250ZW50LXNlY3Rpb25fX2NvbnRyb2wtYmFyIHtcbiAgICAgIGZsb2F0OiBsZWZ0O1xuICAgIH1cbiAgfVxufVxuXG4uZWRpdGFibGUtY29udGVudC1zZWN0aW9uX19mb3JtX2ludmFsaWQgIHtcbiAgLmljb24tZXhjbGFtYXRpb25fdHJpYW5nbGUge1xuICAgIGZsb2F0OiByaWdodDtcbiAgICBtYXJnaW4tdG9wOiA2cHg7XG4gIH1cbn1cblxuLnRpY2tldC1zdW1tYXJ5X19jaGFyYWN0ZXItbGltaXQge1xuICBzcGFuIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgfVxufVxuXG4uZW1haWwtZmllbGQsIC5waG9uZS1maWVsZCB7XG4gICBpIHtcbiAgICAgZmxvYXQ6IHJpZ2h0O1xuICAgICBtYXJnaW46IDVweCAwcHggMHB4IDdweDtcbiAgIH1cbn1cblxuLnRpbWVsaW5lLXdpZGdldF9fbWVudSB7XG4gIC5kcm9wZG93bi1pdGVtX3NlYXJjaCB7XG4gICAgcGFkZGluZy1yaWdodDogMHB4O1xuICB9XG59XG5cbi5wcm9maWxlLWFjdGlvbi1iYXJfX2l0ZW0ge1xuICBpIHtcbiAgICAtbW96LXRyYW5zZm9ybTogc2NhbGUoLTEsIDEpO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgtMSwgMSk7XG4gICAgLW8tdHJhbnNmb3JtOiBzY2FsZSgtMSwgMSk7XG4gICAgLW1zLXRyYW5zZm9ybTogc2NhbGUoLTEsIDEpO1xuICAgIHRyYW5zZm9ybTogc2NhbGUoLTEsIDEpO1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgfVxufVxuXG4uZWRpdGFibGUtY29udGVudC1zZWN0aW9uX19jb250ZW50IHtcbiAgLnN0YXR1cy1iYXJfX3N0YXR1cyB7XG4gICAgZmxvYXQ6IHJpZ2h0O1xuICB9XG4gIC5zdGF0dXMtYmFyX19zbGEge1xuICAgIGZsb2F0OiBsZWZ0O1xuICB9XG59XG5cbi5rYS1yYXRpbmcge1xuICAuaWNvbi10aHVtYnNfdXAge1xuICAgIGZsb2F0OiByaWdodDtcbiAgfVxufVxuXG4udGlja2V0LXRlbXBsYXRlX19pbnB1dCB7XG4gIHBhZGRpbmctcmlnaHQ6IDEwcHg7XG59XG5cbiVycy1ncm91cC1saXN0LWl0ZW1fX2thLXByb3BlcnR5X2ljb25zIHtcbiAgZmxvYXQ6IHJpZ2h0O1xuICBtYXJnaW4tdG9wOiAzcHg7XG4gIG1hcmdpbi1sZWZ0OiAzcHg7XG59XG5cbi5ycy1ncm91cC1saXN0LWl0ZW1fX2thLXByb3BlcnR5X2xpa2VzIHtcbiAgLmljb24tdGh1bWJzX3VwIHtcbiAgICBAZXh0ZW5kICVycy1ncm91cC1saXN0LWl0ZW1fX2thLXByb3BlcnR5X2ljb25zO1xuICB9XG59XG5cbi5ycy1ncm91cC1saXN0LWl0ZW1fX2thLXByb3BlcnR5X3ZpZXdzIHtcbiAgLmljb24tZXllIHtcbiAgICBAZXh0ZW5kICVycy1ncm91cC1saXN0LWl0ZW1fX2thLXByb3BlcnR5X2ljb25zO1xuICB9XG59XG5cbi5ycy1ncm91cC1saXN0LWl0ZW1fX2thLXByb3BlcnR5IHtcbiAgLmljb24tbGluayB7XG4gICAgQGV4dGVuZCAlcnMtZ3JvdXAtbGlzdC1pdGVtX19rYS1wcm9wZXJ0eV9pY29ucztcbiAgfVxufVxuXG4ucGVyc29uLXByZXZpZXctc2VydmljZS1zdW1tYXJ5X19yYXRpbmctc2VjdGlvbiAge1xuICAucGVyc29uLXNlcnZpY2Utc3VtbWFyeV9fdGl0bGUge1xuICAgIGZsb2F0OiByaWdodDtcbiAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgbWFyZ2luLWxlZnQ6IDdweDtcbiAgfVxufVxuXG4uZW1haWxfX2NvbnRyb2xzX2l0ZW0ge1xuICAmLmljb24tcG9wX3VwIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgfVxuXG4gICYuaWNvbi10cmFzaCB7XG4gICAgdmVydGljYWwtYWxpZ246IHRvcDtcbiAgfVxufVxuXG4uZW1haWxfX3N1YmplY3QtdGl0bGUge1xuICBmbG9hdDogcmlnaHQ7XG59XG5cbi5lbWFpbF9fc3ViamVjdC10ZXh0IHtcbiAgcGFkZGluZzogMCAyMHB4IDAgNDBweDtcbn1cblxuLmVtYWlsX19yZWNpcGllbnQtaW5wdXQge1xuICBtYXJnaW46IDAgMCAwIDVweDtcbiAgcGFkZGluZzogMCAwIDAgNHB4O1xufVxuXG4uZW1haWwtcmVjaXBpZW50X19pdGVtLWltZyxcbi5lbWFpbC1yZWNpcGllbnRfX2l0ZW0tY29sMSB7XG4gIGZsb2F0OiByaWdodDtcbiAgcGFkZGluZzogMTBweCAxMHB4IDEwcHggMDtcbn1cblxuLmVtYWlsLXJlY2lwaWVudF9faXRlbS1jb2wyIHtcbiAgJiA+IHAge1xuICAgIGZsb2F0OiBsZWZ0O1xuICB9XG59XG5cbi50b29sdGlwIHtcbiAgLnRvb2x0aXAtaW5uZXIge1xuICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuICB9XG59XG5cbi5yZWxlYXNlLXBsYW5fX2xpc3QtaGVhZGVyIHtcblx0ZmxvYXQ6IHJpZ2h0O1xuICAgIG1hcmdpbjogMjBweCAyMHB4IDIwcHggMDtcbn1cblxuLnByb2ZpbGVfX3JlbGF0aW9uIHtcbiAgLnJlbGVhc2UtcGxhbl9fbGlzdC1oZWFkZXIge1xuICAgIHdpZHRoOiA2NSU7XG4gIH1cblxuICAucmVsZWFzZS1wbGFuX19idXR0b24tZ3JvdXBzIHtcbiAgICB3aWR0aDogMzIlO1xuICB9XG59XG5cbi5yZWxlYXNlLXBsYW5fX2J1dHRvbi1ncm91cHMge1xuICBwYWRkaW5nLXJpZ2h0OiAwO1xuICBwYWRkaW5nLWxlZnQ6IDVweDtcbn1cblxuLnJlc291cmNlLXByZXZpZXdfX2NvbnRhaW5lciB7XG4gIC50aXRsZS1iYXJfX3NlY3Rpb24ge1xuICAgIHBhZGRpbmctcmlnaHQ6IDI4cHg7XG4gICAgcGFkZGluZy1sZWZ0OiAyMDBweDtcbiAgfVxufVxuXG4ubGluay1ibGFkZV9faXRlbS1kZXRhaWxzX3JvdyB7XG5cdGRpc3BsYXk6IHRhYmxlO1xuXHR3aWR0aDogMTAwJTtcblx0PiAqIHtcblx0XHRkaXNwbGF5OiB0YWJsZS1jZWxsO1xuXG5cdH1cblx0KjpudGgtY2hpbGQoMm4pe1xuXHRcdHRleHQtYWxpZ246IGxlZnQ7XG5cdH1cblxufVxuXG4ucmVsYXRlZC1hc3NldHMtbGlzdF9fZmlsdGVyIHtcblx0dGV4dC1hbGlnbjogcmlnaHQ7XG5cblx0LnNlYXJjaF9fZmlsdGVyIHtcblx0XHRmbG9hdDogbGVmdDtcblx0fVxufVxuXG4uaW1wYWN0LXNpbXVsYXRvcl9fZm9vdGVyLWFjdGlvbnMge1xuXG4gIC5pY29uLXRyaWFuZ2xlX3VwIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgcGFkZGluZy1yaWdodDogMTBweDtcbiAgfVxuXG59XG4udGlja2V0X19maWVsZC12YWx1ZSwgLmN1c3RvbS1maWVsZF9fdmFsdWUsIC5zY3JlZW4tY29uZmlndXJhdGlvbl9fcmVmcmVzaC1idXR0b24ge1xuICBmb250LXdlaWdodDogYm9sZDtcbn1cblxuLnNlY3Rpb24tdHJlZV9faGVhZGluZy10ZXh0IHtcbiAgbWFyZ2luLXJpZ2h0OiAxNnB4O1xuICBtYXJnaW4tbGVmdDogMHB4O1xuICBmb250LXdlaWdodDogYm9sZDtcbn1cblxuLnNjcmVlbi1jb25maWd1cmF0aW9uX19wYW5lbC1pdGVtLCAuc2NyZWVuLWNvbmZpZ3VyYXRpb25fX3BhbmVsLWhlYWQtaXRlbSB7XG4gIGEge1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICB9XG59XG5cblxuLnJlbGF0ZWQtYXNzZXRzLWxpc3Qge1xuXHQubmdIZWFkZXJDZWxsOmZpcnN0LWNoaWxkIC5uZ1ZlcnRpY2FsQmFye1xuXHRcdGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XG5cdH1cblxufVxuXG4uc2xhLXN0YXR1cy1pbmZvIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xufVxuXG4uc2NyZWVuLWNvbmZpZ3VyYXRpb25fX2hlYWRlci1yZWZyZXNoLWNhY2hlIHtcbiAgZmxvYXQ6IGxlZnQ7XG59XG5cbi5jdXN0b20tYXJlYS1lZGl0b3Ige1xuICAuY3VzdG9tLWFyZWFfX3NlbGVjdG9yX3RpdGxlIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDIwcHg7XG4gICAgcGFkZGluZy1yaWdodDogMDtcblxuICAgICYgaVtjbGFzcyo9J2ljb24nXSB7XG4gICAgICBsZWZ0OiAwO1xuICAgICAgcmlnaHQ6IGF1dG87XG4gICAgICB0b3A6IDVweDtcbiAgICB9XG4gIH1cbn1cblxuXG4uZmllbGQtaXRlbV9fc2VhbGVkIHtcbiAgcmlnaHQ6IDEzNXB4O1xufVxuXG4uc2VydmljZS1yZXF1ZXN0X19hcHByb3ZhbHMtZ3JvdXAtbGFiZWwge1xuICBwYWRkaW5nLWxlZnQ6IDA7XG4gIG1hcmdpbi1yaWdodDogMTJweDtcbn1cblxuXG4ubmVzdGVkLWRyb3Bkb3duIHtcblx0PiB1bCB7XG5cdFx0bGkge1xuXHRcdFx0dGV4dC1hbGlnbjogcmlnaHQ7XG5cdFx0fVxuXHRcdGxpLm9wdGlvbi1zZWxlY3RlZCB7XG5cdFx0XHR0ZXh0LWFsaWduOiByaWdodFxuXHRcdH1cblx0fVxufVxuXG4uY2ktc2VhcmNoLXNlY3Rpb25fX3NlbGVjdGVkLWNvdW50X2Fycm93IHtcblx0ZmxvYXQ6IHJpZ2h0O1xufVxuXG4uY2ktc2VhcmNoLXNlY3Rpb25fX3NlbGVjdGVkLWNvdW50IHtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbn1cblxuXG5cbi5ib29rdmlld19ldmVudF9jb2xsaXNpb24sIC5tb250aHZpZXdfZXZlbnRfY29sbGlzaW9uIHtcbiAgZGlyZWN0aW9uOiBydGw7XG59XG5cbi5jYWxlbmRhcnZpZXdfZXZlbnRfY29sbGlzaW9uIHtcbiAgZGlyZWN0aW9uOiBydGw7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cblxuLmNyZWF0ZS1jaGFuZ2Utd2l6YXJkX19kYXRlcy1jb250ZW50IHtcbiAgLmNhbGVuZGFyLWNvbHVtbiB7XG5cdFx0W2NvbGxpc2lvbi1jb3VudF0ge1xuXHRcdFx0JjphZnRlciB7XG4gICAgICAgIG1hcmdpbi1yaWdodDogNXB4O1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIHRvcDogMHB4O1xuICAgICAgICBib3R0b206IDNweDtcblx0XHRcdH1cblx0XHR9XG5cdH1cbn1cblxuLnF0aXAge1xuICAucXRpcC1jb250ZW50IHtcbiAgICAgIC5wb3BvdmVyIHtcbiAgICAgICAgICAuY2hhbmdlLXBvcG92ZXItdGl0bGUge1xuICAgICAgICAgICAgICAuZGlzcGxheS1pZCB7XG4gICAgICAgICAgICAgICAgICBmbG9hdDogcmlnaHQ7XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgLmZ1bGwtZGV0YWlscy1saW5rIHtcbiAgICAgICAgICAgICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgIH1cblxuICAgICAgICAgIC5wb3BvdmVyLWNvbnRlbnQge1xuXG4gICAgICAgICAgICBkaXJlY3Rpb246cnRsO1xuICAgICAgICAgICAgLmNvbC14cy0xMjpub3QoOmZpcnN0LW9mLXR5cGUpIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAxMHB4O1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAudGlja2V0LWluZm9ybWF0aW9uIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xuXG4gICAgICAgICAgICAgICAgLnRpY2tldF9fY2hhbmdlLWNsYXNzIHtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogNXB4O1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIC50aWNrZXRfX3Jpc2stbGV2ZWwtYmFkZ2Uge1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDVweDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5sYWJlbF9fdGV4dCB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLnRpY2tldF9fYXNzaWdubWVudCB7XG4gICAgICAgICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgICAgICAgICBib3JkZXItdG9wOiBub25lO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAudGlja2V0X19hc3NpZ25lZSB7XG4gICAgICAgICAgICAgICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICAgICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwcHg7XG4gICAgICAgICAgICAgICAgLmNvbC14cy0xIHtcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAwcHg7XG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDBweDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgfVxufVxufVxuXG5cbi50aWNrZXQtYXNzaWduZWVfX2RldGFpbHMge1xuICBwYWRkaW5nLXJpZ2h0OiAwcHg7XG4gIHBhZGRpbmctbGVmdDogMDtcbn1cblxuLnBvcG92ZXIuYm90dG9tID4gLmFycm93OjphZnRlciB7XG5cdG1hcmdpbi1yaWdodDogLTEwcHg7XG5cdG1hcmdpbi1sZWZ0OiAtMTBweDtcbn1cblxuLmNhbGVuZGFydmlld19ldmVudF9pbm5lciB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBwYWRkaW5nLWxlZnQ6IDJweDtcbn1cblxuLmJvb2t2aWV3X2V2ZW50X2Zsb2F0X2lubmVyLCAuYm9va3ZpZXdfZXZlbnRfaW5uZXIsIC5tb250aHZpZXdfZXZlbnRfaW5uZXIgIHtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuXG4ucHVsbC1sZWZ0IHtcbiAgZmxvYXQ6IHJpZ2h0ICFpbXBvcnRhbnQ7XG59XG5cbi5jaGF0LW1lc3NhZ2VfX2JvZHlfX2RldGFpbHMge1xuXHRwYWRkaW5nLXJpZ2h0OiAzMHB4O1xuICBtYXJnaW46IDE1cHggMjVweCAxNXB4IDVweDtcbn1cblxuLnRpbWVsaW5lLW5vdGVfX2ZsYWctbGFiZWwge1xuICAmID4gc3BhbiB7XG4gICAgZmxvYXQ6IHJpZ2h0O1xuICAgICYgPiBpIHtcbiAgICAgIGZsb2F0OiByaWdodDtcbiAgICB9XG4gIH1cbn1cblxuLmJtYy1uZWVkLWF0dGVudGlvbi1tb2RhbCB7XG4gIC5tb2RhbC1oZWFkZXIge1xuICAgIC5pY29uLWNyb3NzIHtcbiAgICAgIGZsb2F0OiBsZWZ0O1xuICAgIH1cbiAgfVxuICAubW9kYWwtZm9vdGVyIHtcbiAgICBwYWRkaW5nOiAxMHB4IDAgMCAxNXB4O1xuICB9XG59XG5cbi5kd3AtY3Jvc3MtaWNvbiB7XG4gIGZsb2F0OiBsZWZ0O1xuICBmb250LXNpemU6IDIwcHg7XG59XG5cbi50aXRsZS1iYXJfX2Rpc3BsYXktaWQge1xuICBwYWRkaW5nLWxlZnQ6IDA7XG4gIHBhZGRpbmctcmlnaHQ6IDA7XG4gIG1hcmdpbi1yaWdodDogMDtcbiAgbWFyZ2luLWxlZnQ6IDE1cHg7XG59XG5cbi50aXRsZS1iYXJfX2Rpc3BsYXktaWQtbGFiZWwge1xuICBwYWRkaW5nLWxlZnQ6IDA7XG4gIHBhZGRpbmctcmlnaHQ6IDEwcHg7XG59XG5cbi5zdGF0dXMtYmFyX19zZWN0aW9uIHtcbiAgcGFkZGluZy1sZWZ0OiAwO1xuICBwYWRkaW5nLXJpZ2h0OiAzMHB4O1xuICAuc3RhdHVzLWJhcl9fc3RhdHVzIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgIHBhZGRpbmctbGVmdDogMTVweDtcbiAgfVxufVxuXG4ubGF5b3V0LXJlbmRlcmVyX19jaGlsZC1yb3cge1xuICBwYWRkaW5nLWxlZnQ6IDA7XG59XG5cbi5sYXlvdXQtcmVuZGVyZXJfX3BhcmVudC1yb3cge1xuICBtYXJnaW4tcmlnaHQ6IC0xMnB4O1xuICBtYXJnaW4tbGVmdDogMDtcbn1cblxuLnBlcnNvbi1uYW1lIHtcbiAgLnBlcnNvbi1uYW1lX19hdmF0YXIsXG4gIC5wZXJzb24tbmFtZV9fYXZhdGFyX2JpZyB7XG4gICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgIG1hcmdpbi1sZWZ0OiAyMHB4O1xuICB9XG5cbiAgLnBlcnNvbi1uYW1lX19kZXRhaWxzIHtcbiAgICBtYXJnaW4tbGVmdDogMTBweDtcbiAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgLmxhYmVsX2NvbnRyb2wtd3JhcCxcbiAgICAuYWN0aW9uLWJsYWRlX19hc3NpZ24tbWUge1xuICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgICAgbWFyZ2luLWxlZnQ6IDVweDtcbiAgICB9XG4gIH1cblxuICAucGVyc29uLW5hbWVfX1ZJUEN1c3RvbWVyIHtcbiAgICByaWdodDogaW5oZXJpdDtcbiAgICBsZWZ0OiAyMHB4O1xuICB9XG59XG5cbi50aXRsZS1iYXJfX3NlY3Rpb24ge1xuICBwYWRkaW5nOiAyMHB4IDI4cHggNXB4IDIwcHg7XG59XG5cbi5wcm9maWxlLXJlbGF0aW9uX19hZGQtcmVsYXRpb24tYnV0dG9uLmRyb3Bkb3duIHtcbiAgLmJ0bl9uby1maWxsLFxuICAucmVzb3VyY2UtcHJldmlld19fYm9keS1jb250cm9sLWJ1dHRvbixcbiAgLnNlYXJjaC1yZXNvdXJjZV9fb3B0aW9uLWJ1dHRvbixcbiAgLnNlYXJjaC1yZXNvdXJjZV9fcG9wb3V0LWJ1dHRvbixcbiAgJi5vcGVuIC5idG5fbm8tZmlsbCxcbiAgJi5vcGVuIC5yZXNvdXJjZS1wcmV2aWV3X19ib2R5LWNvbnRyb2wtYnV0dG9uLFxuICAmLm9wZW4gLnNlYXJjaC1yZXNvdXJjZV9fb3B0aW9uLWJ1dHRvbixcbiAgJi5vcGVuIC5zZWFyY2gtcmVzb3VyY2VfX3BvcG91dC1idXR0b24ge1xuICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICBtYXJnaW4tbGVmdDogMjBweDtcbiAgfVxufVxuXG4uc3RhdHVzLWJhcl9fbGFiZWwge1xuICBmbG9hdDogcmlnaHQ7XG4gIHBhZGRpbmctcmlnaHQ6IDA7XG4gIHBhZGRpbmctbGVmdDogNXB4O1xufVxuXG4uc2VhcmNoX19maWx0ZXItdG9nZ2xlIHtcbiAgcGFkZGluZy1sZWZ0OiAxMHB4O1xuICBwYWRkaW5nLXJpZ2h0OiAwO1xufVxuXG4ucmVzb3VyY2UtcHJldmlld19fYm9keS1jb250cm9sLWJ1dHRvbiB7XG4gIHRleHQtYWxpZ246IHJpZ2h0O1xufVxuXG5kaXYuZHJvcGRvd24taW5wdXRfX2J1dHRvbiB7XG4gIHBhZGRpbmctcmlnaHQ6IDEycHg7XG4gIHBhZGRpbmctbGVmdDogMzhweDtcbn1cblxuLmF0dGFjaG1lbnRfX25hbWUsXG4uYXR0YWNobWVudHMtcHJldmlld2VyX19maWxlcy1saXN0X2l0ZW0taGVhZGVyLFxuLnRpbWVsaW5lLWl0ZW0tYXR0YWNobWVudF9fdGl0bGUsXG4uZW1haWxfX2F0dGFjaG1lbnQge1xuICBkaXJlY3Rpb246IGx0cjtcbn1cblxuLnBlcnNvbl9fYWdlbnQtYXZhaWxhYmlsaXR5LCAucGVyc29uX19hZ2VudC1uZXR3b3JrLCAucGVyc29uX19hZ2VudC1vcmdhbml6YXRpb24ge1xuICBmbG9hdDogcmlnaHQ7XG59XG5cbi50eXBlYWhlYWQtaW5wdXQgKyAuZHJvcGRvd24tbWVudSA+IGxpID4gYSwgLnR5cGVhaGVhZC1pbnB1dCArIC50b29sdGlwICsgLmRyb3Bkb3duLW1lbnUgPiBsaSA+IGEge1xuICBtYXJnaW4tbGVmdDogMTVweDtcbiAgbWFyZ2luLXJpZ2h0OiAwO1xufVxuXG4ubWVudS1jdXN0b21fX2Ryb3Bkb3duICsgLmRyb3Bkb3duLW1lbnUge1xuICBsZWZ0OiBhdXRvICFpbXBvcnRhbnQ7XG59XG5cbi50eXBlYWhlYWQtbG9hZGVyIHtcbiAgcmlnaHQ6IGF1dG87XG4gIGxlZnQ6IDEwcHg7XG59XG5cbi50aWNrZXQtZGF0ZV9fZWRpdG9yIHtcbiAgLmN1c3RvbS1maWVsZF9fZGF0ZSwgY3VzdG9tLWZpZWxkX190aW1lIHtcbiAgICBpbnB1dFt0eXBlPXRleHRdIHtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDEycHg7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDIzcHg7XG4gICAgfVxuICB9XG59XG5cbi5jaGFydF9fcGVyc3BlY3RpdmUtY29udGFpbmVyIHVsLmRyb3Bkb3duLW1lbnUge1xuICBsZWZ0OiAwO1xuICByaWdodDogYXV0b1xufVxuXG4uY2hhcnRfX3BlcnNwZWN0aXZlLWNvbnRhaW5lciB1bC5kcm9wZG93bi1tZW51IHtcbiAgbGVmdDogMDtcbiAgcmlnaHQ6IGF1dG9cbn1cblxuLmFsaWduLXJpZ2h0IHtcbiAgdGV4dC1hbGlnbjogcmlnaHQ7XG59XG5cbi50aWNrZXQtZGF0ZV9fZWRpdG9yIHtcbi5jdXN0b20tZmllbGRfX2RhdGUsIGN1c3RvbS1maWVsZF9fdGltZSB7XG5pbnB1dFt0eXBlPXRleHRdIHtcbnBhZGRpbmctcmlnaHQ6IDEycHg7XG5wYWRkaW5nLWxlZnQ6IDIzcHg7XG59XG59XG59XG5cbi5tb2JpbGUge1xuICAuZ3JpZC1tb2JpbGUtYXNzZXRfX2Fzc2lnbmVlLWltZyB7XG4gICAgbWFyZ2luLWxlZnQ6IDVweDtcbiAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gIH1cbiAgLmthLXByb2ZpbGUgLmthLWhlYWRlcl9fdmVyc2lvbi1zZWxlY3Rpb24ge1xuICAgIG1hcmdpbi1yaWdodDogLTIwcHg7XG4gIH1cbn1cbiIsIi8vIFNldHRpbmdzXG5AaW1wb3J0IFwic2V0dGluZ3MvcHJlZml4ZXJcIjtcbkBpbXBvcnQgXCJzZXR0aW5ncy9weC10by1lbVwiO1xuXG4vLyBDdXN0b20gSGVscGVyc1xuQGltcG9ydCBcImhlbHBlcnMvZ3JhZGllbnQtcG9zaXRpb25zLXBhcnNlclwiO1xuQGltcG9ydCBcImhlbHBlcnMvbGluZWFyLXBvc2l0aW9ucy1wYXJzZXJcIjtcbkBpbXBvcnQgXCJoZWxwZXJzL3JhZGlhbC1hcmctcGFyc2VyXCI7XG5AaW1wb3J0IFwiaGVscGVycy9yYWRpYWwtcG9zaXRpb25zLXBhcnNlclwiO1xuQGltcG9ydCBcImhlbHBlcnMvcmVuZGVyLWdyYWRpZW50c1wiO1xuQGltcG9ydCBcImhlbHBlcnMvc2hhcGUtc2l6ZS1zdHJpcHBlclwiO1xuXG4vLyBDdXN0b20gRnVuY3Rpb25zXG5AaW1wb3J0IFwiZnVuY3Rpb25zL2ZsZXgtZ3JpZFwiO1xuQGltcG9ydCBcImZ1bmN0aW9ucy9ncmlkLXdpZHRoXCI7XG5AaW1wb3J0IFwiZnVuY3Rpb25zL2dvbGRlbi1yYXRpb1wiO1xuQGltcG9ydCBcImZ1bmN0aW9ucy9saW5lYXItZ3JhZGllbnRcIjtcbkBpbXBvcnQgXCJmdW5jdGlvbnMvbW9kdWxhci1zY2FsZVwiO1xuQGltcG9ydCBcImZ1bmN0aW9ucy9weC10by1lbVwiO1xuQGltcG9ydCBcImZ1bmN0aW9ucy9yYWRpYWwtZ3JhZGllbnRcIjtcbkBpbXBvcnQgXCJmdW5jdGlvbnMvc3RyaXAtdW5pdHNcIjtcbkBpbXBvcnQgXCJmdW5jdGlvbnMvdGludC1zaGFkZVwiO1xuQGltcG9ydCBcImZ1bmN0aW9ucy90cmFuc2l0aW9uLXByb3BlcnR5LW5hbWVcIjtcblxuLy8gQ1NTMyBNaXhpbnNcbkBpbXBvcnQgXCJjc3MzL2FuaW1hdGlvblwiO1xuQGltcG9ydCBcImNzczMvYXBwZWFyYW5jZVwiO1xuQGltcG9ydCBcImNzczMvYmFja2ZhY2UtdmlzaWJpbGl0eVwiO1xuQGltcG9ydCBcImNzczMvYmFja2dyb3VuZFwiO1xuQGltcG9ydCBcImNzczMvYmFja2dyb3VuZC1pbWFnZVwiO1xuQGltcG9ydCBcImNzczMvYm9yZGVyLWltYWdlXCI7XG5AaW1wb3J0IFwiY3NzMy9ib3JkZXItcmFkaXVzXCI7XG5AaW1wb3J0IFwiY3NzMy9ib3gtc2l6aW5nXCI7XG5AaW1wb3J0IFwiY3NzMy9jYWxjXCI7XG5AaW1wb3J0IFwiY3NzMy9jb2x1bW5zXCI7XG5AaW1wb3J0IFwiY3NzMy9mbGV4LWJveFwiO1xuQGltcG9ydCBcImNzczMvZm9udC1mYWNlXCI7XG5AaW1wb3J0IFwiY3NzMy9oeXBoZW5zXCI7XG5AaW1wb3J0IFwiY3NzMy9oaWRwaS1tZWRpYS1xdWVyeVwiO1xuQGltcG9ydCBcImNzczMvaW1hZ2UtcmVuZGVyaW5nXCI7XG5AaW1wb3J0IFwiY3NzMy9pbmxpbmUtYmxvY2tcIjtcbkBpbXBvcnQgXCJjc3MzL2tleWZyYW1lc1wiO1xuQGltcG9ydCBcImNzczMvbGluZWFyLWdyYWRpZW50XCI7XG5AaW1wb3J0IFwiY3NzMy9wZXJzcGVjdGl2ZVwiO1xuQGltcG9ydCBcImNzczMvcmFkaWFsLWdyYWRpZW50XCI7XG5AaW1wb3J0IFwiY3NzMy90cmFuc2Zvcm1cIjtcbkBpbXBvcnQgXCJjc3MzL3RyYW5zaXRpb25cIjtcbkBpbXBvcnQgXCJjc3MzL3VzZXItc2VsZWN0XCI7XG5AaW1wb3J0IFwiY3NzMy9wbGFjZWhvbGRlclwiO1xuXG4vLyBBZGRvbnMgJiBvdGhlciBtaXhpbnNcbkBpbXBvcnQgXCJhZGRvbnMvYnV0dG9uXCI7XG5AaW1wb3J0IFwiYWRkb25zL2NsZWFyZml4XCI7XG5AaW1wb3J0IFwiYWRkb25zL2ZvbnQtZmFtaWx5XCI7XG5AaW1wb3J0IFwiYWRkb25zL2hpZGUtdGV4dFwiO1xuQGltcG9ydCBcImFkZG9ucy9odG1sNS1pbnB1dC10eXBlc1wiO1xuQGltcG9ydCBcImFkZG9ucy9wb3NpdGlvblwiO1xuQGltcG9ydCBcImFkZG9ucy9wcmVmaXhlclwiO1xuQGltcG9ydCBcImFkZG9ucy9yZXRpbmEtaW1hZ2VcIjtcbkBpbXBvcnQgXCJhZGRvbnMvc2l6ZVwiO1xuQGltcG9ydCBcImFkZG9ucy90aW1pbmctZnVuY3Rpb25zXCI7XG5AaW1wb3J0IFwiYWRkb25zL3RyaWFuZ2xlXCI7XG4iLCIvLyBWYXJpYWJsZSBzZXR0aW5ncyBmb3IgL2FkZG9ucy9wcmVmaXhlci5zY3NzXG4kcHJlZml4LWZvci13ZWJraXQ6ICAgIHRydWUgIWRlZmF1bHQ7XG4kcHJlZml4LWZvci1tb3ppbGxhOiAgIHRydWUgIWRlZmF1bHQ7XG4kcHJlZml4LWZvci1taWNyb3NvZnQ6IHRydWUgIWRlZmF1bHQ7XG4kcHJlZml4LWZvci1vcGVyYTogICAgIHRydWUgIWRlZmF1bHQ7XG4kcHJlZml4LWZvci1zcGVjOiAgICAgIHRydWUgIWRlZmF1bHQ7IC8vIHJlcXVpcmVkIGZvciBrZXlmcmFtZSBtaXhpblxuIiwiJGVtLWJhc2U6IDE2cHggIWRlZmF1bHQ7XG4iLCJAZnVuY3Rpb24gX2dyYWRpZW50LXBvc2l0aW9ucy1wYXJzZXIoJGdyYWRpZW50LXR5cGUsICRncmFkaWVudC1wb3NpdGlvbnMpIHtcbiAgQGlmICRncmFkaWVudC1wb3NpdGlvbnNcbiAgYW5kICgkZ3JhZGllbnQtdHlwZSA9PSBsaW5lYXIpXG4gIGFuZCAodHlwZS1vZigkZ3JhZGllbnQtcG9zaXRpb25zKSAhPSBjb2xvcikge1xuICAgICRncmFkaWVudC1wb3NpdGlvbnM6IF9saW5lYXItcG9zaXRpb25zLXBhcnNlcigkZ3JhZGllbnQtcG9zaXRpb25zKTtcbiAgfVxuICBAZWxzZSBpZiAkZ3JhZGllbnQtcG9zaXRpb25zXG4gIGFuZCAoJGdyYWRpZW50LXR5cGUgPT0gcmFkaWFsKVxuICBhbmQgKHR5cGUtb2YoJGdyYWRpZW50LXBvc2l0aW9ucykgIT0gY29sb3IpIHtcbiAgICAkZ3JhZGllbnQtcG9zaXRpb25zOiBfcmFkaWFsLXBvc2l0aW9ucy1wYXJzZXIoJGdyYWRpZW50LXBvc2l0aW9ucyk7XG4gIH1cbiAgQHJldHVybiAkZ3JhZGllbnQtcG9zaXRpb25zO1xufVxuIiwiQGZ1bmN0aW9uIF9saW5lYXItcG9zaXRpb25zLXBhcnNlcigkcG9zKSB7XG4gICR0eXBlOiB0eXBlLW9mKG50aCgkcG9zLCAxKSk7XG4gICRzcGVjOiBudWxsO1xuICAkZGVncmVlOiBudWxsO1xuICAkc2lkZTogbnVsbDtcbiAgJGNvcm5lcjogbnVsbDtcbiAgJGxlbmd0aDogbGVuZ3RoKCRwb3MpO1xuICAvLyBQYXJzZSBTaWRlIGFuZCBjb3JuZXIgcG9zaXRpb25zXG4gIEBpZiAoJGxlbmd0aCA+IDEpIHtcbiAgICBAaWYgbnRoKCRwb3MsIDEpID09IFwidG9cIiB7IC8vIE5ld2VyIHN5bnRheFxuICAgICAgJHNpZGU6IG50aCgkcG9zLCAyKTtcblxuICAgICAgQGlmICRsZW5ndGggPT0gMiB7IC8vIGVnLiB0byB0b3BcbiAgICAgICAgLy8gU3dhcCBmb3IgYmFja3dhcmRzIGNvbXBhdGFiaWxpdHlcbiAgICAgICAgJGRlZ3JlZTogX3Bvc2l0aW9uLWZsaXBwZXIobnRoKCRwb3MsIDIpKTtcbiAgICAgIH1cbiAgICAgIEBlbHNlIGlmICRsZW5ndGggPT0gMyB7IC8vIGVnLiB0byB0b3AgbGVmdFxuICAgICAgICAkY29ybmVyOiBudGgoJHBvcywgMyk7XG4gICAgICB9XG4gICAgfVxuICAgIEBlbHNlIGlmICRsZW5ndGggPT0gMiB7IC8vIE9sZGVyIHN5bnRheCAoXCJ0b3AgbGVmdFwiKVxuICAgICAgJHNpZGU6IF9wb3NpdGlvbi1mbGlwcGVyKG50aCgkcG9zLCAxKSk7XG4gICAgICAkY29ybmVyOiBfcG9zaXRpb24tZmxpcHBlcihudGgoJHBvcywgMikpO1xuICAgIH1cblxuICAgIEBpZiAoXCIjeyRzaWRlfSAjeyRjb3JuZXJ9XCIgPT0gXCJsZWZ0IHRvcFwiKSBvciAoXCIjeyRzaWRlfSAjeyRjb3JuZXJ9XCIgPT0gXCJ0b3AgbGVmdFwiKSB7XG4gICAgICAkZGVncmVlOiBfcG9zaXRpb24tZmxpcHBlcigjeyRzaWRlfSkgX3Bvc2l0aW9uLWZsaXBwZXIoI3skY29ybmVyfSk7XG4gICAgfVxuICAgIEBlbHNlIGlmIChcIiN7JHNpZGV9ICN7JGNvcm5lcn1cIiA9PSBcInJpZ2h0IHRvcFwiKSBvciAoXCIjeyRzaWRlfSAjeyRjb3JuZXJ9XCIgPT0gXCJ0b3AgcmlnaHRcIikge1xuICAgICAgJGRlZ3JlZTogX3Bvc2l0aW9uLWZsaXBwZXIoI3skc2lkZX0pIF9wb3NpdGlvbi1mbGlwcGVyKCN7JGNvcm5lcn0pO1xuICAgIH1cbiAgICBAZWxzZSBpZiAoXCIjeyRzaWRlfSAjeyRjb3JuZXJ9XCIgPT0gXCJyaWdodCBib3R0b21cIikgb3IgKFwiI3skc2lkZX0gI3skY29ybmVyfVwiID09IFwiYm90dG9tIHJpZ2h0XCIpIHtcbiAgICAgICRkZWdyZWU6IF9wb3NpdGlvbi1mbGlwcGVyKCN7JHNpZGV9KSBfcG9zaXRpb24tZmxpcHBlcigjeyRjb3JuZXJ9KTtcbiAgICB9XG4gICAgQGVsc2UgaWYgKFwiI3skc2lkZX0gI3skY29ybmVyfVwiID09IFwibGVmdCBib3R0b21cIikgb3IgKFwiI3skc2lkZX0gI3skY29ybmVyfVwiID09IFwiYm90dG9tIGxlZnRcIikge1xuICAgICAgJGRlZ3JlZTogX3Bvc2l0aW9uLWZsaXBwZXIoI3skc2lkZX0pIF9wb3NpdGlvbi1mbGlwcGVyKCN7JGNvcm5lcn0pO1xuICAgIH1cbiAgICAkc3BlYzogdG8gJHNpZGUgJGNvcm5lcjtcbiAgfVxuICBAZWxzZSBpZiAkbGVuZ3RoID09IDEge1xuICAgIC8vIFN3YXAgZm9yIGJhY2t3YXJkcyBjb21wYXRhYmlsaXR5XG4gICAgQGlmICR0eXBlID09IHN0cmluZyB7XG4gICAgICAkZGVncmVlOiAkcG9zO1xuICAgICAgJHNwZWM6IHRvIF9wb3NpdGlvbi1mbGlwcGVyKCRwb3MpO1xuICAgIH1cbiAgICBAZWxzZSB7XG4gICAgICAkZGVncmVlOiAtMjcwIC0gJHBvczsgLy9yb3RhdGUgdGhlIGdyYWRpZW50IG9wcG9zaXRlIGZyb20gc3BlY1xuICAgICAgJHNwZWM6ICRwb3M7XG4gICAgfVxuICB9XG4gICRkZWdyZWU6IHVucXVvdGUoJGRlZ3JlZSArIFwiLFwiKTtcbiAgJHNwZWM6ICAgdW5xdW90ZSgkc3BlYyArIFwiLFwiKTtcbiAgQHJldHVybiAkZGVncmVlICRzcGVjO1xufVxuXG5AZnVuY3Rpb24gX3Bvc2l0aW9uLWZsaXBwZXIoJHBvcykge1xuIEByZXR1cm4gaWYoJHBvcyA9PSBsZWZ0LCByaWdodCwgbnVsbClcbiAgICAgICAgIGlmKCRwb3MgPT0gcmlnaHQsIGxlZnQsIG51bGwpXG4gICAgICAgICBpZigkcG9zID09IHRvcCwgYm90dG9tLCBudWxsKVxuICAgICAgICAgaWYoJHBvcyA9PSBib3R0b20sIHRvcCwgbnVsbCk7XG59XG4iLCJAZnVuY3Rpb24gX3JhZGlhbC1hcmctcGFyc2VyKCRHMSwgJEcyLCAkcG9zLCAkc2hhcGUtc2l6ZSkge1xuICBAZWFjaCAkdmFsdWUgaW4gJEcxLCAkRzIge1xuICAgICRmaXJzdC12YWw6IG50aCgkdmFsdWUsIDEpO1xuICAgICRwb3MtdHlwZTogIHR5cGUtb2YoJGZpcnN0LXZhbCk7XG4gICAgJHNwZWMtYXQtaW5kZXg6IG51bGw7XG5cbiAgICAvLyBEZXRlcm1pbmUgaWYgc3BlYyB3YXMgcGFzc2VkIHRvIG1peGluXG4gICAgQGlmIHR5cGUtb2YoJHZhbHVlKSA9PSBsaXN0IHtcbiAgICAgICRzcGVjLWF0LWluZGV4OiBpZihpbmRleCgkdmFsdWUsIGF0KSwgaW5kZXgoJHZhbHVlLCBhdCksIGZhbHNlKTtcbiAgICB9XG4gICAgQGlmICRzcGVjLWF0LWluZGV4IHtcbiAgICAgIEBpZiAkc3BlYy1hdC1pbmRleCA+IDEge1xuICAgICAgICBAZm9yICRpIGZyb20gMSB0aHJvdWdoICgkc3BlYy1hdC1pbmRleCAtIDEpIHtcbiAgICAgICAgICAkc2hhcGUtc2l6ZTogJHNoYXBlLXNpemUgbnRoKCR2YWx1ZSwgJGkpO1xuICAgICAgICB9XG4gICAgICAgIEBmb3IgJGkgZnJvbSAoJHNwZWMtYXQtaW5kZXggKyAxKSB0aHJvdWdoIGxlbmd0aCgkdmFsdWUpIHtcbiAgICAgICAgICAkcG9zOiAkcG9zIG50aCgkdmFsdWUsICRpKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgQGVsc2UgaWYgJHNwZWMtYXQtaW5kZXggPT0gMSB7XG4gICAgICAgIEBmb3IgJGkgZnJvbSAoJHNwZWMtYXQtaW5kZXggKyAxKSB0aHJvdWdoIGxlbmd0aCgkdmFsdWUpIHtcbiAgICAgICAgICAkcG9zOiAkcG9zIG50aCgkdmFsdWUsICRpKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgJEcxOiBudWxsO1xuICAgIH1cblxuICAgIC8vIElmIG5vdCBzcGVjIGNhbGN1bGF0ZSBjb3JyZWN0IHZhbHVlc1xuICAgIEBlbHNlIHtcbiAgICAgIEBpZiAoJHBvcy10eXBlICE9IGNvbG9yKSBvciAoJGZpcnN0LXZhbCAhPSBcInRyYW5zcGFyZW50XCIpIHtcbiAgICAgICAgQGlmICgkcG9zLXR5cGUgPT0gbnVtYmVyKVxuICAgICAgICBvciAoJGZpcnN0LXZhbCA9PSBcImNlbnRlclwiKVxuICAgICAgICBvciAoJGZpcnN0LXZhbCA9PSBcInRvcFwiKVxuICAgICAgICBvciAoJGZpcnN0LXZhbCA9PSBcInJpZ2h0XCIpXG4gICAgICAgIG9yICgkZmlyc3QtdmFsID09IFwiYm90dG9tXCIpXG4gICAgICAgIG9yICgkZmlyc3QtdmFsID09IFwibGVmdFwiKSB7XG5cbiAgICAgICAgICAkcG9zOiAkdmFsdWU7XG5cbiAgICAgICAgICBAaWYgJHBvcyA9PSAkRzEge1xuICAgICAgICAgICAgJEcxOiBudWxsO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIEBlbHNlIGlmXG4gICAgICAgICAgICgkZmlyc3QtdmFsID09IFwiZWxsaXBzZVwiKVxuICAgICAgICBvciAoJGZpcnN0LXZhbCA9PSBcImNpcmNsZVwiKVxuICAgICAgICBvciAoJGZpcnN0LXZhbCA9PSBcImNsb3Nlc3Qtc2lkZVwiKVxuICAgICAgICBvciAoJGZpcnN0LXZhbCA9PSBcImNsb3Nlc3QtY29ybmVyXCIpXG4gICAgICAgIG9yICgkZmlyc3QtdmFsID09IFwiZmFydGhlc3Qtc2lkZVwiKVxuICAgICAgICBvciAoJGZpcnN0LXZhbCA9PSBcImZhcnRoZXN0LWNvcm5lclwiKVxuICAgICAgICBvciAoJGZpcnN0LXZhbCA9PSBcImNvbnRhaW5cIilcbiAgICAgICAgb3IgKCRmaXJzdC12YWwgPT0gXCJjb3ZlclwiKSB7XG5cbiAgICAgICAgICAkc2hhcGUtc2l6ZTogJHZhbHVlO1xuXG4gICAgICAgICAgQGlmICR2YWx1ZSA9PSAkRzEge1xuICAgICAgICAgICAgJEcxOiBudWxsO1xuICAgICAgICAgIH1cblxuICAgICAgICAgIEBlbHNlIGlmICR2YWx1ZSA9PSAkRzIge1xuICAgICAgICAgICAgJEcyOiBudWxsO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuICBAcmV0dXJuICRHMSwgJEcyLCAkcG9zLCAkc2hhcGUtc2l6ZTtcbn1cbiIsIkBmdW5jdGlvbiBfcmFkaWFsLXBvc2l0aW9ucy1wYXJzZXIoJGdyYWRpZW50LXBvcykge1xuICAkc2hhcGUtc2l6ZTogbnRoKCRncmFkaWVudC1wb3MsIDEpO1xuICAkcG9zOiAgICAgICAgbnRoKCRncmFkaWVudC1wb3MsIDIpO1xuICAkc2hhcGUtc2l6ZS1zcGVjOiBfc2hhcGUtc2l6ZS1zdHJpcHBlcigkc2hhcGUtc2l6ZSk7XG5cbiAgJHByZS1zcGVjOiB1bnF1b3RlKGlmKCRwb3MsIFwiI3skcG9zfSwgXCIsIG51bGwpKVxuICAgICAgICAgICAgIHVucXVvdGUoaWYoJHNoYXBlLXNpemUsIFwiI3skc2hhcGUtc2l6ZX0sXCIsIG51bGwpKTtcbiAgJHBvcy1zcGVjOiBpZigkcG9zLCBcImF0ICN7JHBvc31cIiwgbnVsbCk7XG5cbiAgJHNwZWM6IFwiI3skc2hhcGUtc2l6ZS1zcGVjfSAjeyRwb3Mtc3BlY31cIjtcblxuICAvLyBBZGQgY29tbWFcbiAgQGlmICgkc3BlYyAhPSAnICAnKSB7XG4gICAgJHNwZWM6IFwiI3skc3BlY30sXCJcbiAgfVxuXG4gIEByZXR1cm4gJHByZS1zcGVjICRzcGVjO1xufVxuIiwiLy8gVXNlciBmb3IgbGluZWFyIGFuZCByYWRpYWwgZ3JhZGllbnRzIHdpdGhpbiBiYWNrZ3JvdW5kLWltYWdlIG9yIGJvcmRlci1pbWFnZSBwcm9wZXJ0aWVzXG5cbkBmdW5jdGlvbiBfcmVuZGVyLWdyYWRpZW50cygkZ3JhZGllbnQtcG9zaXRpb25zLCAkZ3JhZGllbnRzLCAkZ3JhZGllbnQtdHlwZSwgJHZlbmRvcjogZmFsc2UpIHtcbiAgJHByZS1zcGVjOiBudWxsO1xuICAkc3BlYzogbnVsbDtcbiAgJHZlbmRvci1ncmFkaWVudHM6IG51bGw7XG4gIEBpZiAkZ3JhZGllbnQtdHlwZSA9PSBsaW5lYXIge1xuICAgIEBpZiAkZ3JhZGllbnQtcG9zaXRpb25zIHtcbiAgICAgICRwcmUtc3BlYzogbnRoKCRncmFkaWVudC1wb3NpdGlvbnMsIDEpO1xuICAgICAgJHNwZWM6ICAgICBudGgoJGdyYWRpZW50LXBvc2l0aW9ucywgMik7XG4gICAgfVxuICB9XG4gIEBlbHNlIGlmICRncmFkaWVudC10eXBlID09IHJhZGlhbCB7XG4gICAgJHByZS1zcGVjOiBudGgoJGdyYWRpZW50LXBvc2l0aW9ucywgMSk7XG4gICAgJHNwZWM6ICAgICBudGgoJGdyYWRpZW50LXBvc2l0aW9ucywgMik7XG4gIH1cblxuICBAaWYgJHZlbmRvciB7XG4gICAgJHZlbmRvci1ncmFkaWVudHM6IC0jeyR2ZW5kb3J9LSN7JGdyYWRpZW50LXR5cGV9LWdyYWRpZW50KCN7JHByZS1zcGVjfSAkZ3JhZGllbnRzKTtcbiAgfVxuICBAZWxzZSBpZiAkdmVuZG9yID09IGZhbHNlIHtcbiAgICAkdmVuZG9yLWdyYWRpZW50czogXCIjeyRncmFkaWVudC10eXBlfS1ncmFkaWVudCgjeyRzcGVjfSAjeyRncmFkaWVudHN9KVwiO1xuICAgICR2ZW5kb3ItZ3JhZGllbnRzOiB1bnF1b3RlKCR2ZW5kb3ItZ3JhZGllbnRzKTtcbiAgfVxuICBAcmV0dXJuICR2ZW5kb3ItZ3JhZGllbnRzO1xufVxuIiwiQGZ1bmN0aW9uIF9zaGFwZS1zaXplLXN0cmlwcGVyKCRzaGFwZS1zaXplKSB7XG4gICRzaGFwZS1zaXplLXNwZWM6IG51bGw7XG4gIEBlYWNoICR2YWx1ZSBpbiAkc2hhcGUtc2l6ZSB7XG4gICAgQGlmICgkdmFsdWUgPT0gXCJjb3ZlclwiKSBvciAoJHZhbHVlID09IFwiY29udGFpblwiKSB7XG4gICAgICAkdmFsdWU6IG51bGw7XG4gICAgfVxuICAgICRzaGFwZS1zaXplLXNwZWM6IFwiI3skc2hhcGUtc2l6ZS1zcGVjfSAjeyR2YWx1ZX1cIjtcbiAgfVxuICBAcmV0dXJuICRzaGFwZS1zaXplLXNwZWM7XG59XG4iLCIvLyBGbGV4aWJsZSBncmlkXG5AZnVuY3Rpb24gZmxleC1ncmlkKCRjb2x1bW5zLCAkY29udGFpbmVyLWNvbHVtbnM6ICRmZy1tYXgtY29sdW1ucykge1xuICAkd2lkdGg6ICRjb2x1bW5zICogJGZnLWNvbHVtbiArICgkY29sdW1ucyAtIDEpICogJGZnLWd1dHRlcjtcbiAgJGNvbnRhaW5lci13aWR0aDogJGNvbnRhaW5lci1jb2x1bW5zICogJGZnLWNvbHVtbiArICgkY29udGFpbmVyLWNvbHVtbnMgLSAxKSAqICRmZy1ndXR0ZXI7XG4gIEByZXR1cm4gcGVyY2VudGFnZSgkd2lkdGggLyAkY29udGFpbmVyLXdpZHRoKTtcbn1cblxuLy8gRmxleGlibGUgZ3V0dGVyXG5AZnVuY3Rpb24gZmxleC1ndXR0ZXIoJGNvbnRhaW5lci1jb2x1bW5zOiAkZmctbWF4LWNvbHVtbnMsICRndXR0ZXI6ICRmZy1ndXR0ZXIpIHtcbiAgJGNvbnRhaW5lci13aWR0aDogJGNvbnRhaW5lci1jb2x1bW5zICogJGZnLWNvbHVtbiArICgkY29udGFpbmVyLWNvbHVtbnMgLSAxKSAqICRmZy1ndXR0ZXI7XG4gIEByZXR1cm4gcGVyY2VudGFnZSgkZ3V0dGVyIC8gJGNvbnRhaW5lci13aWR0aCk7XG59XG5cbi8vIFRoZSAkZmctY29sdW1uLCAkZmctZ3V0dGVyIGFuZCAkZmctbWF4LWNvbHVtbnMgdmFyaWFibGVzIG11c3QgYmUgZGVmaW5lZCBpbiB5b3VyIGJhc2Ugc3R5bGVzaGVldCB0byBwcm9wZXJseSB1c2UgdGhlIGZsZXgtZ3JpZCBmdW5jdGlvbi5cbi8vIFRoaXMgZnVuY3Rpb24gdGFrZXMgdGhlIGZsdWlkIGdyaWQgZXF1YXRpb24gKHRhcmdldCAvIGNvbnRleHQgPSByZXN1bHQpIGFuZCB1c2VzIGNvbHVtbnMgdG8gaGVscCBkZWZpbmUgZWFjaC5cbi8vXG4vLyBUaGUgY2FsY3VsYXRpb24gcHJlc3VtZXMgdGhhdCB5b3VyIGNvbHVtbiBzdHJ1Y3R1cmUgd2lsbCBiZSBtaXNzaW5nIHRoZSBsYXN0IGd1dHRlcjpcbi8vXG4vLyAgIC0tIGNvbHVtbiAtLSBndXR0ZXIgLS0gY29sdW1uIC0tIGd1dHRlciAtLSBjb2x1bW5cbi8vXG4vLyAgJGZnLWNvbHVtbjogNjBweDsgICAgICAgICAgICAgLy8gQ29sdW1uIFdpZHRoXG4vLyAgJGZnLWd1dHRlcjogMjVweDsgICAgICAgICAgICAgLy8gR3V0dGVyIFdpZHRoXG4vLyAgJGZnLW1heC1jb2x1bW5zOiAxMjsgICAgICAgICAgLy8gVG90YWwgQ29sdW1ucyBGb3IgTWFpbiBDb250YWluZXJcbi8vXG4vLyAgZGl2IHtcbi8vICAgIHdpZHRoOiBmbGV4LWdyaWQoNCk7ICAgICAgICAvLyByZXR1cm5zICgzMTVweCAvIDk5NXB4KSA9IDMxLjY1ODI5JTtcbi8vICAgIG1hcmdpbi1sZWZ0OiBmbGV4LWd1dHRlcigpOyAvLyByZXR1cm5zICgyNXB4IC8gOTk1cHgpID0gMi41MTI1NiU7XG4vL1xuLy8gICAgcCB7XG4vLyAgICAgIHdpZHRoOiBmbGV4LWdyaWQoMiwgNCk7ICAvLyByZXR1cm5zICgxNDVweCAvIDMxNXB4KSA9IDQ2LjAzMTc0NiU7XG4vLyAgICAgIGZsb2F0OiBsZWZ0O1xuLy8gICAgICBtYXJnaW46IGZsZXgtZ3V0dGVyKDQpOyAgLy8gcmV0dXJucyAoMjVweCAvIDMxNXB4KSA9IDcuOTM2NTA4JTtcbi8vICAgIH1cbi8vXG4vLyAgICBibG9ja3F1b3RlIHtcbi8vICAgICAgZmxvYXQ6IGxlZnQ7XG4vLyAgICAgIHdpZHRoOiBmbGV4LWdyaWQoMiwgNCk7IC8vIHJldHVybnMgKDE0NXB4IC8gMzE1cHgpID0gNDYuMDMxNzQ2JTtcbi8vICAgIH1cbi8vICB9IiwiQGZ1bmN0aW9uIGdyaWQtd2lkdGgoJG4pIHtcbiAgQHJldHVybiAkbiAqICRndy1jb2x1bW4gKyAoJG4gLSAxKSAqICRndy1ndXR0ZXI7XG59XG5cbi8vIFRoZSAkZ3ctY29sdW1uIGFuZCAkZ3ctZ3V0dGVyIHZhcmlhYmxlcyBtdXN0IGJlIGRlZmluZWQgaW4geW91ciBiYXNlIHN0eWxlc2hlZXQgdG8gcHJvcGVybHkgdXNlIHRoZSBncmlkLXdpZHRoIGZ1bmN0aW9uLlxuLy9cbi8vICAkZ3ctY29sdW1uOiAxMDBweDsgICAgICAgICAvLyBDb2x1bW4gV2lkdGhcbi8vICAkZ3ctZ3V0dGVyOiA0MHB4OyAgICAgICAgICAvLyBHdXR0ZXIgV2lkdGhcbi8vXG4vLyAgZGl2IHtcbi8vICAgIHdpZHRoOiBncmlkLXdpZHRoKDQpOyAgICAvLyByZXR1cm5zIDUyMHB4O1xuLy8gICAgbWFyZ2luLWxlZnQ6ICRndy1ndXR0ZXI7IC8vIHJldHVybnMgNDBweDtcbi8vICB9XG4iLCJAZnVuY3Rpb24gZ29sZGVuLXJhdGlvKCR2YWx1ZSwgJGluY3JlbWVudCkge1xuICBAcmV0dXJuIG1vZHVsYXItc2NhbGUoJHZhbHVlLCAkaW5jcmVtZW50LCAkZ29sZGVuKVxufVxuIiwiQGZ1bmN0aW9uIGxpbmVhci1ncmFkaWVudCgkcG9zLCAkZ3JhZGllbnRzLi4uKSB7XG4gICR0eXBlOiBsaW5lYXI7XG4gICRwb3MtdHlwZTogdHlwZS1vZihudGgoJHBvcywgMSkpO1xuXG4gIC8vIGlmICRwb3MgZG9lc24ndCBleGlzdCwgZml4ICRncmFkaWVudFxuICBAaWYgKCRwb3MtdHlwZSA9PSBjb2xvcikgb3IgKG50aCgkcG9zLCAxKSA9PSBcInRyYW5zcGFyZW50XCIpICB7XG4gICAgJGdyYWRpZW50czogemlwKCRwb3MgJGdyYWRpZW50cyk7XG4gICAgJHBvczogZmFsc2U7XG4gIH1cblxuICAkdHlwZS1ncmFkaWVudDogJHR5cGUsICRwb3MsICRncmFkaWVudHM7XG4gIEByZXR1cm4gJHR5cGUtZ3JhZGllbnQ7XG59XG4iLCIvLyBTY2FsaW5nIFZhcmFpYmxlc1xuJGdvbGRlbjogICAgICAgICAgIDEuNjE4O1xuJG1pbm9yLXNlY29uZDogICAgIDEuMDY3O1xuJG1ham9yLXNlY29uZDogICAgIDEuMTI1O1xuJG1pbm9yLXRoaXJkOiAgICAgIDEuMjtcbiRtYWpvci10aGlyZDogICAgICAxLjI1O1xuJHBlcmZlY3QtZm91cnRoOiAgIDEuMzMzO1xuJGF1Z21lbnRlZC1mb3VydGg6IDEuNDE0O1xuJHBlcmZlY3QtZmlmdGg6ICAgIDEuNTtcbiRtaW5vci1zaXh0aDogICAgICAxLjY7XG4kbWFqb3Itc2l4dGg6ICAgICAgMS42Njc7XG4kbWlub3Itc2V2ZW50aDogICAgMS43Nzg7XG4kbWFqb3Itc2V2ZW50aDogICAgMS44NzU7XG4kb2N0YXZlOiAgICAgICAgICAgMjtcbiRtYWpvci10ZW50aDogICAgICAyLjU7XG4kbWFqb3ItZWxldmVudGg6ICAgMi42Njc7XG4kbWFqb3ItdHdlbGZ0aDogICAgMztcbiRkb3VibGUtb2N0YXZlOiAgICA0O1xuXG5AZnVuY3Rpb24gbW9kdWxhci1zY2FsZSgkdmFsdWUsICRpbmNyZW1lbnQsICRyYXRpbykge1xuICAkdjE6IG50aCgkdmFsdWUsIDEpO1xuICAkdjI6IG50aCgkdmFsdWUsIGxlbmd0aCgkdmFsdWUpKTtcbiAgJHZhbHVlOiAkdjE7XG5cbiAgLy8gc2NhbGUgJHYyIHRvIGp1c3QgYWJvdmUgJHYxXG4gIEB3aGlsZSAkdjIgPiAkdjEge1xuICAgICR2MjogKCR2MiAvICRyYXRpbyk7IC8vIHdpbGwgYmUgb2ZmLWJ5LTFcbiAgfVxuICBAd2hpbGUgJHYyIDwgJHYxIHtcbiAgICAkdjI6ICgkdjIgKiAkcmF0aW8pOyAvLyB3aWxsIGZpeCBvZmYtYnktMVxuICB9XG5cbiAgLy8gY2hlY2sgQUZURVIgc2NhbGluZyAkdjIgdG8gcHJldmVudCBkb3VibGUtY291bnRpbmcgY29ybmVyLWNhc2VcbiAgJGRvdWJsZS1zdHJhbmRlZDogJHYyID4gJHYxO1xuXG4gIEBpZiAkaW5jcmVtZW50ID4gMCB7XG4gICAgQGZvciAkaSBmcm9tIDEgdGhyb3VnaCAkaW5jcmVtZW50IHtcbiAgICAgIEBpZiAkZG91YmxlLXN0cmFuZGVkIGFuZCAoJHYxICogJHJhdGlvKSA+ICR2MiB7XG4gICAgICAgICR2YWx1ZTogJHYyO1xuICAgICAgICAkdjI6ICgkdjIgKiAkcmF0aW8pO1xuICAgICAgfSBAZWxzZSB7XG4gICAgICAgICR2MTogKCR2MSAqICRyYXRpbyk7XG4gICAgICAgICR2YWx1ZTogJHYxO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIEBpZiAkaW5jcmVtZW50IDwgMCB7XG4gICAgLy8gYWRqdXN0ICR2MiB0byBqdXN0IGJlbG93ICR2MVxuICAgIEBpZiAkZG91YmxlLXN0cmFuZGVkIHtcbiAgICAgICR2MjogKCR2MiAvICRyYXRpbyk7XG4gICAgfVxuXG4gICAgQGZvciAkaSBmcm9tICRpbmNyZW1lbnQgdGhyb3VnaCAtMSB7XG4gICAgICBAaWYgJGRvdWJsZS1zdHJhbmRlZCBhbmQgKCR2MSAvICRyYXRpbykgPCAkdjIge1xuICAgICAgICAkdmFsdWU6ICR2MjtcbiAgICAgICAgJHYyOiAoJHYyIC8gJHJhdGlvKTtcbiAgICAgIH0gQGVsc2Uge1xuICAgICAgICAkdjE6ICgkdjEgLyAkcmF0aW8pO1xuICAgICAgICAkdmFsdWU6ICR2MTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBAcmV0dXJuICR2YWx1ZTtcbn1cbiIsIi8vIENvbnZlcnQgcGl4ZWxzIHRvIGVtc1xuLy8gZWcuIGZvciBhIHJlbGF0aW9uYWwgdmFsdWUgb2YgMTJweCB3cml0ZSBlbSgxMikgd2hlbiB0aGUgcGFyZW50IGlzIDE2cHhcbi8vIGlmIHRoZSBwYXJlbnQgaXMgYW5vdGhlciB2YWx1ZSBzYXkgMjRweCB3cml0ZSBlbSgxMiwgMjQpXG5cbkBmdW5jdGlvbiBlbSgkcHh2YWwsICRiYXNlOiAkZW0tYmFzZSkge1xuICBAaWYgbm90IHVuaXRsZXNzKCRweHZhbCkge1xuICAgICAgJHB4dmFsOiBzdHJpcC11bml0cygkcHh2YWwpO1xuICB9XG4gIEBpZiBub3QgdW5pdGxlc3MoJGJhc2UpIHtcbiAgICAgICRiYXNlOiBzdHJpcC11bml0cygkYmFzZSk7XG4gIH1cbiAgQHJldHVybiAoJHB4dmFsIC8gJGJhc2UpICogMWVtO1xufVxuIiwiLy8gVGhpcyBmdW5jdGlvbiBpcyByZXF1aXJlZCBhbmQgdXNlZCBieSB0aGUgYmFja2dyb3VuZC1pbWFnZSBtaXhpbi5cbkBmdW5jdGlvbiByYWRpYWwtZ3JhZGllbnQoJEcxLCAgICAgICAgJEcyLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAkRzM6IG51bGwsICAkRzQ6IG51bGwsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICRHNTogbnVsbCwgICRHNjogbnVsbCxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgJEc3OiBudWxsLCAgJEc4OiBudWxsLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAkRzk6IG51bGwsICAkRzEwOiBudWxsLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAkcG9zOiBudWxsLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAkc2hhcGUtc2l6ZTogbnVsbCkge1xuXG4gICRkYXRhOiBfcmFkaWFsLWFyZy1wYXJzZXIoJEcxLCAkRzIsICRwb3MsICRzaGFwZS1zaXplKTtcbiAgJEcxOiAgbnRoKCRkYXRhLCAxKTtcbiAgJEcyOiAgbnRoKCRkYXRhLCAyKTtcbiAgJHBvczogbnRoKCRkYXRhLCAzKTtcbiAgJHNoYXBlLXNpemU6IG50aCgkZGF0YSwgNCk7XG5cbiAgJHR5cGU6IHJhZGlhbDtcbiAgJGdyYWRpZW50OiAkRzEsICRHMiwgJEczLCAkRzQsICRHNSwgJEc2LCAkRzcsICRHOCwgJEc5LCAkRzEwO1xuXG4gICR0eXBlLWdyYWRpZW50OiAkdHlwZSwgJHNoYXBlLXNpemUgJHBvcywgJGdyYWRpZW50O1xuICBAcmV0dXJuICR0eXBlLWdyYWRpZW50O1xufVxuXG5cbiIsIi8vIFNydGlwcyB0aGUgdW5pdHMgZnJvbSBhIHZhbHVlLiBlLmcuIDEycHggLT4gMTJcblxuQGZ1bmN0aW9uIHN0cmlwLXVuaXRzKCR2YWwpIHtcbiAgQHJldHVybiAoJHZhbCAvICgkdmFsICogMCArIDEpKTtcbn1cbiIsIi8vIEFkZCBwZXJjZW50YWdlIG9mIHdoaXRlIHRvIGEgY29sb3JcbkBmdW5jdGlvbiB0aW50KCRjb2xvciwgJHBlcmNlbnQpe1xuICBAcmV0dXJuIG1peCh3aGl0ZSwgJGNvbG9yLCAkcGVyY2VudCk7XG59XG5cbi8vIEFkZCBwZXJjZW50YWdlIG9mIGJsYWNrIHRvIGEgY29sb3JcbkBmdW5jdGlvbiBzaGFkZSgkY29sb3IsICRwZXJjZW50KXtcbiAgQHJldHVybiBtaXgoYmxhY2ssICRjb2xvciwgJHBlcmNlbnQpO1xufVxuIiwiLy8gUmV0dXJuIHZlbmRvci1wcmVmaXhlZCBwcm9wZXJ0eSBuYW1lcyBpZiBhcHByb3ByaWF0ZVxuLy8gRXhhbXBsZTogdHJhbnNpdGlvbi1wcm9wZXJ0eS1uYW1lcygodHJhbnNmb3JtLCBjb2xvciwgYmFja2dyb3VuZCksIG1veikgLT4gLW1vei10cmFuc2Zvcm0sIGNvbG9yLCBiYWNrZ3JvdW5kXG4vLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8vXG5AZnVuY3Rpb24gdHJhbnNpdGlvbi1wcm9wZXJ0eS1uYW1lcygkcHJvcHMsICR2ZW5kb3I6IGZhbHNlKSB7XG5cdCRuZXctcHJvcHM6ICgpO1xuXHRcblx0QGVhY2ggJHByb3AgaW4gJHByb3BzIHtcblx0XHQkbmV3LXByb3BzOiBhcHBlbmQoJG5ldy1wcm9wcywgdHJhbnNpdGlvbi1wcm9wZXJ0eS1uYW1lKCRwcm9wLCAkdmVuZG9yKSwgY29tbWEpO1xuXHR9XG5cblx0QHJldHVybiAkbmV3LXByb3BzO1xufVxuXG5AZnVuY3Rpb24gdHJhbnNpdGlvbi1wcm9wZXJ0eS1uYW1lKCRwcm9wLCAkdmVuZG9yOiBmYWxzZSkge1xuXHQvLyBwdXQgb3RoZXIgcHJvcGVydGllcyB0aGF0IG5lZWQgdG8gYmUgcHJlZml4ZWQgaGVyZSBhc3dlbGxcblx0QGlmICR2ZW5kb3IgYW5kICRwcm9wID09IHRyYW5zZm9ybSB7XG5cdFx0QHJldHVybiB1bnF1b3RlKCctJyskdmVuZG9yKyctJyskcHJvcCk7XG5cdH1cblx0QGVsc2Uge1xuXHRcdEByZXR1cm4gJHByb3A7XG5cdH1cbn0iLCIvLyBodHRwOi8vd3d3LnczLm9yZy9UUi9jc3MzLWFuaW1hdGlvbnMvI3RoZS1hbmltYXRpb24tbmFtZS1wcm9wZXJ0eS1cbi8vIEVhY2ggb2YgdGhlc2UgbWl4aW5zIHN1cHBvcnQgY29tbWEgc2VwYXJhdGVkIGxpc3RzIG9mIHZhbHVlcywgd2hpY2ggYWxsb3dzIGRpZmZlcmVudCB0cmFuc2l0aW9ucyBmb3IgaW5kaXZpZHVhbCBwcm9wZXJ0aWVzIHRvIGJlIGRlc2NyaWJlZCBpbiBhIHNpbmdsZSBzdHlsZSBydWxlLiBFYWNoIHZhbHVlIGluIHRoZSBsaXN0IGNvcnJlc3BvbmRzIHRvIHRoZSB2YWx1ZSBhdCB0aGF0IHNhbWUgcG9zaXRpb24gaW4gdGhlIG90aGVyIHByb3BlcnRpZXMuXG5cbi8vIE9mZmljaWFsIGFuaW1hdGlvbiBzaG9ydGhhbmQgcHJvcGVydHkuXG5AbWl4aW4gYW5pbWF0aW9uICgkYW5pbWF0aW9ucy4uLikge1xuICBAaW5jbHVkZSBwcmVmaXhlcihhbmltYXRpb24sICRhbmltYXRpb25zLCB3ZWJraXQgbW96IHNwZWMpO1xufVxuXG4vLyBJbmRpdmlkdWFsIEFuaW1hdGlvbiBQcm9wZXJ0aWVzXG5AbWl4aW4gYW5pbWF0aW9uLW5hbWUgKCRuYW1lcy4uLikge1xuICBAaW5jbHVkZSBwcmVmaXhlcihhbmltYXRpb24tbmFtZSwgJG5hbWVzLCB3ZWJraXQgbW96IHNwZWMpO1xufVxuXG5cbkBtaXhpbiBhbmltYXRpb24tZHVyYXRpb24gKCR0aW1lcy4uLikge1xuICBAaW5jbHVkZSBwcmVmaXhlcihhbmltYXRpb24tZHVyYXRpb24sICR0aW1lcywgd2Via2l0IG1veiBzcGVjKTtcbn1cblxuXG5AbWl4aW4gYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbiAoJG1vdGlvbnMuLi4pIHtcbi8vIGVhc2UgfCBsaW5lYXIgfCBlYXNlLWluIHwgZWFzZS1vdXQgfCBlYXNlLWluLW91dFxuICBAaW5jbHVkZSBwcmVmaXhlcihhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uLCAkbW90aW9ucywgd2Via2l0IG1veiBzcGVjKTtcbn1cblxuXG5AbWl4aW4gYW5pbWF0aW9uLWl0ZXJhdGlvbi1jb3VudCAoJHZhbHVlcy4uLikge1xuLy8gaW5maW5pdGUgfCA8bnVtYmVyPlxuICBAaW5jbHVkZSBwcmVmaXhlcihhbmltYXRpb24taXRlcmF0aW9uLWNvdW50LCAkdmFsdWVzLCB3ZWJraXQgbW96IHNwZWMpO1xufVxuXG5cbkBtaXhpbiBhbmltYXRpb24tZGlyZWN0aW9uICgkZGlyZWN0aW9ucy4uLikge1xuLy8gbm9ybWFsIHwgYWx0ZXJuYXRlXG4gIEBpbmNsdWRlIHByZWZpeGVyKGFuaW1hdGlvbi1kaXJlY3Rpb24sICRkaXJlY3Rpb25zLCB3ZWJraXQgbW96IHNwZWMpO1xufVxuXG5cbkBtaXhpbiBhbmltYXRpb24tcGxheS1zdGF0ZSAoJHN0YXRlcy4uLikge1xuLy8gcnVubmluZyB8IHBhdXNlZFxuICBAaW5jbHVkZSBwcmVmaXhlcihhbmltYXRpb24tcGxheS1zdGF0ZSwgJHN0YXRlcywgd2Via2l0IG1veiBzcGVjKTtcbn1cblxuXG5AbWl4aW4gYW5pbWF0aW9uLWRlbGF5ICgkdGltZXMuLi4pIHtcbiAgQGluY2x1ZGUgcHJlZml4ZXIoYW5pbWF0aW9uLWRlbGF5LCAkdGltZXMsIHdlYmtpdCBtb3ogc3BlYyk7XG59XG5cblxuQG1peGluIGFuaW1hdGlvbi1maWxsLW1vZGUgKCRtb2Rlcy4uLikge1xuLy8gbm9uZSB8IGZvcndhcmRzIHwgYmFja3dhcmRzIHwgYm90aFxuICBAaW5jbHVkZSBwcmVmaXhlcihhbmltYXRpb24tZmlsbC1tb2RlLCAkbW9kZXMsIHdlYmtpdCBtb3ogc3BlYyk7XG59XG4iLCJAbWl4aW4gYXBwZWFyYW5jZSAoJHZhbHVlKSB7XG4gIEBpbmNsdWRlIHByZWZpeGVyKGFwcGVhcmFuY2UsICR2YWx1ZSwgd2Via2l0IG1veiBtcyBvIHNwZWMpO1xufVxuIiwiLy8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovL1xuLy8gQmFja2ZhY2UtdmlzaWJpbGl0eSBtaXhpblxuLy8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovL1xuQG1peGluIGJhY2tmYWNlLXZpc2liaWxpdHkoJHZpc2liaWxpdHkpIHtcbiAgQGluY2x1ZGUgcHJlZml4ZXIoYmFja2ZhY2UtdmlzaWJpbGl0eSwgJHZpc2liaWxpdHksIHdlYmtpdCBzcGVjKTtcbn1cbiIsIi8vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLy9cbi8vIEJhY2tncm91bmQgcHJvcGVydHkgZm9yIGFkZGluZyBtdWx0aXBsZSBiYWNrZ3JvdW5kcyB1c2luZyBzaG9ydGhhbmRcbi8vIG5vdGF0aW9uLlxuLy8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovL1xuXG5AbWl4aW4gYmFja2dyb3VuZChcbiAgJGJhY2tncm91bmQtMSAgICAgICAsICRiYWNrZ3JvdW5kLTI6IG51bGwsXG4gICRiYWNrZ3JvdW5kLTM6IG51bGwsICRiYWNrZ3JvdW5kLTQ6IG51bGwsXG4gICRiYWNrZ3JvdW5kLTU6IG51bGwsICRiYWNrZ3JvdW5kLTY6IG51bGwsXG4gICRiYWNrZ3JvdW5kLTc6IG51bGwsICRiYWNrZ3JvdW5kLTg6IG51bGwsXG4gICRiYWNrZ3JvdW5kLTk6IG51bGwsICRiYWNrZ3JvdW5kLTEwOiBudWxsLFxuICAkZmFsbGJhY2s6IG51bGxcbikge1xuICAkYmFja2dyb3VuZHM6ICRiYWNrZ3JvdW5kLTEsICRiYWNrZ3JvdW5kLTIsXG4gICAgICAgICAgICAgICAgJGJhY2tncm91bmQtMywgJGJhY2tncm91bmQtNCxcbiAgICAgICAgICAgICAgICAkYmFja2dyb3VuZC01LCAkYmFja2dyb3VuZC02LFxuICAgICAgICAgICAgICAgICRiYWNrZ3JvdW5kLTcsICRiYWNrZ3JvdW5kLTgsXG4gICAgICAgICAgICAgICAgJGJhY2tncm91bmQtOSwgJGJhY2tncm91bmQtMTA7XG5cbiAgJGZhbGxiYWNrLWNvbG9yOiBmYWxzZTtcbiAgQGlmICh0eXBlLW9mKCRmYWxsYmFjaykgPT0gY29sb3IpIG9yICgkZmFsbGJhY2sgPT0gXCJ0cmFuc3BhcmVudFwiKSB7XG4gICAgJGZhbGxiYWNrLWNvbG9yOiAkZmFsbGJhY2s7XG4gIH1cbiAgQGVsc2Uge1xuICAgICRmYWxsYmFjay1jb2xvcjogX2V4dHJhY3QtYmFja2dyb3VuZC1jb2xvcigkYmFja2dyb3VuZHMpO1xuICB9XG5cbiAgQGlmICRmYWxsYmFjay1jb2xvciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGZhbGxiYWNrLWNvbG9yO1xuICB9XG4gIGJhY2tncm91bmQ6IF9iYWNrZ3JvdW5kLWFkZC1wcmVmaXgoJGJhY2tncm91bmRzLCB3ZWJraXQpO1xuICBiYWNrZ3JvdW5kOiBfYmFja2dyb3VuZC1hZGQtcHJlZml4KCRiYWNrZ3JvdW5kcyk7XG59XG5cbkBmdW5jdGlvbiBfZXh0cmFjdC1iYWNrZ3JvdW5kLWNvbG9yKCRiYWNrZ3JvdW5kcykge1xuICAkZmluYWwtYmctbGF5ZXI6IG50aCgkYmFja2dyb3VuZHMsIGxlbmd0aCgkYmFja2dyb3VuZHMpKTtcbiAgQGlmIHR5cGUtb2YoJGZpbmFsLWJnLWxheWVyKSA9PSBsaXN0IHtcbiAgICBAZm9yICRpIGZyb20gMSB0aHJvdWdoIGxlbmd0aCgkZmluYWwtYmctbGF5ZXIpIHtcbiAgICAgICR2YWx1ZTogbnRoKCRmaW5hbC1iZy1sYXllciwgJGkpO1xuICAgICAgQGlmIHR5cGUtb2YoJHZhbHVlKSA9PSBjb2xvciB7XG4gICAgICAgIEByZXR1cm4gJHZhbHVlO1xuICAgICAgfVxuICAgIH1cbiAgfVxuICBAcmV0dXJuIGZhbHNlO1xufVxuXG5AZnVuY3Rpb24gX2JhY2tncm91bmQtYWRkLXByZWZpeCgkYmFja2dyb3VuZHMsICR2ZW5kb3I6IGZhbHNlKSB7XG4gICRiYWNrZ3JvdW5kcy1wcmVmaXhlZDogKCk7XG5cbiAgQGZvciAkaSBmcm9tIDEgdGhyb3VnaCBsZW5ndGgoJGJhY2tncm91bmRzKSB7XG4gICAgJHNob3J0aGFuZDogbnRoKCRiYWNrZ3JvdW5kcywgJGkpOyAvLyBHZXQgbWVtYmVyIGZvciBjdXJyZW50IGluZGV4XG4gICAgJHR5cGU6IHR5cGUtb2YoJHNob3J0aGFuZCk7IC8vIEdldCB0eXBlIG9mIHZhcmlhYmxlIC0gTGlzdCAoZ3JhZGllbnQpIG9yIFN0cmluZyAoaW1hZ2UpXG5cbiAgICAvLyBJZiBzaG9ydGhhbmQgaXMgYSBsaXN0IChncmFkaWVudClcbiAgICBAaWYgJHR5cGUgPT0gbGlzdCB7XG4gICAgICAkZmlyc3QtbWVtYmVyOiBudGgoJHNob3J0aGFuZCwgMSk7IC8vIEdldCBmaXJzdCBtZW1iZXIgb2Ygc2hvcnRoYW5kXG5cbiAgICAgIC8vIExpbmVhciBHcmFkaWVudFxuICAgICAgQGlmIGluZGV4KGxpbmVhciByYWRpYWwsIG50aCgkZmlyc3QtbWVtYmVyLCAxKSkge1xuICAgICAgICAkZ3JhZGllbnQtdHlwZTogbnRoKCRmaXJzdC1tZW1iZXIsIDEpOyAvLyBsaW5lYXIgfHwgcmFkaWFsXG4gICAgICAgICRncmFkaWVudC1hcmdzOiAgICAgIGZhbHNlO1xuICAgICAgICAkZ3JhZGllbnQtcG9zaXRpb25zOiBmYWxzZTtcbiAgICAgICAgJHNob3J0aGFuZC1zdGFydDogICAgZmFsc2U7XG4gICAgICAgIEBpZiB0eXBlLW9mKCRmaXJzdC1tZW1iZXIpID09IGxpc3QgeyAvLyBMaW5lYXIgZ3JhZGllbnQgcGx1cyBhZGRpdGlvbmFsIHNob3J0aGFuZCB2YWx1ZXMgLSBsZyhyZWQsb3JhbmdlKXJlcGVhdCwuLi5cbiAgICAgICAgICAkZ3JhZGllbnQtcG9zaXRpb25zOiBudGgoJGZpcnN0LW1lbWJlciwgMik7XG4gICAgICAgICAgJGdyYWRpZW50LWFyZ3M6ICAgICAgbnRoKCRmaXJzdC1tZW1iZXIsIDMpO1xuICAgICAgICAgICRzaG9ydGhhbmQtc3RhcnQ6IDI7XG4gICAgICAgIH1cbiAgICAgICAgQGVsc2UgeyAvLyBMaW5lYXIgZ3JhZGllbnQgb25seSAtIGxnKHJlZCxvcmFuZ2UpLC4uLlxuICAgICAgICAgICRncmFkaWVudC1wb3NpdGlvbnM6IG50aCgkc2hvcnRoYW5kLCAyKTtcbiAgICAgICAgICAkZ3JhZGllbnQtYXJnczogICAgICBudGgoJHNob3J0aGFuZCwgMyk7IC8vIEdldCBncmFkaWVudCAocmVkLCBibHVlKVxuICAgICAgICB9XG5cbiAgICAgICAgJGdyYWRpZW50LXBvc2l0aW9uczogX2dyYWRpZW50LXBvc2l0aW9ucy1wYXJzZXIoJGdyYWRpZW50LXR5cGUsICRncmFkaWVudC1wb3NpdGlvbnMpO1xuICAgICAgICAkZ3JhZGllbnQ6IF9yZW5kZXItZ3JhZGllbnRzKCRncmFkaWVudC1wb3NpdGlvbnMsICRncmFkaWVudC1hcmdzLCAkZ3JhZGllbnQtdHlwZSwgJHZlbmRvcik7XG5cbiAgICAgICAgLy8gQXBwZW5kIGFueSBhZGRpdGlvbmFsIHNob3J0aGFuZCBhcmdzIHRvIGdyYWRpZW50XG4gICAgICAgIEBpZiAkc2hvcnRoYW5kLXN0YXJ0IHtcbiAgICAgICAgICBAZm9yICRqIGZyb20gJHNob3J0aGFuZC1zdGFydCB0aHJvdWdoIGxlbmd0aCgkc2hvcnRoYW5kKSB7XG4gICAgICAgICAgICAkZ3JhZGllbnQ6IGpvaW4oJGdyYWRpZW50LCBudGgoJHNob3J0aGFuZCwgJGopLCBzcGFjZSk7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgICRiYWNrZ3JvdW5kcy1wcmVmaXhlZDogYXBwZW5kKCRiYWNrZ3JvdW5kcy1wcmVmaXhlZCwgJGdyYWRpZW50LCBjb21tYSk7XG4gICAgICB9XG4gICAgICAvLyBJbWFnZSB3aXRoIGFkZGl0aW9uYWwgcHJvcGVydGllc1xuICAgICAgQGVsc2Uge1xuICAgICAgICAkYmFja2dyb3VuZHMtcHJlZml4ZWQ6IGFwcGVuZCgkYmFja2dyb3VuZHMtcHJlZml4ZWQsICRzaG9ydGhhbmQsIGNvbW1hKTtcbiAgICAgIH1cbiAgICB9XG4gICAgLy8gSWYgc2hvcnRoYW5kIGlzIGEgc2ltcGxlIHN0cmluZyAoY29sb3Igb3IgaW1hZ2UpXG4gICAgQGVsc2UgaWYgJHR5cGUgPT0gc3RyaW5nIHtcbiAgICAgICRiYWNrZ3JvdW5kcy1wcmVmaXhlZDogam9pbigkYmFja2dyb3VuZHMtcHJlZml4ZWQsICRzaG9ydGhhbmQsIGNvbW1hKTtcbiAgICB9XG4gIH1cbiAgQHJldHVybiAkYmFja2dyb3VuZHMtcHJlZml4ZWQ7XG59XG5cbi8vRXhhbXBsZXM6XG4gIC8vQGluY2x1ZGUgYmFja2dyb3VuZChsaW5lYXItZ3JhZGllbnQodG9wLCBvcmFuZ2UsIHJlZCkpO1xuICAvL0BpbmNsdWRlIGJhY2tncm91bmQocmFkaWFsLWdyYWRpZW50KGNpcmNsZSBhdCA0MCUgNDAlLCBvcmFuZ2UsIHJlZCkpO1xuICAvL0BpbmNsdWRlIGJhY2tncm91bmQodXJsKFwiL2ltYWdlcy9hLnBuZ1wiKSBuby1yZXBlYXQsIGxpbmVhci1ncmFkaWVudChvcmFuZ2UsIHJlZCkpO1xuICAvL0BpbmNsdWRlIGJhY2tncm91bmQodXJsKFwiaW1hZ2UucG5nXCIpIGNlbnRlciBjZW50ZXIsIGxpbmVhci1ncmFkaWVudChvcmFuZ2UsIHJlZCksIHVybChcImltYWdlLnBuZ1wiKSk7XG4iLCIvLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8vXG4vLyBCYWNrZ3JvdW5kLWltYWdlIHByb3BlcnR5IGZvciBhZGRpbmcgbXVsdGlwbGUgYmFja2dyb3VuZCBpbWFnZXMgd2l0aFxuLy8gZ3JhZGllbnRzLCBvciBmb3Igc3RyaW5naW5nIG11bHRpcGxlIGdyYWRpZW50cyB0b2dldGhlci5cbi8vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLy9cblxuQG1peGluIGJhY2tncm91bmQtaW1hZ2UoJGltYWdlcy4uLikge1xuICBiYWNrZ3JvdW5kLWltYWdlOiBfYWRkLXByZWZpeCgkaW1hZ2VzLCB3ZWJraXQpO1xuICBiYWNrZ3JvdW5kLWltYWdlOiBfYWRkLXByZWZpeCgkaW1hZ2VzKTtcbn1cblxuQGZ1bmN0aW9uIF9hZGQtcHJlZml4KCRpbWFnZXMsICR2ZW5kb3I6IGZhbHNlKSB7XG4gICRpbWFnZXMtcHJlZml4ZWQ6ICgpO1xuICAkZ3JhZGllbnQtcG9zaXRpb25zOiBmYWxzZTtcbiAgQGZvciAkaSBmcm9tIDEgdGhyb3VnaCBsZW5ndGgoJGltYWdlcykge1xuICAgICR0eXBlOiB0eXBlLW9mKG50aCgkaW1hZ2VzLCAkaSkpOyAvLyBHZXQgdHlwZSBvZiB2YXJpYWJsZSAtIExpc3Qgb3IgU3RyaW5nXG5cbiAgICAvLyBJZiB2YXJpYWJsZSBpcyBhIGxpc3QgLSBHcmFkaWVudFxuICAgIEBpZiAkdHlwZSA9PSBsaXN0IHtcbiAgICAgICRncmFkaWVudC10eXBlOiBudGgobnRoKCRpbWFnZXMsICRpKSwgMSk7IC8vIGxpbmVhciBvciByYWRpYWxcbiAgICAgICRncmFkaWVudC1wb3M6IG51bGw7XG4gICAgICAkZ3JhZGllbnQtYXJnczogbnVsbDtcblxuICAgICAgQGlmICgkZ3JhZGllbnQtdHlwZSA9PSBsaW5lYXIpIG9yICgkZ3JhZGllbnQtdHlwZSA9PSByYWRpYWwpIHtcbiAgICAgICAgJGdyYWRpZW50LXBvczogIG50aChudGgoJGltYWdlcywgJGkpLCAyKTsgLy8gR2V0IGdyYWRpZW50IHBvc2l0aW9uXG4gICAgICAgICRncmFkaWVudC1hcmdzOiBudGgobnRoKCRpbWFnZXMsICRpKSwgMyk7IC8vIEdldCBhY3R1YWwgZ3JhZGllbnQgKHJlZCwgYmx1ZSlcbiAgICAgIH1cbiAgICAgIEBlbHNlIHtcbiAgICAgICAgJGdyYWRpZW50LWFyZ3M6IG50aChudGgoJGltYWdlcywgJGkpLCAyKTsgLy8gR2V0IGFjdHVhbCBncmFkaWVudCAocmVkLCBibHVlKVxuICAgICAgfVxuXG4gICAgICAkZ3JhZGllbnQtcG9zaXRpb25zOiBfZ3JhZGllbnQtcG9zaXRpb25zLXBhcnNlcigkZ3JhZGllbnQtdHlwZSwgJGdyYWRpZW50LXBvcyk7XG4gICAgICAkZ3JhZGllbnQ6IF9yZW5kZXItZ3JhZGllbnRzKCRncmFkaWVudC1wb3NpdGlvbnMsICRncmFkaWVudC1hcmdzLCAkZ3JhZGllbnQtdHlwZSwgJHZlbmRvcik7XG4gICAgICAkaW1hZ2VzLXByZWZpeGVkOiBhcHBlbmQoJGltYWdlcy1wcmVmaXhlZCwgJGdyYWRpZW50LCBjb21tYSk7XG4gICAgfVxuICAgIC8vIElmIHZhcmlhYmxlIGlzIGEgc3RyaW5nIC0gSW1hZ2VcbiAgICBAZWxzZSBpZiAkdHlwZSA9PSBzdHJpbmcge1xuICAgICAgJGltYWdlcy1wcmVmaXhlZDogam9pbigkaW1hZ2VzLXByZWZpeGVkLCBudGgoJGltYWdlcywgJGkpLCBjb21tYSk7XG4gICAgfVxuICB9XG4gIEByZXR1cm4gJGltYWdlcy1wcmVmaXhlZDtcbn1cblxuLy9FeGFtcGxlczpcbiAgLy9AaW5jbHVkZSBiYWNrZ3JvdW5kLWltYWdlKGxpbmVhci1ncmFkaWVudCh0b3AsIG9yYW5nZSwgcmVkKSk7XG4gIC8vQGluY2x1ZGUgYmFja2dyb3VuZC1pbWFnZShyYWRpYWwtZ3JhZGllbnQoNTAlIDUwJSwgY292ZXIgY2lyY2xlLCBvcmFuZ2UsIHJlZCkpO1xuICAvL0BpbmNsdWRlIGJhY2tncm91bmQtaW1hZ2UodXJsKFwiL2ltYWdlcy9hLnBuZ1wiKSwgbGluZWFyLWdyYWRpZW50KG9yYW5nZSwgcmVkKSk7XG4gIC8vQGluY2x1ZGUgYmFja2dyb3VuZC1pbWFnZSh1cmwoXCJpbWFnZS5wbmdcIiksIGxpbmVhci1ncmFkaWVudChvcmFuZ2UsIHJlZCksIHVybChcImltYWdlLnBuZ1wiKSk7XG4gIC8vQGluY2x1ZGUgYmFja2dyb3VuZC1pbWFnZShsaW5lYXItZ3JhZGllbnQoaHNsYSgwLCAxMDAlLCAxMDAlLCAwLjI1KSAwJSwgaHNsYSgwLCAxMDAlLCAxMDAlLCAwLjA4KSA1MCUsIHRyYW5zcGFyZW50IDUwJSksIGxpbmVhci1ncmFkaWVudChvcmFuZ2UsIHJlZCkpO1xuIiwiQG1peGluIGJvcmRlci1pbWFnZSgkaW1hZ2VzKSB7XG4gIC13ZWJraXQtYm9yZGVyLWltYWdlOiBfYm9yZGVyLWFkZC1wcmVmaXgoJGltYWdlcywgd2Via2l0KTtcbiAgICAgLW1vei1ib3JkZXItaW1hZ2U6IF9ib3JkZXItYWRkLXByZWZpeCgkaW1hZ2VzLCBtb3opO1xuICAgICAgIC1vLWJvcmRlci1pbWFnZTogX2JvcmRlci1hZGQtcHJlZml4KCRpbWFnZXMsIG8pO1xuICAgICAgICAgIGJvcmRlci1pbWFnZTogX2JvcmRlci1hZGQtcHJlZml4KCRpbWFnZXMpO1xuICAgICAgICAgIGJvcmRlci1zdHlsZTogc29saWQ7XG59XG5cbkBmdW5jdGlvbiBfYm9yZGVyLWFkZC1wcmVmaXgoJGltYWdlcywgJHZlbmRvcjogZmFsc2UpIHtcbiAgJGJvcmRlci1pbWFnZTogbnVsbDtcbiAgJGltYWdlcy10eXBlOiAgdHlwZS1vZihudGgoJGltYWdlcywgMSkpO1xuICAkZmlyc3QtdmFyOiAgICBudGgobnRoKCRpbWFnZXMsIDEpLCAxKTsgICAgICAgICAgLy8gR2V0IHR5cGUgb2YgR3JhZGllbnQgKExpbmVhciB8fCByYWRpYWwpXG5cbiAgLy8gSWYgaW5wdXQgaXMgYSBncmFkaWVudFxuICBAaWYgJGltYWdlcy10eXBlID09IHN0cmluZyB7XG4gICAgQGlmICgkZmlyc3QtdmFyID09IFwibGluZWFyXCIpIG9yICgkZmlyc3QtdmFyID09IFwicmFkaWFsXCIpIHtcbiAgICAgICRncmFkaWVudC10eXBlOiBudGgoJGltYWdlcywgMSk7ICAgICAgICAgICAvLyBHZXQgdHlwZSBvZiBncmFkaWVudCAobGluZWFyIHx8IHJhZGlhbClcbiAgICAgICRncmFkaWVudC1wb3M6ICBudGgoJGltYWdlcywgMik7ICAgICAgICAgICAvLyBHZXQgZ3JhZGllbnQgcG9zaXRpb25cbiAgICAgICRncmFkaWVudC1hcmdzOiBudGgoJGltYWdlcywgMyk7ICAgICAgICAgICAvLyBHZXQgYWN0dWFsIGdyYWRpZW50IChyZWQsIGJsdWUpXG4gICAgICAkZ3JhZGllbnQtcG9zaXRpb25zOiBfZ3JhZGllbnQtcG9zaXRpb25zLXBhcnNlcigkZ3JhZGllbnQtdHlwZSwgJGdyYWRpZW50LXBvcyk7XG4gICAgICAkYm9yZGVyLWltYWdlOiAgX3JlbmRlci1ncmFkaWVudHMoJGdyYWRpZW50LXBvc2l0aW9ucywgJGdyYWRpZW50LWFyZ3MsICRncmFkaWVudC10eXBlLCAkdmVuZG9yKTtcbiAgICB9XG4gICAgLy8gSWYgaW5wdXQgaXMgYSBVUkxcbiAgICBAZWxzZSB7XG4gICAgICAkYm9yZGVyLWltYWdlOiAkaW1hZ2VzO1xuICAgIH1cbiAgfVxuICAvLyBJZiBpbnB1dCBpcyBncmFkaWVudCBvciB1cmwgKyBhZGRpdGlvbmFsIGFyZ3NcbiAgQGVsc2UgaWYgJGltYWdlcy10eXBlID09IGxpc3Qge1xuICAgICR0eXBlOiB0eXBlLW9mKG50aCgkaW1hZ2VzLCAxKSk7ICAgICAgICAgICAvLyBHZXQgdHlwZSBvZiB2YXJpYWJsZSAtIExpc3Qgb3IgU3RyaW5nXG5cbiAgICAvLyBJZiB2YXJpYWJsZSBpcyBhIGxpc3QgLSBHcmFkaWVudFxuICAgIEBpZiAkdHlwZSA9PSBsaXN0IHtcbiAgICAgICRncmFkaWVudDogbnRoKCRpbWFnZXMsIDEpO1xuICAgICAgJGdyYWRpZW50LXR5cGU6IG50aCgkZ3JhZGllbnQsIDEpOyAgICAgICAgICAgLy8gR2V0IHR5cGUgb2YgZ3JhZGllbnQgKGxpbmVhciB8fCByYWRpYWwpXG4gICAgICAkZ3JhZGllbnQtcG9zOiAgbnRoKCRncmFkaWVudCwgMik7ICAgICAgICAgICAvLyBHZXQgZ3JhZGllbnQgcG9zaXRpb25cbiAgICAgICRncmFkaWVudC1hcmdzOiBudGgoJGdyYWRpZW50LCAzKTsgICAgICAgICAgIC8vIEdldCBhY3R1YWwgZ3JhZGllbnQgKHJlZCwgYmx1ZSlcbiAgICAgICRncmFkaWVudC1wb3NpdGlvbnM6IF9ncmFkaWVudC1wb3NpdGlvbnMtcGFyc2VyKCRncmFkaWVudC10eXBlLCAkZ3JhZGllbnQtcG9zKTtcbiAgICAgICRib3JkZXItaW1hZ2U6ICBfcmVuZGVyLWdyYWRpZW50cygkZ3JhZGllbnQtcG9zaXRpb25zLCAkZ3JhZGllbnQtYXJncywgJGdyYWRpZW50LXR5cGUsICR2ZW5kb3IpO1xuXG4gICAgICBAZm9yICRpIGZyb20gMiB0aHJvdWdoIGxlbmd0aCgkaW1hZ2VzKSB7XG4gICAgICAgICRib3JkZXItaW1hZ2U6IGFwcGVuZCgkYm9yZGVyLWltYWdlLCBudGgoJGltYWdlcywgJGkpKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgQHJldHVybiAkYm9yZGVyLWltYWdlO1xufVxuXG4vL0V4YW1wbGVzOlxuLy8gQGluY2x1ZGUgYm9yZGVyLWltYWdlKHVybChcImltYWdlLnBuZ1wiKSk7XG4vLyBAaW5jbHVkZSBib3JkZXItaW1hZ2UodXJsKFwiaW1hZ2UucG5nXCIpIDIwIHN0cmV0Y2gpO1xuLy8gQGluY2x1ZGUgYm9yZGVyLWltYWdlKGxpbmVhci1ncmFkaWVudCg0NWRlZywgb3JhbmdlLCB5ZWxsb3cpKTtcbi8vIEBpbmNsdWRlIGJvcmRlci1pbWFnZShsaW5lYXItZ3JhZGllbnQoNDVkZWcsIG9yYW5nZSwgeWVsbG93KSBzdHJldGNoKTtcbi8vIEBpbmNsdWRlIGJvcmRlci1pbWFnZShsaW5lYXItZ3JhZGllbnQoNDVkZWcsIG9yYW5nZSwgeWVsbG93KSAyMCAzMCA0MCA1MCBzdHJldGNoIHJvdW5kKTtcbi8vIEBpbmNsdWRlIGJvcmRlci1pbWFnZShyYWRpYWwtZ3JhZGllbnQodG9wLCBjb3Zlciwgb3JhbmdlLCB5ZWxsb3csIG9yYW5nZSkpO1xuXG4iLCIvLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8vXG4vLyBTaG9ydGhhbmQgQm9yZGVyLXJhZGl1cyBtaXhpbnNcbi8vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLy9cbkBtaXhpbiBib3JkZXItdG9wLXJhZGl1cygkcmFkaWkpIHtcbiAgQGluY2x1ZGUgcHJlZml4ZXIoYm9yZGVyLXRvcC1sZWZ0LXJhZGl1cywgJHJhZGlpLCBzcGVjKTtcbiAgQGluY2x1ZGUgcHJlZml4ZXIoYm9yZGVyLXRvcC1yaWdodC1yYWRpdXMsICRyYWRpaSwgc3BlYyk7XG59XG5cbkBtaXhpbiBib3JkZXItYm90dG9tLXJhZGl1cygkcmFkaWkpIHtcbiAgQGluY2x1ZGUgcHJlZml4ZXIoYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1cywgJHJhZGlpLCBzcGVjKTtcbiAgQGluY2x1ZGUgcHJlZml4ZXIoYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXMsICRyYWRpaSwgc3BlYyk7XG59XG5cbkBtaXhpbiBib3JkZXItbGVmdC1yYWRpdXMoJHJhZGlpKSB7XG4gIEBpbmNsdWRlIHByZWZpeGVyKGJvcmRlci10b3AtbGVmdC1yYWRpdXMsICRyYWRpaSwgc3BlYyk7XG4gIEBpbmNsdWRlIHByZWZpeGVyKGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXMsICRyYWRpaSwgc3BlYyk7XG59XG5cbkBtaXhpbiBib3JkZXItcmlnaHQtcmFkaXVzKCRyYWRpaSkge1xuICBAaW5jbHVkZSBwcmVmaXhlcihib3JkZXItdG9wLXJpZ2h0LXJhZGl1cywgJHJhZGlpLCBzcGVjKTtcbiAgQGluY2x1ZGUgcHJlZml4ZXIoYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXMsICRyYWRpaSwgc3BlYyk7XG59XG4iLCJAbWl4aW4gYm94LXNpemluZyAoJGJveCkge1xuLy8gIGNvbnRlbnQtYm94IHwgYm9yZGVyLWJveCB8IGluaGVyaXRcbiAgQGluY2x1ZGUgcHJlZml4ZXIoYm94LXNpemluZywgJGJveCwgd2Via2l0IG1veiBzcGVjKTtcbn1cbiIsIkBtaXhpbiBjYWxjKCRwcm9wZXJ0eSwgJHZhbHVlKSB7XG4gICN7JHByb3BlcnR5fTogLXdlYmtpdC1jYWxjKCN7JHZhbHVlfSk7XG4gICN7JHByb3BlcnR5fTogICAgICAgICBjYWxjKCN7JHZhbHVlfSk7XG59XG4iLCJAbWl4aW4gY29sdW1ucygkYXJnOiBhdXRvKSB7XG4vLyA8Y29sdW1uLWNvdW50PiB8fCA8Y29sdW1uLXdpZHRoPlxuICBAaW5jbHVkZSBwcmVmaXhlcihjb2x1bW5zLCAkYXJnLCB3ZWJraXQgbW96IHNwZWMpO1xufVxuXG5AbWl4aW4gY29sdW1uLWNvdW50KCRpbnQ6IGF1dG8pIHtcbi8vIGF1dG8gfHwgaW50ZWdlclxuICBAaW5jbHVkZSBwcmVmaXhlcihjb2x1bW4tY291bnQsICRpbnQsIHdlYmtpdCBtb3ogc3BlYyk7XG59XG5cbkBtaXhpbiBjb2x1bW4tZ2FwKCRsZW5ndGg6IG5vcm1hbCkge1xuLy8gbm9ybWFsIHx8IGxlbmd0aFxuICBAaW5jbHVkZSBwcmVmaXhlcihjb2x1bW4tZ2FwLCAkbGVuZ3RoLCB3ZWJraXQgbW96IHNwZWMpO1xufVxuXG5AbWl4aW4gY29sdW1uLWZpbGwoJGFyZzogYXV0bykge1xuLy8gYXV0byB8fCBsZW5ndGhcbiAgQGluY2x1ZGUgcHJlZml4ZXIoY29sdW1ucy1maWxsLCAkYXJnLCB3ZWJraXQgbW96IHNwZWMpO1xufVxuXG5AbWl4aW4gY29sdW1uLXJ1bGUoJGFyZykge1xuLy8gPGJvcmRlci13aWR0aD4gfHwgPGJvcmRlci1zdHlsZT4gfHwgPGNvbG9yPlxuICBAaW5jbHVkZSBwcmVmaXhlcihjb2x1bW4tcnVsZSwgJGFyZywgd2Via2l0IG1veiBzcGVjKTtcbn1cblxuQG1peGluIGNvbHVtbi1ydWxlLWNvbG9yKCRjb2xvcikge1xuICBAaW5jbHVkZSBwcmVmaXhlcihjb2x1bW4tcnVsZS1jb2xvciwgJGNvbG9yLCB3ZWJraXQgbW96IHNwZWMpO1xufVxuXG5AbWl4aW4gY29sdW1uLXJ1bGUtc3R5bGUoJHN0eWxlOiBub25lKSB7XG4vLyBub25lIHwgaGlkZGVuIHwgZGFzaGVkIHwgZG90dGVkIHwgZG91YmxlIHwgZ3Jvb3ZlIHwgaW5zZXQgfCBpbnNldCB8IG91dHNldCB8IHJpZGdlIHwgc29saWRcbiAgQGluY2x1ZGUgcHJlZml4ZXIoY29sdW1uLXJ1bGUtc3R5bGUsICRzdHlsZSwgd2Via2l0IG1veiBzcGVjKTtcbn1cblxuQG1peGluIGNvbHVtbi1ydWxlLXdpZHRoICgkd2lkdGg6IG5vbmUpIHtcbiAgQGluY2x1ZGUgcHJlZml4ZXIoY29sdW1uLXJ1bGUtd2lkdGgsICR3aWR0aCwgd2Via2l0IG1veiBzcGVjKTtcbn1cblxuQG1peGluIGNvbHVtbi1zcGFuKCRhcmc6IG5vbmUpIHtcbi8vIG5vbmUgfHwgYWxsXG4gIEBpbmNsdWRlIHByZWZpeGVyKGNvbHVtbi1zcGFuLCAkYXJnLCB3ZWJraXQgbW96IHNwZWMpO1xufVxuXG5AbWl4aW4gY29sdW1uLXdpZHRoKCRsZW5ndGg6IGF1dG8pIHtcbi8vIGF1dG8gfHwgbGVuZ3RoXG4gIEBpbmNsdWRlIHByZWZpeGVyKGNvbHVtbi13aWR0aCwgJGxlbmd0aCwgd2Via2l0IG1veiBzcGVjKTtcbn1cbiIsIi8vIENTUzMgRmxleGlibGUgQm94IE1vZGVsIGFuZCBwcm9wZXJ0eSBkZWZhdWx0c1xuXG4vLyBDdXN0b20gc2hvcnRoYW5kIG5vdGF0aW9uIGZvciBmbGV4Ym94XG5AbWl4aW4gYm94KCRvcmllbnQ6IGlubGluZS1heGlzLCAkcGFjazogc3RhcnQsICRhbGlnbjogc3RyZXRjaCkge1xuICBAaW5jbHVkZSBkaXNwbGF5LWJveDtcbiAgQGluY2x1ZGUgYm94LW9yaWVudCgkb3JpZW50KTtcbiAgQGluY2x1ZGUgYm94LXBhY2soJHBhY2spO1xuICBAaW5jbHVkZSBib3gtYWxpZ24oJGFsaWduKTtcbn1cblxuQG1peGluIGRpc3BsYXktYm94IHtcbiAgZGlzcGxheTogLXdlYmtpdC1ib3g7XG4gIGRpc3BsYXk6IC1tb3otYm94O1xuICBkaXNwbGF5OiAtbXMtZmxleGJveDsgLy8gSUUgMTBcbiAgZGlzcGxheTogYm94O1xufVxuXG5AbWl4aW4gYm94LW9yaWVudCgkb3JpZW50OiBpbmxpbmUtYXhpcykge1xuLy8gaG9yaXpvbnRhbHx2ZXJ0aWNhbHxpbmxpbmUtYXhpc3xibG9jay1heGlzfGluaGVyaXRcbiAgQGluY2x1ZGUgcHJlZml4ZXIoYm94LW9yaWVudCwgJG9yaWVudCwgd2Via2l0IG1veiBzcGVjKTtcbn1cblxuQG1peGluIGJveC1wYWNrKCRwYWNrOiBzdGFydCkge1xuLy8gc3RhcnR8ZW5kfGNlbnRlcnxqdXN0aWZ5XG4gIEBpbmNsdWRlIHByZWZpeGVyKGJveC1wYWNrLCAkcGFjaywgd2Via2l0IG1veiBzcGVjKTtcbiAgLW1zLWZsZXgtcGFjazogJHBhY2s7IC8vIElFIDEwXG59XG5cbkBtaXhpbiBib3gtYWxpZ24oJGFsaWduOiBzdHJldGNoKSB7XG4vLyBzdGFydHxlbmR8Y2VudGVyfGJhc2VsaW5lfHN0cmV0Y2hcbiAgQGluY2x1ZGUgcHJlZml4ZXIoYm94LWFsaWduLCAkYWxpZ24sIHdlYmtpdCBtb3ogc3BlYyk7XG4gIC1tcy1mbGV4LWFsaWduOiAkYWxpZ247IC8vIElFIDEwXG59XG5cbkBtaXhpbiBib3gtZGlyZWN0aW9uKCRkaXJlY3Rpb246IG5vcm1hbCkge1xuLy8gbm9ybWFsfHJldmVyc2V8aW5oZXJpdFxuICBAaW5jbHVkZSBwcmVmaXhlcihib3gtZGlyZWN0aW9uLCAkZGlyZWN0aW9uLCB3ZWJraXQgbW96IHNwZWMpO1xuICAtbXMtZmxleC1kaXJlY3Rpb246ICRkaXJlY3Rpb247IC8vIElFIDEwXG59XG5cbkBtaXhpbiBib3gtbGluZXMoJGxpbmVzOiBzaW5nbGUpIHtcbi8vIHNpbmdsZXxtdWx0aXBsZVxuICBAaW5jbHVkZSBwcmVmaXhlcihib3gtbGluZXMsICRsaW5lcywgd2Via2l0IG1veiBzcGVjKTtcbn1cblxuQG1peGluIGJveC1vcmRpbmFsLWdyb3VwKCRpbnQ6IDEpIHtcbiAgQGluY2x1ZGUgcHJlZml4ZXIoYm94LW9yZGluYWwtZ3JvdXAsICRpbnQsIHdlYmtpdCBtb3ogc3BlYyk7XG4gIC1tcy1mbGV4LW9yZGVyOiAkaW50OyAvLyBJRSAxMFxufVxuXG5AbWl4aW4gYm94LWZsZXgoJHZhbHVlOiAwLjApIHtcbiAgQGluY2x1ZGUgcHJlZml4ZXIoYm94LWZsZXgsICR2YWx1ZSwgd2Via2l0IG1veiBzcGVjKTtcbiAgLW1zLWZsZXg6ICR2YWx1ZTsgLy8gSUUgMTBcbn1cblxuQG1peGluIGJveC1mbGV4LWdyb3VwKCRpbnQ6IDEpIHtcbiAgQGluY2x1ZGUgcHJlZml4ZXIoYm94LWZsZXgtZ3JvdXAsICRpbnQsIHdlYmtpdCBtb3ogc3BlYyk7XG59XG4iLCIvLyBPcmRlciBvZiB0aGUgaW5jbHVkZXMgbWF0dGVycywgYW5kIGl0IGlzOiBub3JtYWwsIGJvbGQsIGl0YWxpYywgYm9sZCtpdGFsaWMuXG5cbkBtaXhpbiBmb250LWZhY2UoJGZvbnQtZmFtaWx5LCAkZmlsZS1wYXRoLCAkd2VpZ2h0OiBub3JtYWwsICRzdHlsZTogbm9ybWFsLCAkYXNzZXQtcGlwZWxpbmU6IGZhbHNlICkge1xuICBAZm9udC1mYWNlIHtcbiAgICBmb250LWZhbWlseTogJGZvbnQtZmFtaWx5O1xuICAgIGZvbnQtd2VpZ2h0OiAkd2VpZ2h0O1xuICAgIGZvbnQtc3R5bGU6ICRzdHlsZTtcblxuICAgIEBpZiAkYXNzZXQtcGlwZWxpbmUgPT0gdHJ1ZSB7XG4gICAgICBzcmM6IGZvbnQtdXJsKCcjeyRmaWxlLXBhdGh9LmVvdCcpO1xuICAgICAgc3JjOiBmb250LXVybCgnI3skZmlsZS1wYXRofS5lb3Q/I2llZml4JykgICAgICAgICAgZm9ybWF0KCdlbWJlZGRlZC1vcGVudHlwZScpLFxuICAgICAgICAgICBmb250LXVybCgnI3skZmlsZS1wYXRofS53b2ZmJykgICAgICAgICAgICAgICAgZm9ybWF0KCd3b2ZmJyksXG4gICAgICAgICAgIGZvbnQtdXJsKCcjeyRmaWxlLXBhdGh9LnR0ZicpICAgICAgICAgICAgICAgICBmb3JtYXQoJ3RydWV0eXBlJyksXG4gICAgICAgICAgIGZvbnQtdXJsKCcjeyRmaWxlLXBhdGh9LnN2ZyMjeyRmb250LWZhbWlseX0nKSBmb3JtYXQoJ3N2ZycpO1xuICAgIH0gQGVsc2Uge1xuICAgICAgc3JjOiB1cmwoJyN7JGZpbGUtcGF0aH0uZW90Jyk7XG4gICAgICBzcmM6IHVybCgnI3skZmlsZS1wYXRofS5lb3Q/I2llZml4JykgICAgICAgICAgICAgICBmb3JtYXQoJ2VtYmVkZGVkLW9wZW50eXBlJyksXG4gICAgICAgICAgIHVybCgnI3skZmlsZS1wYXRofS53b2ZmJykgICAgICAgICAgICAgICAgICAgICBmb3JtYXQoJ3dvZmYnKSxcbiAgICAgICAgICAgdXJsKCcjeyRmaWxlLXBhdGh9LnR0ZicpICAgICAgICAgICAgICAgICAgICAgIGZvcm1hdCgndHJ1ZXR5cGUnKSxcbiAgICAgICAgICAgdXJsKCcjeyRmaWxlLXBhdGh9LnN2ZyMjeyRmb250LWZhbWlseX0nKSAgICAgIGZvcm1hdCgnc3ZnJyk7XG4gICAgfVxuICB9XG59XG4iLCJAbWl4aW4gaHlwaGVucygkaHlwaGVuYXRpb246IG5vbmUpIHtcbi8vIG5vbmUgfCBtYW51YWwgfCBhdXRvXG4gIEBpbmNsdWRlIHByZWZpeGVyKGh5cGhlbnMsICRoeXBoZW5hdGlvbiwgd2Via2l0IG1veiBtcyBzcGVjKTtcbn0iLCIvLyBIaURQSSBtaXhpbi4gRGVmYXVsdCB2YWx1ZSBzZXQgdG8gMS4zIHRvIHRhcmdldCBHb29nbGUgTmV4dXMgNyAoaHR0cDovL2JqYW5nby5jb20vYXJ0aWNsZXMvbWluLWRldmljZS1waXhlbC1yYXRpby8pXG5AbWl4aW4gaGlkcGkoJHJhdGlvOiAxLjMpIHtcbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAoLXdlYmtpdC1taW4tZGV2aWNlLXBpeGVsLXJhdGlvOiAkcmF0aW8pLFxuICBvbmx5IHNjcmVlbiBhbmQgKG1pbi0tbW96LWRldmljZS1waXhlbC1yYXRpbzogJHJhdGlvKSxcbiAgb25seSBzY3JlZW4gYW5kICgtby1taW4tZGV2aWNlLXBpeGVsLXJhdGlvOiAjeyRyYXRpb30vMSksXG4gIG9ubHkgc2NyZWVuIGFuZCAobWluLXJlc29sdXRpb246ICN7cm91bmQoJHJhdGlvKjk2KX1kcGkpLFxuICBvbmx5IHNjcmVlbiBhbmQgKG1pbi1yZXNvbHV0aW9uOiAjeyRyYXRpb31kcHB4KSB7XG4gICAgQGNvbnRlbnQ7XG4gIH1cbn1cbiIsIkBtaXhpbiBpbWFnZS1yZW5kZXJpbmcgKCRtb2RlOm9wdGltaXplUXVhbGl0eSkge1xuXG4gIEBpZiAoJG1vZGUgPT0gb3B0aW1pemUtY29udHJhc3QpIHtcbiAgICAgIGltYWdlLXJlbmRlcmluZzogLW1vei1jcmlzcC1lZGdlcztcbiAgICAgIGltYWdlLXJlbmRlcmluZzogLW8tY3Jpc3AtZWRnZXM7XG4gICAgICBpbWFnZS1yZW5kZXJpbmc6IC13ZWJraXQtb3B0aW1pemUtY29udHJhc3Q7XG4gICAgICBpbWFnZS1yZW5kZXJpbmc6IG9wdGltaXplLWNvbnRyYXN0O1xuICB9XG5cbiAgQGVsc2Uge1xuICAgICAgaW1hZ2UtcmVuZGVyaW5nOiAkbW9kZTtcbiAgfVxufVxuIiwiLy8gTGVnYWN5IHN1cHBvcnQgZm9yIGlubGluZS1ibG9jayBpbiBJRTcgKG1heWJlIElFNilcbkBtaXhpbiBpbmxpbmUtYmxvY2sge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTtcbiAgem9vbTogMTtcbiAgKmRpc3BsYXk6IGlubGluZTtcbiAgKnZlcnRpY2FsLWFsaWduOiBhdXRvO1xufVxuIiwiLy8gQWRkcyBrZXlmcmFtZXMgYmxvY2tzIGZvciBzdXBwb3J0ZWQgcHJlZml4ZXMsIHJlbW92aW5nIHJlZHVuZGFudCBwcmVmaXhlcyBpbiB0aGUgYmxvY2sncyBjb250ZW50XG5AbWl4aW4ga2V5ZnJhbWVzKCRuYW1lKSB7XG4gICRvcmlnaW5hbC1wcmVmaXgtZm9yLXdlYmtpdDogICAgJHByZWZpeC1mb3Itd2Via2l0O1xuICAkb3JpZ2luYWwtcHJlZml4LWZvci1tb3ppbGxhOiAgICRwcmVmaXgtZm9yLW1vemlsbGE7XG4gICRvcmlnaW5hbC1wcmVmaXgtZm9yLW1pY3Jvc29mdDogJHByZWZpeC1mb3ItbWljcm9zb2Z0O1xuICAkb3JpZ2luYWwtcHJlZml4LWZvci1vcGVyYTogICAgICRwcmVmaXgtZm9yLW9wZXJhO1xuICAkb3JpZ2luYWwtcHJlZml4LWZvci1zcGVjOiAgICAgICRwcmVmaXgtZm9yLXNwZWM7XG5cbiAgQGlmICRvcmlnaW5hbC1wcmVmaXgtZm9yLXdlYmtpdCB7XG4gICAgQGluY2x1ZGUgZGlzYWJsZS1wcmVmaXgtZm9yLWFsbCgpO1xuICAgICRwcmVmaXgtZm9yLXdlYmtpdDogdHJ1ZTtcbiAgICBALXdlYmtpdC1rZXlmcmFtZXMgI3skbmFtZX0ge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9XG4gIEBpZiAkb3JpZ2luYWwtcHJlZml4LWZvci1tb3ppbGxhIHtcbiAgICBAaW5jbHVkZSBkaXNhYmxlLXByZWZpeC1mb3ItYWxsKCk7XG4gICAgJHByZWZpeC1mb3ItbW96aWxsYTogdHJ1ZTtcbiAgICBALW1vei1rZXlmcmFtZXMgI3skbmFtZX0ge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9XG4gIEBpZiAkb3JpZ2luYWwtcHJlZml4LWZvci1zcGVjIHtcbiAgICBAaW5jbHVkZSBkaXNhYmxlLXByZWZpeC1mb3ItYWxsKCk7XG4gICAgJHByZWZpeC1mb3Itc3BlYzogdHJ1ZTtcbiAgICBAa2V5ZnJhbWVzICN7JG5hbWV9IHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfVxuXG4gICRwcmVmaXgtZm9yLXdlYmtpdDogICAgJG9yaWdpbmFsLXByZWZpeC1mb3Itd2Via2l0O1xuICAkcHJlZml4LWZvci1tb3ppbGxhOiAgICRvcmlnaW5hbC1wcmVmaXgtZm9yLW1vemlsbGE7XG4gICRwcmVmaXgtZm9yLW1pY3Jvc29mdDogJG9yaWdpbmFsLXByZWZpeC1mb3ItbWljcm9zb2Z0O1xuICAkcHJlZml4LWZvci1vcGVyYTogICAgICRvcmlnaW5hbC1wcmVmaXgtZm9yLW9wZXJhO1xuICAkcHJlZml4LWZvci1zcGVjOiAgICAgICRvcmlnaW5hbC1wcmVmaXgtZm9yLXNwZWM7XG59XG4iLCJAbWl4aW4gbGluZWFyLWdyYWRpZW50KCRwb3MsICRHMSwgJEcyOiBudWxsLFxuICAgICAgICAgICAgICAgICAgICAgICAkRzM6IG51bGwsICRHNDogbnVsbCxcbiAgICAgICAgICAgICAgICAgICAgICAgJEc1OiBudWxsLCAkRzY6IG51bGwsXG4gICAgICAgICAgICAgICAgICAgICAgICRHNzogbnVsbCwgJEc4OiBudWxsLFxuICAgICAgICAgICAgICAgICAgICAgICAkRzk6IG51bGwsICRHMTA6IG51bGwsXG4gICAgICAgICAgICAgICAgICAgICAgICRmYWxsYmFjazogbnVsbCkge1xuICAvLyBEZXRlY3Qgd2hhdCB0eXBlIG9mIHZhbHVlIGV4aXN0cyBpbiAkcG9zXG4gICRwb3MtdHlwZTogdHlwZS1vZihudGgoJHBvcywgMSkpO1xuICAkcG9zLXNwZWM6IG51bGw7XG4gICRwb3MtZGVncmVlOiBudWxsO1xuXG4gIC8vIElmICRwb3MgaXMgbWlzc2luZyBmcm9tIG1peGluLCByZWFzc2lnbiB2YXJzIGFuZCBhZGQgZGVmYXVsdCBwb3NpdGlvblxuICBAaWYgKCRwb3MtdHlwZSA9PSBjb2xvcikgb3IgKG50aCgkcG9zLCAxKSA9PSBcInRyYW5zcGFyZW50XCIpICB7XG4gICAgJEcxMDogJEc5OyAkRzk6ICRHODsgJEc4OiAkRzc7ICRHNzogJEc2OyAkRzY6ICRHNTtcbiAgICAgJEc1OiAkRzQ7ICRHNDogJEczOyAkRzM6ICRHMjsgJEcyOiAkRzE7ICRHMTogJHBvcztcbiAgICAgJHBvczogbnVsbDtcbiAgfVxuXG4gIEBpZiAkcG9zIHtcbiAgICAkcG9zaXRpb25zOiBfbGluZWFyLXBvc2l0aW9ucy1wYXJzZXIoJHBvcyk7XG4gICAgJHBvcy1kZWdyZWU6IG50aCgkcG9zaXRpb25zLCAxKTtcbiAgICAkcG9zLXNwZWM6ICAgbnRoKCRwb3NpdGlvbnMsIDIpO1xuICB9XG5cbiAgJGZ1bGw6ICRHMSwgJEcyLCAkRzMsICRHNCwgJEc1LCAkRzYsICRHNywgJEc4LCAkRzksICRHMTA7XG5cbiAgLy8gU2V0ICRHMSBhcyB0aGUgZGVmYXVsdCBmYWxsYmFjayBjb2xvclxuICAkZmFsbGJhY2stY29sb3I6IG50aCgkRzEsIDEpO1xuXG4gIC8vIElmICRmYWxsYmFjayBpcyBhIGNvbG9yIHVzZSB0aGF0IGNvbG9yIGFzIHRoZSBmYWxsYmFjayBjb2xvclxuICBAaWYgKHR5cGUtb2YoJGZhbGxiYWNrKSA9PSBjb2xvcikgb3IgKCRmYWxsYmFjayA9PSBcInRyYW5zcGFyZW50XCIpIHtcbiAgICAkZmFsbGJhY2stY29sb3I6ICRmYWxsYmFjaztcbiAgfVxuXG4gIGJhY2tncm91bmQtY29sb3I6ICRmYWxsYmFjay1jb2xvcjtcbiAgYmFja2dyb3VuZC1pbWFnZTogLXdlYmtpdC1saW5lYXItZ3JhZGllbnQoJHBvcy1kZWdyZWUgJGZ1bGwpOyAvLyBTYWZhcmkgNS4xKywgQ2hyb21lXG4gIGJhY2tncm91bmQtaW1hZ2U6IHVucXVvdGUoXCJsaW5lYXItZ3JhZGllbnQoI3skcG9zLXNwZWN9I3skZnVsbH0pXCIpO1xufVxuIiwiQG1peGluIHBlcnNwZWN0aXZlKCRkZXB0aDogbm9uZSkge1xuICAvLyBub25lIHwgPGxlbmd0aD5cbiAgQGluY2x1ZGUgcHJlZml4ZXIocGVyc3BlY3RpdmUsICRkZXB0aCwgd2Via2l0IG1veiBzcGVjKTtcbn1cblxuQG1peGluIHBlcnNwZWN0aXZlLW9yaWdpbigkdmFsdWU6IDUwJSA1MCUpIHtcbiAgQGluY2x1ZGUgcHJlZml4ZXIocGVyc3BlY3RpdmUtb3JpZ2luLCAkdmFsdWUsIHdlYmtpdCBtb3ogc3BlYyk7XG59XG4iLCIvLyBSZXF1aXJlcyBTYXNzIDMuMStcbkBtaXhpbiByYWRpYWwtZ3JhZGllbnQoJEcxLCAgICAgICAgJEcyLFxuICAgICAgICAgICAgICAgICAgICAgICAkRzM6IG51bGwsICRHNDogbnVsbCxcbiAgICAgICAgICAgICAgICAgICAgICAgJEc1OiBudWxsLCAkRzY6IG51bGwsXG4gICAgICAgICAgICAgICAgICAgICAgICRHNzogbnVsbCwgJEc4OiBudWxsLFxuICAgICAgICAgICAgICAgICAgICAgICAkRzk6IG51bGwsICRHMTA6IG51bGwsXG4gICAgICAgICAgICAgICAgICAgICAgICRwb3M6IG51bGwsXG4gICAgICAgICAgICAgICAgICAgICAgICRzaGFwZS1zaXplOiBudWxsLFxuICAgICAgICAgICAgICAgICAgICAgICAkZmFsbGJhY2s6IG51bGwpIHtcblxuICAkZGF0YTogX3JhZGlhbC1hcmctcGFyc2VyKCRHMSwgJEcyLCAkcG9zLCAkc2hhcGUtc2l6ZSk7XG4gICRHMTogIG50aCgkZGF0YSwgMSk7XG4gICRHMjogIG50aCgkZGF0YSwgMik7XG4gICRwb3M6IG50aCgkZGF0YSwgMyk7XG4gICRzaGFwZS1zaXplOiBudGgoJGRhdGEsIDQpO1xuXG4gICRmdWxsOiAkRzEsICRHMiwgJEczLCAkRzQsICRHNSwgJEc2LCAkRzcsICRHOCwgJEc5LCAkRzEwO1xuXG4gIC8vIFN0cmlwIGRlcHJlY2F0ZWQgY292ZXIvY29udGFpbiBmb3Igc3BlY1xuICAkc2hhcGUtc2l6ZS1zcGVjOiBfc2hhcGUtc2l6ZS1zdHJpcHBlcigkc2hhcGUtc2l6ZSk7XG5cbiAgLy8gU2V0ICRHMSBhcyB0aGUgZGVmYXVsdCBmYWxsYmFjayBjb2xvclxuICAkZmlyc3QtY29sb3I6IG50aCgkZnVsbCwgMSk7XG4gICRmYWxsYmFjay1jb2xvcjogbnRoKCRmaXJzdC1jb2xvciwgMSk7XG5cbiAgQGlmICh0eXBlLW9mKCRmYWxsYmFjaykgPT0gY29sb3IpIG9yICgkZmFsbGJhY2sgPT0gXCJ0cmFuc3BhcmVudFwiKSB7XG4gICAgJGZhbGxiYWNrLWNvbG9yOiAkZmFsbGJhY2s7XG4gIH1cblxuICAvLyBBZGQgQ29tbWFzIGFuZCBzcGFjZXNcbiAgJHNoYXBlLXNpemU6IGlmKCRzaGFwZS1zaXplLCAnI3skc2hhcGUtc2l6ZX0sICcsIG51bGwpO1xuICAkcG9zOiAgICAgICAgaWYoJHBvcywgJyN7JHBvc30sICcsIG51bGwpO1xuICAkcG9zLXNwZWM6ICAgaWYoJHBvcywgJ2F0ICN7JHBvc30nLCBudWxsKTtcbiAgJHNoYXBlLXNpemUtc3BlYzogaWYoKCRzaGFwZS1zaXplLXNwZWMgIT0gJyAnKSBhbmQgKCRwb3MgPT0gbnVsbCksICcjeyRzaGFwZS1zaXplLXNwZWN9LCAnLCAnI3skc2hhcGUtc2l6ZS1zcGVjfSAnKTtcblxuICBiYWNrZ3JvdW5kLWNvbG9yOiAgJGZhbGxiYWNrLWNvbG9yO1xuICBiYWNrZ3JvdW5kLWltYWdlOiAtd2Via2l0LXJhZGlhbC1ncmFkaWVudCh1bnF1b3RlKCN7JHBvc30jeyRzaGFwZS1zaXplfSN7JGZ1bGx9KSk7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVucXVvdGUoXCJyYWRpYWwtZ3JhZGllbnQoI3skc2hhcGUtc2l6ZS1zcGVjfSN7JHBvcy1zcGVjfSN7JGZ1bGx9KVwiKTtcbn1cbiIsIkBtaXhpbiB0cmFuc2Zvcm0oJHByb3BlcnR5OiBub25lKSB7XG4vLyAgbm9uZSB8IDx0cmFuc2Zvcm0tZnVuY3Rpb24+XG4gIEBpbmNsdWRlIHByZWZpeGVyKHRyYW5zZm9ybSwgJHByb3BlcnR5LCB3ZWJraXQgbW96IG1zIG8gc3BlYyk7XG59XG5cbkBtaXhpbiB0cmFuc2Zvcm0tb3JpZ2luKCRheGVzOiA1MCUpIHtcbi8vIHgtYXhpcyAtIGxlZnQgfCBjZW50ZXIgfCByaWdodCAgfCBsZW5ndGggfCAlXG4vLyB5LWF4aXMgLSB0b3AgIHwgY2VudGVyIHwgYm90dG9tIHwgbGVuZ3RoIHwgJVxuLy8gei1heGlzIC0gICAgICAgICAgICAgICAgICAgICAgICAgIGxlbmd0aFxuICBAaW5jbHVkZSBwcmVmaXhlcih0cmFuc2Zvcm0tb3JpZ2luLCAkYXhlcywgd2Via2l0IG1veiBtcyBvIHNwZWMpO1xufVxuXG5AbWl4aW4gdHJhbnNmb3JtLXN0eWxlICgkc3R5bGU6IGZsYXQpIHtcbiAgQGluY2x1ZGUgcHJlZml4ZXIodHJhbnNmb3JtLXN0eWxlLCAkc3R5bGUsIHdlYmtpdCBtb3ogbXMgbyBzcGVjKTtcbn1cbiIsIi8vIFNob3J0aGFuZCBtaXhpbi4gU3VwcG9ydHMgbXVsdGlwbGUgcGFyZW50aGVzZXMtZGVsaW1pbmF0ZWQgdmFsdWVzIGZvciBlYWNoIHZhcmlhYmxlLlxuLy8gRXhhbXBsZTogQGluY2x1ZGUgdHJhbnNpdGlvbiAoYWxsIDJzIGVhc2UtaW4tb3V0KTtcbi8vICAgICAgICAgIEBpbmNsdWRlIHRyYW5zaXRpb24gKG9wYWNpdHkgMXMgZWFzZS1pbiAycywgd2lkdGggMnMgZWFzZS1vdXQpO1xuLy8gICAgICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbi1wcm9wZXJ0eSAodHJhbnNmb3JtLCBvcGFjaXR5KTtcblxuQG1peGluIHRyYW5zaXRpb24gKCRwcm9wZXJ0aWVzLi4uKSB7XG4gIEBpZiBsZW5ndGgoJHByb3BlcnRpZXMpID49IDEge1xuICAgIEBpbmNsdWRlIHByZWZpeGVyKHRyYW5zaXRpb24sICRwcm9wZXJ0aWVzLCB3ZWJraXQgbW96IHNwZWMpO1xuICB9XG5cbiAgQGVsc2Uge1xuICAgICRwcm9wZXJ0aWVzOiBhbGwgMC4xNXMgZWFzZS1vdXQgMHM7XG4gICAgQGluY2x1ZGUgcHJlZml4ZXIodHJhbnNpdGlvbiwgJHByb3BlcnRpZXMsIHdlYmtpdCBtb3ogc3BlYyk7XG4gIH1cbn1cblxuQG1peGluIHRyYW5zaXRpb24tcHJvcGVydHkgKCRwcm9wZXJ0aWVzLi4uKSB7XG4gICAtd2Via2l0LXRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zaXRpb24tcHJvcGVydHktbmFtZXMoJHByb3BlcnRpZXMsICd3ZWJraXQnKTtcbiAgICAgIC1tb3otdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNpdGlvbi1wcm9wZXJ0eS1uYW1lcygkcHJvcGVydGllcywgJ21veicpO1xuICAgICAgICAgICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2l0aW9uLXByb3BlcnR5LW5hbWVzKCRwcm9wZXJ0aWVzLCBmYWxzZSk7XG59XG5cbkBtaXhpbiB0cmFuc2l0aW9uLWR1cmF0aW9uICgkdGltZXMuLi4pIHtcbiAgQGluY2x1ZGUgcHJlZml4ZXIodHJhbnNpdGlvbi1kdXJhdGlvbiwgJHRpbWVzLCB3ZWJraXQgbW96IHNwZWMpO1xufVxuXG5AbWl4aW4gdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb24gKCRtb3Rpb25zLi4uKSB7XG4vLyBlYXNlIHwgbGluZWFyIHwgZWFzZS1pbiB8IGVhc2Utb3V0IHwgZWFzZS1pbi1vdXQgfCBjdWJpYy1iZXppZXIoKVxuICBAaW5jbHVkZSBwcmVmaXhlcih0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbiwgJG1vdGlvbnMsIHdlYmtpdCBtb3ogc3BlYyk7XG59XG5cbkBtaXhpbiB0cmFuc2l0aW9uLWRlbGF5ICgkdGltZXMuLi4pIHtcbiAgQGluY2x1ZGUgcHJlZml4ZXIodHJhbnNpdGlvbi1kZWxheSwgJHRpbWVzLCB3ZWJraXQgbW96IHNwZWMpO1xufVxuIiwiQG1peGluIHVzZXItc2VsZWN0KCRhcmc6IG5vbmUpIHtcbiAgQGluY2x1ZGUgcHJlZml4ZXIodXNlci1zZWxlY3QsICRhcmcsIHdlYmtpdCBtb3ogbXMgc3BlYyk7XG59XG4iLCIkcGxhY2Vob2xkZXJzOiAnLXdlYmtpdC1pbnB1dC1wbGFjZWhvbGRlcicsXG4gICAgICAgICAgICAgICAnLW1vei1wbGFjZWhvbGRlcicsXG4gICAgICAgICAgICAgICAnLW1zLWlucHV0LXBsYWNlaG9sZGVyJztcblxuQG1peGluIHBsYWNlaG9sZGVyIHtcbiAgQGVhY2ggJHBsYWNlaG9sZGVyIGluICRwbGFjZWhvbGRlcnMge1xuICAgIEBpZiAkcGxhY2Vob2xkZXIgPT0gXCItd2Via2l0LWlucHV0LXBsYWNlaG9sZGVyXCIge1xuICAgICAgJjo6I3skcGxhY2Vob2xkZXJ9IHtcbiAgICAgICAgQGNvbnRlbnQ7XG4gICAgICB9XG4gICAgfVxuICAgIEBlbHNlIGlmICRwbGFjZWhvbGRlciA9PSBcIi1tb3otcGxhY2Vob2xkZXJcIiB7XG4gICAgICAvLyBGRiAxOC1cbiAgICAgICY6I3skcGxhY2Vob2xkZXJ9IHtcbiAgICAgICAgQGNvbnRlbnQ7XG4gICAgICB9XG5cbiAgICAgIC8vIEZGIDE5K1xuICAgICAgJjo6I3skcGxhY2Vob2xkZXJ9IHtcbiAgICAgICAgQGNvbnRlbnQ7XG4gICAgICB9XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICAgICY6I3skcGxhY2Vob2xkZXJ9IHtcbiAgICAgICAgQGNvbnRlbnQ7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCJAbWl4aW4gYnV0dG9uICgkc3R5bGU6IHNpbXBsZSwgJGJhc2UtY29sb3I6ICM0Mjk0ZjApIHtcblxuICBAaWYgdHlwZS1vZigkc3R5bGUpID09IGNvbG9yIHtcbiAgICAkYmFzZS1jb2xvcjogJHN0eWxlO1xuICAgICRzdHlsZTogc2ltcGxlO1xuICB9XG5cbiAgLy8gR3JheXNjYWxlIGJ1dHRvblxuICBAaWYgJGJhc2UtY29sb3IgPT0gZ3JheXNjYWxlKCRiYXNlLWNvbG9yKSB7XG4gICAgQGlmICRzdHlsZSA9PSBzaW1wbGUge1xuICAgICAgQGluY2x1ZGUgc2ltcGxlKCRiYXNlLWNvbG9yLCAkZ3JheXNjYWxlOiB0cnVlKTtcbiAgICB9XG5cbiAgICBAZWxzZSBpZiAkc3R5bGUgPT0gc2hpbnkge1xuICAgICAgQGluY2x1ZGUgc2hpbnkoJGJhc2UtY29sb3IsICRncmF5c2NhbGU6IHRydWUpO1xuICAgIH1cblxuICAgIEBlbHNlIGlmICRzdHlsZSA9PSBwaWxsIHtcbiAgICAgIEBpbmNsdWRlIHBpbGwoJGJhc2UtY29sb3IsICRncmF5c2NhbGU6IHRydWUpO1xuICAgIH1cbiAgfVxuXG4gIC8vIENvbG9yZWQgYnV0dG9uXG4gIEBlbHNlIHtcbiAgICBAaWYgJHN0eWxlID09IHNpbXBsZSB7XG4gICAgICBAaW5jbHVkZSBzaW1wbGUoJGJhc2UtY29sb3IpO1xuICAgIH1cblxuICAgIEBlbHNlIGlmICRzdHlsZSA9PSBzaGlueSB7XG4gICAgICBAaW5jbHVkZSBzaGlueSgkYmFzZS1jb2xvcik7XG4gICAgfVxuXG4gICAgQGVsc2UgaWYgJHN0eWxlID09IHBpbGwge1xuICAgICAgQGluY2x1ZGUgcGlsbCgkYmFzZS1jb2xvcik7XG4gICAgfVxuICB9XG5cbiAgJjpkaXNhYmxlZCB7XG4gICAgb3BhY2l0eTogMC41O1xuICAgIGN1cnNvcjogbm90LWFsbG93ZWQ7XG4gIH1cbn1cblxuXG4vLyBTaW1wbGUgQnV0dG9uXG4vLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8vXG5AbWl4aW4gc2ltcGxlKCRiYXNlLWNvbG9yLCAkZ3JheXNjYWxlOiBmYWxzZSkge1xuICAkY29sb3I6ICAgICAgICAgaHNsKDAsIDAsIDEwMCUpO1xuICAkYm9yZGVyOiAgICAgICAgYWRqdXN0LWNvbG9yKCRiYXNlLWNvbG9yLCAkc2F0dXJhdGlvbjogIDklLCAgJGxpZ2h0bmVzczogLTE0JSk7XG4gICRpbnNldC1zaGFkb3c6ICBhZGp1c3QtY29sb3IoJGJhc2UtY29sb3IsICRzYXR1cmF0aW9uOiAtOCUsICAkbGlnaHRuZXNzOiAgMTUlKTtcbiAgJHN0b3AtZ3JhZGllbnQ6IGFkanVzdC1jb2xvcigkYmFzZS1jb2xvciwgJHNhdHVyYXRpb246ICA5JSwgICRsaWdodG5lc3M6IC0xMSUpO1xuICAkdGV4dC1zaGFkb3c6ICAgYWRqdXN0LWNvbG9yKCRiYXNlLWNvbG9yLCAkc2F0dXJhdGlvbjogIDE1JSwgJGxpZ2h0bmVzczogLTE4JSk7XG5cbiAgQGlmIGxpZ2h0bmVzcygkYmFzZS1jb2xvcikgPiA3MCUge1xuICAgICRjb2xvcjogICAgICAgaHNsKDAsIDAsIDIwJSk7XG4gICAgJHRleHQtc2hhZG93OiBhZGp1c3QtY29sb3IoJGJhc2UtY29sb3IsICRzYXR1cmF0aW9uOiAxMCUsICRsaWdodG5lc3M6IDQlKTtcbiAgfVxuXG4gIEBpZiAkZ3JheXNjYWxlID09IHRydWUge1xuICAgICRib3JkZXI6ICAgICAgICBncmF5c2NhbGUoJGJvcmRlcik7XG4gICAgJGluc2V0LXNoYWRvdzogIGdyYXlzY2FsZSgkaW5zZXQtc2hhZG93KTtcbiAgICAkc3RvcC1ncmFkaWVudDogZ3JheXNjYWxlKCRzdG9wLWdyYWRpZW50KTtcbiAgICAkdGV4dC1zaGFkb3c6ICAgZ3JheXNjYWxlKCR0ZXh0LXNoYWRvdyk7XG4gIH1cblxuICBib3JkZXI6IDFweCBzb2xpZCAkYm9yZGVyO1xuICBib3JkZXItcmFkaXVzOiAzcHg7XG4gIGJveC1zaGFkb3c6IGluc2V0IDAgMXB4IDAgMCAkaW5zZXQtc2hhZG93O1xuICBjb2xvcjogJGNvbG9yO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGZvbnQtc2l6ZTogaW5oZXJpdDtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIEBpbmNsdWRlIGxpbmVhci1ncmFkaWVudCAoJGJhc2UtY29sb3IsICRzdG9wLWdyYWRpZW50KTtcbiAgcGFkZGluZzogN3B4IDE4cHg7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgdGV4dC1zaGFkb3c6IDAgMXB4IDAgJHRleHQtc2hhZG93O1xuICBiYWNrZ3JvdW5kLWNsaXA6IHBhZGRpbmctYm94O1xuXG4gICY6aG92ZXI6bm90KDpkaXNhYmxlZCkge1xuICAgICRiYXNlLWNvbG9yLWhvdmVyOiAgICBhZGp1c3QtY29sb3IoJGJhc2UtY29sb3IsICRzYXR1cmF0aW9uOiAtNCUsICRsaWdodG5lc3M6IC01JSk7XG4gICAgJGluc2V0LXNoYWRvdy1ob3ZlcjogIGFkanVzdC1jb2xvcigkYmFzZS1jb2xvciwgJHNhdHVyYXRpb246IC03JSwgJGxpZ2h0bmVzczogIDUlKTtcbiAgICAkc3RvcC1ncmFkaWVudC1ob3ZlcjogYWRqdXN0LWNvbG9yKCRiYXNlLWNvbG9yLCAkc2F0dXJhdGlvbjogIDglLCAkbGlnaHRuZXNzOiAtMTQlKTtcblxuICAgIEBpZiAkZ3JheXNjYWxlID09IHRydWUge1xuICAgICAgJGJhc2UtY29sb3ItaG92ZXI6ICAgIGdyYXlzY2FsZSgkYmFzZS1jb2xvci1ob3Zlcik7XG4gICAgICAkaW5zZXQtc2hhZG93LWhvdmVyOiAgZ3JheXNjYWxlKCRpbnNldC1zaGFkb3ctaG92ZXIpO1xuICAgICAgJHN0b3AtZ3JhZGllbnQtaG92ZXI6IGdyYXlzY2FsZSgkc3RvcC1ncmFkaWVudC1ob3Zlcik7XG4gICAgfVxuXG4gICAgYm94LXNoYWRvdzogaW5zZXQgMCAxcHggMCAwICRpbnNldC1zaGFkb3ctaG92ZXI7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIEBpbmNsdWRlIGxpbmVhci1ncmFkaWVudCAoJGJhc2UtY29sb3ItaG92ZXIsICRzdG9wLWdyYWRpZW50LWhvdmVyKTtcbiAgfVxuXG4gICY6YWN0aXZlOm5vdCg6ZGlzYWJsZWQpIHtcbiAgICAkYm9yZGVyLWFjdGl2ZTogICAgICAgYWRqdXN0LWNvbG9yKCRiYXNlLWNvbG9yLCAkc2F0dXJhdGlvbjogOSUsICRsaWdodG5lc3M6IC0xNCUpO1xuICAgICRpbnNldC1zaGFkb3ctYWN0aXZlOiBhZGp1c3QtY29sb3IoJGJhc2UtY29sb3IsICRzYXR1cmF0aW9uOiA3JSwgJGxpZ2h0bmVzczogLTE3JSk7XG5cbiAgICBAaWYgJGdyYXlzY2FsZSA9PSB0cnVlIHtcbiAgICAgICRib3JkZXItYWN0aXZlOiAgICAgICBncmF5c2NhbGUoJGJvcmRlci1hY3RpdmUpO1xuICAgICAgJGluc2V0LXNoYWRvdy1hY3RpdmU6IGdyYXlzY2FsZSgkaW5zZXQtc2hhZG93LWFjdGl2ZSk7XG4gICAgfVxuXG4gICAgYm9yZGVyOiAxcHggc29saWQgJGJvcmRlci1hY3RpdmU7XG4gICAgYm94LXNoYWRvdzogaW5zZXQgMCAwIDhweCA0cHggJGluc2V0LXNoYWRvdy1hY3RpdmUsIGluc2V0IDAgMCA4cHggNHB4ICRpbnNldC1zaGFkb3ctYWN0aXZlLCAwIDFweCAxcHggMCAjZWVlO1xuICB9XG59XG5cblxuLy8gU2hpbnkgQnV0dG9uXG4vLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8vXG5AbWl4aW4gc2hpbnkoJGJhc2UtY29sb3IsICRncmF5c2NhbGU6IGZhbHNlKSB7XG4gICRjb2xvcjogICAgICAgICBoc2woMCwgMCwgMTAwJSk7XG4gICRib3JkZXI6ICAgICAgICBhZGp1c3QtY29sb3IoJGJhc2UtY29sb3IsICRyZWQ6IC0xMTcsICRncmVlbjogLTExMSwgJGJsdWU6IC04MSk7XG4gICRib3JkZXItYm90dG9tOiBhZGp1c3QtY29sb3IoJGJhc2UtY29sb3IsICRyZWQ6IC0xMjYsICRncmVlbjogLTEyNywgJGJsdWU6IC0xMjIpO1xuICAkZm91cnRoLXN0b3A6ICAgYWRqdXN0LWNvbG9yKCRiYXNlLWNvbG9yLCAkcmVkOiAtNzksICAkZ3JlZW46IC03MCwgICRibHVlOiAtNDYpO1xuICAkaW5zZXQtc2hhZG93OiAgYWRqdXN0LWNvbG9yKCRiYXNlLWNvbG9yLCAkcmVkOiAgMzcsICAkZ3JlZW46ICAyOSwgICRibHVlOiAgMTIpO1xuICAkc2Vjb25kLXN0b3A6ICAgYWRqdXN0LWNvbG9yKCRiYXNlLWNvbG9yLCAkcmVkOiAtNTYsICAkZ3JlZW46IC01MCwgICRibHVlOiAtMzMpO1xuICAkdGV4dC1zaGFkb3c6ICAgYWRqdXN0LWNvbG9yKCRiYXNlLWNvbG9yLCAkcmVkOiAtMTQwLCAkZ3JlZW46IC0xNDEsICRibHVlOiAtMTE0KTtcbiAgJHRoaXJkLXN0b3A6ICAgIGFkanVzdC1jb2xvcigkYmFzZS1jb2xvciwgJHJlZDogLTg2LCAgJGdyZWVuOiAtNzUsICAkYmx1ZTogLTQ4KTtcblxuICBAaWYgbGlnaHRuZXNzKCRiYXNlLWNvbG9yKSA+IDcwJSB7XG4gICAgJGNvbG9yOiAgICAgICBoc2woMCwgMCwgMjAlKTtcbiAgICAkdGV4dC1zaGFkb3c6IGFkanVzdC1jb2xvcigkYmFzZS1jb2xvciwgJHNhdHVyYXRpb246IDEwJSwgJGxpZ2h0bmVzczogNCUpO1xuICB9XG5cbiAgQGlmICRncmF5c2NhbGUgPT0gdHJ1ZSB7XG4gICAgJGJvcmRlcjogICAgICAgIGdyYXlzY2FsZSgkYm9yZGVyKTtcbiAgICAkYm9yZGVyLWJvdHRvbTogZ3JheXNjYWxlKCRib3JkZXItYm90dG9tKTtcbiAgICAkZm91cnRoLXN0b3A6ICAgZ3JheXNjYWxlKCRmb3VydGgtc3RvcCk7XG4gICAgJGluc2V0LXNoYWRvdzogIGdyYXlzY2FsZSgkaW5zZXQtc2hhZG93KTtcbiAgICAkc2Vjb25kLXN0b3A6ICAgZ3JheXNjYWxlKCRzZWNvbmQtc3RvcCk7XG4gICAgJHRleHQtc2hhZG93OiAgIGdyYXlzY2FsZSgkdGV4dC1zaGFkb3cpO1xuICAgICR0aGlyZC1zdG9wOiAgICBncmF5c2NhbGUoJHRoaXJkLXN0b3ApO1xuICB9XG5cbiAgYm9yZGVyOiAxcHggc29saWQgJGJvcmRlcjtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICRib3JkZXItYm90dG9tO1xuICBib3JkZXItcmFkaXVzOiA1cHg7XG4gIGJveC1zaGFkb3c6IGluc2V0IDAgMXB4IDAgMCAkaW5zZXQtc2hhZG93O1xuICBjb2xvcjogJGNvbG9yO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGZvbnQtc2l6ZTogaW5oZXJpdDtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIEBpbmNsdWRlIGxpbmVhci1ncmFkaWVudCh0b3AsICRiYXNlLWNvbG9yIDAlLCAkc2Vjb25kLXN0b3AgNTAlLCAkdGhpcmQtc3RvcCA1MCUsICRmb3VydGgtc3RvcCAxMDAlKTtcbiAgcGFkZGluZzogOHB4IDIwcHg7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICB0ZXh0LXNoYWRvdzogMCAtMXB4IDFweCAkdGV4dC1zaGFkb3c7XG5cbiAgJjpob3Zlcjpub3QoOmRpc2FibGVkKSB7XG4gICAgJGZpcnN0LXN0b3AtaG92ZXI6ICBhZGp1c3QtY29sb3IoJGJhc2UtY29sb3IsICRyZWQ6IC0xMywgJGdyZWVuOiAtMTUsICRibHVlOiAtMTgpO1xuICAgICRzZWNvbmQtc3RvcC1ob3ZlcjogYWRqdXN0LWNvbG9yKCRiYXNlLWNvbG9yLCAkcmVkOiAtNjYsICRncmVlbjogLTYyLCAkYmx1ZTogLTUxKTtcbiAgICAkdGhpcmQtc3RvcC1ob3ZlcjogIGFkanVzdC1jb2xvcigkYmFzZS1jb2xvciwgJHJlZDogLTkzLCAkZ3JlZW46IC04NSwgJGJsdWU6IC02Nik7XG4gICAgJGZvdXJ0aC1zdG9wLWhvdmVyOiBhZGp1c3QtY29sb3IoJGJhc2UtY29sb3IsICRyZWQ6IC04NiwgJGdyZWVuOiAtODAsICRibHVlOiAtNjMpO1xuXG4gICAgQGlmICRncmF5c2NhbGUgPT0gdHJ1ZSB7XG4gICAgICAkZmlyc3Qtc3RvcC1ob3ZlcjogIGdyYXlzY2FsZSgkZmlyc3Qtc3RvcC1ob3Zlcik7XG4gICAgICAkc2Vjb25kLXN0b3AtaG92ZXI6IGdyYXlzY2FsZSgkc2Vjb25kLXN0b3AtaG92ZXIpO1xuICAgICAgJHRoaXJkLXN0b3AtaG92ZXI6ICBncmF5c2NhbGUoJHRoaXJkLXN0b3AtaG92ZXIpO1xuICAgICAgJGZvdXJ0aC1zdG9wLWhvdmVyOiBncmF5c2NhbGUoJGZvdXJ0aC1zdG9wLWhvdmVyKTtcbiAgICB9XG5cbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgQGluY2x1ZGUgbGluZWFyLWdyYWRpZW50KHRvcCwgJGZpcnN0LXN0b3AtaG92ZXIgIDAlLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICRzZWNvbmQtc3RvcC1ob3ZlciA1MCUsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJHRoaXJkLXN0b3AtaG92ZXIgIDUwJSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAkZm91cnRoLXN0b3AtaG92ZXIgMTAwJSk7XG4gIH1cblxuICAmOmFjdGl2ZTpub3QoOmRpc2FibGVkKSB7XG4gICAgJGluc2V0LXNoYWRvdy1hY3RpdmU6IGFkanVzdC1jb2xvcigkYmFzZS1jb2xvciwgJHJlZDogLTExMSwgJGdyZWVuOiAtMTE2LCAkYmx1ZTogLTEyMik7XG5cbiAgICBAaWYgJGdyYXlzY2FsZSA9PSB0cnVlIHtcbiAgICAgICRpbnNldC1zaGFkb3ctYWN0aXZlOiBncmF5c2NhbGUoJGluc2V0LXNoYWRvdy1hY3RpdmUpO1xuICAgIH1cblxuICAgIGJveC1zaGFkb3c6IGluc2V0IDAgMCAyMHB4IDAgJGluc2V0LXNoYWRvdy1hY3RpdmUsIDAgMXB4IDAgI2ZmZjtcbiAgfVxufVxuXG5cbi8vIFBpbGwgQnV0dG9uXG4vLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8vXG5AbWl4aW4gcGlsbCgkYmFzZS1jb2xvciwgJGdyYXlzY2FsZTogZmFsc2UpIHtcbiAgJGNvbG9yOiAgICAgICAgIGhzbCgwLCAwLCAxMDAlKTtcbiAgJGJvcmRlci1ib3R0b206IGFkanVzdC1jb2xvcigkYmFzZS1jb2xvciwgJGh1ZTogIDgsICRzYXR1cmF0aW9uOiAtMTElLCAkbGlnaHRuZXNzOiAtMjYlKTtcbiAgJGJvcmRlci1zaWRlczogIGFkanVzdC1jb2xvcigkYmFzZS1jb2xvciwgJGh1ZTogIDQsICRzYXR1cmF0aW9uOiAtMjElLCAkbGlnaHRuZXNzOiAtMjElKTtcbiAgJGJvcmRlci10b3A6ICAgIGFkanVzdC1jb2xvcigkYmFzZS1jb2xvciwgJGh1ZTogLTEsICRzYXR1cmF0aW9uOiAtMzAlLCAkbGlnaHRuZXNzOiAtMTUlKTtcbiAgJGluc2V0LXNoYWRvdzogIGFkanVzdC1jb2xvcigkYmFzZS1jb2xvciwgJGh1ZTogLTEsICRzYXR1cmF0aW9uOiAtMSUsICAkbGlnaHRuZXNzOiAgNyUpO1xuICAkc3RvcC1ncmFkaWVudDogYWRqdXN0LWNvbG9yKCRiYXNlLWNvbG9yLCAkaHVlOiAgOCwgJHNhdHVyYXRpb246ICAxNCUsICRsaWdodG5lc3M6IC0xMCUpO1xuICAkdGV4dC1zaGFkb3c6ICAgYWRqdXN0LWNvbG9yKCRiYXNlLWNvbG9yLCAkaHVlOiAgNSwgJHNhdHVyYXRpb246IC0xOSUsICRsaWdodG5lc3M6IC0xNSUpO1xuXG4gIEBpZiBsaWdodG5lc3MoJGJhc2UtY29sb3IpID4gNzAlIHtcbiAgICAkY29sb3I6ICAgICAgIGhzbCgwLCAwLCAyMCUpO1xuICAgICR0ZXh0LXNoYWRvdzogYWRqdXN0LWNvbG9yKCRiYXNlLWNvbG9yLCAkc2F0dXJhdGlvbjogMTAlLCAkbGlnaHRuZXNzOiA0JSk7XG4gIH1cblxuICBAaWYgJGdyYXlzY2FsZSA9PSB0cnVlIHtcbiAgICAkYm9yZGVyLWJvdHRvbTogZ3JheXNjYWxlKCRib3JkZXItYm90dG9tKTtcbiAgICAkYm9yZGVyLXNpZGVzOiAgZ3JheXNjYWxlKCRib3JkZXItc2lkZXMpO1xuICAgICRib3JkZXItdG9wOiAgICBncmF5c2NhbGUoJGJvcmRlci10b3ApO1xuICAgICRpbnNldC1zaGFkb3c6ICBncmF5c2NhbGUoJGluc2V0LXNoYWRvdyk7XG4gICAgJHN0b3AtZ3JhZGllbnQ6IGdyYXlzY2FsZSgkc3RvcC1ncmFkaWVudCk7XG4gICAgJHRleHQtc2hhZG93OiAgIGdyYXlzY2FsZSgkdGV4dC1zaGFkb3cpO1xuICB9XG5cbiAgYm9yZGVyOiAxcHggc29saWQgJGJvcmRlci10b3A7XG4gIGJvcmRlci1jb2xvcjogJGJvcmRlci10b3AgJGJvcmRlci1zaWRlcyAkYm9yZGVyLWJvdHRvbTtcbiAgYm9yZGVyLXJhZGl1czogMTZweDtcbiAgYm94LXNoYWRvdzogaW5zZXQgMCAxcHggMCAwICRpbnNldC1zaGFkb3csIDAgMXB4IDJweCAwICNiM2IzYjM7XG4gIGNvbG9yOiAkY29sb3I7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgZm9udC1zaXplOiBpbmhlcml0O1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICBsaW5lLWhlaWdodDogMTtcbiAgQGluY2x1ZGUgbGluZWFyLWdyYWRpZW50ICgkYmFzZS1jb2xvciwgJHN0b3AtZ3JhZGllbnQpO1xuICBwYWRkaW5nOiA1cHggMTZweDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIHRleHQtc2hhZG93OiAwIC0xcHggMXB4ICR0ZXh0LXNoYWRvdztcbiAgYmFja2dyb3VuZC1jbGlwOiBwYWRkaW5nLWJveDtcblxuICAmOmhvdmVyOm5vdCg6ZGlzYWJsZWQpIHtcbiAgICAkYmFzZS1jb2xvci1ob3ZlcjogICAgYWRqdXN0LWNvbG9yKCRiYXNlLWNvbG9yLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJGxpZ2h0bmVzczogLTQuNSUpO1xuICAgICRib3JkZXItYm90dG9tOiAgICAgICBhZGp1c3QtY29sb3IoJGJhc2UtY29sb3IsICRodWU6ICA4LCAkc2F0dXJhdGlvbjogIDEzLjUlLCAkbGlnaHRuZXNzOiAtMzIlKTtcbiAgICAkYm9yZGVyLXNpZGVzOiAgICAgICAgYWRqdXN0LWNvbG9yKCRiYXNlLWNvbG9yLCAkaHVlOiAgNCwgJHNhdHVyYXRpb246IC0yJSwgICAgJGxpZ2h0bmVzczogLTI3JSk7XG4gICAgJGJvcmRlci10b3A6ICAgICAgICAgIGFkanVzdC1jb2xvcigkYmFzZS1jb2xvciwgJGh1ZTogLTEsICRzYXR1cmF0aW9uOiAtMTclLCAgICRsaWdodG5lc3M6IC0yMSUpO1xuICAgICRpbnNldC1zaGFkb3ctaG92ZXI6ICBhZGp1c3QtY29sb3IoJGJhc2UtY29sb3IsICAgICAgICAgICAkc2F0dXJhdGlvbjogLTElLCAgICAkbGlnaHRuZXNzOiAgMyUpO1xuICAgICRzdG9wLWdyYWRpZW50LWhvdmVyOiBhZGp1c3QtY29sb3IoJGJhc2UtY29sb3IsICRodWU6ICA4LCAkc2F0dXJhdGlvbjogLTQlLCAgICAkbGlnaHRuZXNzOiAtMTUuNSUpO1xuICAgICR0ZXh0LXNoYWRvdy1ob3ZlcjogICBhZGp1c3QtY29sb3IoJGJhc2UtY29sb3IsICRodWU6ICA1LCAkc2F0dXJhdGlvbjogLTUlLCAgICAkbGlnaHRuZXNzOiAtMjIlKTtcblxuICAgIEBpZiAkZ3JheXNjYWxlID09IHRydWUge1xuICAgICAgJGJhc2UtY29sb3ItaG92ZXI6ICAgIGdyYXlzY2FsZSgkYmFzZS1jb2xvci1ob3Zlcik7XG4gICAgICAkYm9yZGVyLWJvdHRvbTogICAgICAgZ3JheXNjYWxlKCRib3JkZXItYm90dG9tKTtcbiAgICAgICRib3JkZXItc2lkZXM6ICAgICAgICBncmF5c2NhbGUoJGJvcmRlci1zaWRlcyk7XG4gICAgICAkYm9yZGVyLXRvcDogICAgICAgICAgZ3JheXNjYWxlKCRib3JkZXItdG9wKTtcbiAgICAgICRpbnNldC1zaGFkb3ctaG92ZXI6ICBncmF5c2NhbGUoJGluc2V0LXNoYWRvdy1ob3Zlcik7XG4gICAgICAkc3RvcC1ncmFkaWVudC1ob3ZlcjogZ3JheXNjYWxlKCRzdG9wLWdyYWRpZW50LWhvdmVyKTtcbiAgICAgICR0ZXh0LXNoYWRvdy1ob3ZlcjogICBncmF5c2NhbGUoJHRleHQtc2hhZG93LWhvdmVyKTtcbiAgICB9XG5cbiAgICBib3JkZXI6IDFweCBzb2xpZCAkYm9yZGVyLXRvcDtcbiAgICBib3JkZXItY29sb3I6ICRib3JkZXItdG9wICRib3JkZXItc2lkZXMgJGJvcmRlci1ib3R0b207XG4gICAgYm94LXNoYWRvdzogaW5zZXQgMCAxcHggMCAwICRpbnNldC1zaGFkb3ctaG92ZXI7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIEBpbmNsdWRlIGxpbmVhci1ncmFkaWVudCAoJGJhc2UtY29sb3ItaG92ZXIsICRzdG9wLWdyYWRpZW50LWhvdmVyKTtcbiAgICB0ZXh0LXNoYWRvdzogMCAtMXB4IDFweCAkdGV4dC1zaGFkb3ctaG92ZXI7XG4gICAgYmFja2dyb3VuZC1jbGlwOiBwYWRkaW5nLWJveDtcbiAgfVxuXG4gICY6YWN0aXZlOm5vdCg6ZGlzYWJsZWQpIHtcbiAgICAkYWN0aXZlLWNvbG9yOiAgICAgICAgIGFkanVzdC1jb2xvcigkYmFzZS1jb2xvciwgJGh1ZTogNCwgICRzYXR1cmF0aW9uOiAtMTIlLCAgJGxpZ2h0bmVzczogLTEwJSk7XG4gICAgJGJvcmRlci1hY3RpdmU6ICAgICAgICBhZGp1c3QtY29sb3IoJGJhc2UtY29sb3IsICRodWU6IDYsICAkc2F0dXJhdGlvbjogLTIuNSUsICRsaWdodG5lc3M6IC0zMCUpO1xuICAgICRib3JkZXItYm90dG9tLWFjdGl2ZTogYWRqdXN0LWNvbG9yKCRiYXNlLWNvbG9yLCAkaHVlOiAxMSwgJHNhdHVyYXRpb246ICA2JSwgICAkbGlnaHRuZXNzOiAtMzElKTtcbiAgICAkaW5zZXQtc2hhZG93LWFjdGl2ZTogIGFkanVzdC1jb2xvcigkYmFzZS1jb2xvciwgJGh1ZTogOSwgICRzYXR1cmF0aW9uOiAgMiUsICAgJGxpZ2h0bmVzczogLTIxLjUlKTtcbiAgICAkdGV4dC1zaGFkb3ctYWN0aXZlOiAgIGFkanVzdC1jb2xvcigkYmFzZS1jb2xvciwgJGh1ZTogNSwgICRzYXR1cmF0aW9uOiAtMTIlLCAgJGxpZ2h0bmVzczogLTIxLjUlKTtcblxuICAgIEBpZiAkZ3JheXNjYWxlID09IHRydWUge1xuICAgICAgJGFjdGl2ZS1jb2xvcjogICAgICAgICBncmF5c2NhbGUoJGFjdGl2ZS1jb2xvcik7XG4gICAgICAkYm9yZGVyLWFjdGl2ZTogICAgICAgIGdyYXlzY2FsZSgkYm9yZGVyLWFjdGl2ZSk7XG4gICAgICAkYm9yZGVyLWJvdHRvbS1hY3RpdmU6IGdyYXlzY2FsZSgkYm9yZGVyLWJvdHRvbS1hY3RpdmUpO1xuICAgICAgJGluc2V0LXNoYWRvdy1hY3RpdmU6ICBncmF5c2NhbGUoJGluc2V0LXNoYWRvdy1hY3RpdmUpO1xuICAgICAgJHRleHQtc2hhZG93LWFjdGl2ZTogICBncmF5c2NhbGUoJHRleHQtc2hhZG93LWFjdGl2ZSk7XG4gICAgfVxuXG4gICAgYmFja2dyb3VuZDogJGFjdGl2ZS1jb2xvcjtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAkYm9yZGVyLWFjdGl2ZTtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJGJvcmRlci1ib3R0b20tYWN0aXZlO1xuICAgIGJveC1zaGFkb3c6IGluc2V0IDAgMCA2cHggM3B4ICRpbnNldC1zaGFkb3ctYWN0aXZlLCAwIDFweCAwIDAgI2ZmZjtcbiAgICB0ZXh0LXNoYWRvdzogMCAtMXB4IDFweCAkdGV4dC1zaGFkb3ctYWN0aXZlO1xuICB9XG59XG4iLCIvLyBNb2Rlcm4gbWljcm8gY2xlYXJmaXggcHJvdmlkZXMgYW4gZWFzeSB3YXkgdG8gY29udGFpbiBmbG9hdHMgd2l0aG91dCBhZGRpbmcgYWRkaXRpb25hbCBtYXJrdXAuXG4vL1xuLy8gRXhhbXBsZSB1c2FnZTpcbi8vXG4vLyAgICAvLyBDb250YWluIGFsbCBmbG9hdHMgd2l0aGluIC53cmFwcGVyXG4vLyAgICAud3JhcHBlciB7XG4vLyAgICAgIEBpbmNsdWRlIGNsZWFyZml4O1xuLy8gICAgICAuY29udGVudCxcbi8vICAgICAgLnNpZGViYXIge1xuLy8gICAgICAgIGZsb2F0IDogbGVmdDtcbi8vICAgICAgfVxuLy8gICAgfVxuXG5AbWl4aW4gY2xlYXJmaXgge1xuICAmOmFmdGVyIHtcbiAgICBjb250ZW50OlwiXCI7XG4gICAgZGlzcGxheTp0YWJsZTtcbiAgICBjbGVhcjpib3RoO1xuICB9XG59XG5cbi8vIEFja25vd2xlZGdlbWVudHNcbi8vIEJlYXQgKnRoYXQqIGNsZWFyZml4OiBbVGhpZXJyeSBLb2JsZW50el0oaHR0cDovL3d3dy5jc3MtMTAxLm9yZy9hcnRpY2xlcy9jbGVhcmZpeC9sYXRlc3QtbmV3LWNsZWFyZml4LXNvLWZhci5waHApXG4iLCIkZ2VvcmdpYTogR2VvcmdpYSwgQ2FtYnJpYSwgXCJUaW1lcyBOZXcgUm9tYW5cIiwgVGltZXMsIHNlcmlmO1xuJGhlbHZldGljYTogXCJIZWx2ZXRpY2EgTmV1ZVwiLCBIZWx2ZXRpY2EsIFJvYm90bywgQXJpYWwsIHNhbnMtc2VyaWY7XG4kbHVjaWRhLWdyYW5kZTogXCJMdWNpZGEgR3JhbmRlXCIsIFRhaG9tYSwgVmVyZGFuYSwgQXJpYWwsIHNhbnMtc2VyaWY7XG4kbW9ub3NwYWNlOiBcIkJpdHN0cmVhbSBWZXJhIFNhbnMgTW9ub1wiLCBDb25zb2xhcywgQ291cmllciwgbW9ub3NwYWNlO1xuJHZlcmRhbmE6IFZlcmRhbmEsIEdlbmV2YSwgc2Fucy1zZXJpZjtcbiIsIkBtaXhpbiBoaWRlLXRleHQge1xuICBjb2xvcjogICAgICAgICAgICB0cmFuc3BhcmVudDtcbiAgZm9udDogICAgICAgICAgICAgMC8wIGE7XG4gIHRleHQtc2hhZG93OiAgICAgIG5vbmU7XG59XG4iLCIvLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8vXG4vLyBHZW5lcmF0ZSBhIHZhcmlhYmxlICgkYWxsLXRleHQtaW5wdXRzKSB3aXRoIGEgbGlzdCBvZiBhbGwgaHRtbDVcbi8vIGlucHV0IHR5cGVzIHRoYXQgaGF2ZSBhIHRleHQtYmFzZWQgaW5wdXQsIGV4Y2x1ZGluZyB0ZXh0YXJlYS5cbi8vIGh0dHA6Ly9kaXZlaW50b2h0bWw1Lm9yZy9mb3Jtcy5odG1sXG4vLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8vXG4kaW5wdXRzLWxpc3Q6ICdpbnB1dFt0eXBlPVwiZW1haWxcIl0nLFxuICAgICAgICAgICAgICAnaW5wdXRbdHlwZT1cIm51bWJlclwiXScsXG4gICAgICAgICAgICAgICdpbnB1dFt0eXBlPVwicGFzc3dvcmRcIl0nLFxuICAgICAgICAgICAgICAnaW5wdXRbdHlwZT1cInNlYXJjaFwiXScsXG4gICAgICAgICAgICAgICdpbnB1dFt0eXBlPVwidGVsXCJdJyxcbiAgICAgICAgICAgICAgJ2lucHV0W3R5cGU9XCJ0ZXh0XCJdJyxcbiAgICAgICAgICAgICAgJ2lucHV0W3R5cGU9XCJ1cmxcIl0nLFxuXG4gICAgICAgICAgICAgIC8vIFdlYmtpdCAmIEdlY2tvIG1heSBjaGFuZ2UgdGhlIGRpc3BsYXkgb2YgdGhlc2UgaW4gdGhlIGZ1dHVyZVxuICAgICAgICAgICAgICAnaW5wdXRbdHlwZT1cImNvbG9yXCJdJyxcbiAgICAgICAgICAgICAgJ2lucHV0W3R5cGU9XCJkYXRlXCJdJyxcbiAgICAgICAgICAgICAgJ2lucHV0W3R5cGU9XCJkYXRldGltZVwiXScsXG4gICAgICAgICAgICAgICdpbnB1dFt0eXBlPVwiZGF0ZXRpbWUtbG9jYWxcIl0nLFxuICAgICAgICAgICAgICAnaW5wdXRbdHlwZT1cIm1vbnRoXCJdJyxcbiAgICAgICAgICAgICAgJ2lucHV0W3R5cGU9XCJ0aW1lXCJdJyxcbiAgICAgICAgICAgICAgJ2lucHV0W3R5cGU9XCJ3ZWVrXCJdJztcblxuJHVucXVvdGVkLWlucHV0cy1saXN0OiAoKTtcbkBlYWNoICRpbnB1dC10eXBlIGluICRpbnB1dHMtbGlzdCB7XG4gICR1bnF1b3RlZC1pbnB1dHMtbGlzdDogYXBwZW5kKCR1bnF1b3RlZC1pbnB1dHMtbGlzdCwgdW5xdW90ZSgkaW5wdXQtdHlwZSksIGNvbW1hKTtcbn1cblxuJGFsbC10ZXh0LWlucHV0czogJHVucXVvdGVkLWlucHV0cy1saXN0O1xuXG5cbi8vIEhvdmVyIFBzZXVkby1jbGFzc1xuLy8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovL1xuJGFsbC10ZXh0LWlucHV0cy1ob3ZlcjogKCk7XG5AZWFjaCAkaW5wdXQtdHlwZSBpbiAkdW5xdW90ZWQtaW5wdXRzLWxpc3Qge1xuICAgICAgJGlucHV0LXR5cGUtaG92ZXI6ICRpbnB1dC10eXBlICsgXCI6aG92ZXJcIjtcbiAgICAgICRhbGwtdGV4dC1pbnB1dHMtaG92ZXI6IGFwcGVuZCgkYWxsLXRleHQtaW5wdXRzLWhvdmVyLCAkaW5wdXQtdHlwZS1ob3ZlciwgY29tbWEpO1xufVxuXG4vLyBGb2N1cyBQc2V1ZG8tY2xhc3Ncbi8vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLy9cbiRhbGwtdGV4dC1pbnB1dHMtZm9jdXM6ICgpO1xuQGVhY2ggJGlucHV0LXR5cGUgaW4gJHVucXVvdGVkLWlucHV0cy1saXN0IHtcbiAgICAgICRpbnB1dC10eXBlLWZvY3VzOiAkaW5wdXQtdHlwZSArIFwiOmZvY3VzXCI7XG4gICAgICAkYWxsLXRleHQtaW5wdXRzLWZvY3VzOiBhcHBlbmQoJGFsbC10ZXh0LWlucHV0cy1mb2N1cywgJGlucHV0LXR5cGUtZm9jdXMsIGNvbW1hKTtcbn1cblxuLy8gWW91IG11c3QgdXNlIGludGVycG9sYXRpb24gb24gdGhlIHZhcmlhYmxlOlxuLy8gI3skYWxsLXRleHQtaW5wdXRzfVxuLy8gI3skYWxsLXRleHQtaW5wdXRzLWhvdmVyfVxuLy8gI3skYWxsLXRleHQtaW5wdXRzLWZvY3VzfVxuXG4vLyBFeGFtcGxlXG4vLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8vXG4vLyAgICN7JGFsbC10ZXh0LWlucHV0c30sIHRleHRhcmVhIHtcbi8vICAgICBib3JkZXI6IDFweCBzb2xpZCByZWQ7XG4vLyAgIH1cbiIsIkBtaXhpbiBwb3NpdGlvbiAoJHBvc2l0aW9uOiByZWxhdGl2ZSwgJGNvb3JkaW5hdGVzOiAwIDAgMCAwKSB7XG5cbiAgQGlmIHR5cGUtb2YoJHBvc2l0aW9uKSA9PSBsaXN0IHtcbiAgICAkY29vcmRpbmF0ZXM6ICRwb3NpdGlvbjtcbiAgICAkcG9zaXRpb246IHJlbGF0aXZlO1xuICB9XG5cbiAgJHRvcDogbnRoKCRjb29yZGluYXRlcywgMSk7XG4gICRyaWdodDogbnRoKCRjb29yZGluYXRlcywgMik7XG4gICRib3R0b206IG50aCgkY29vcmRpbmF0ZXMsIDMpO1xuICAkbGVmdDogbnRoKCRjb29yZGluYXRlcywgNCk7XG5cbiAgcG9zaXRpb246ICRwb3NpdGlvbjtcblxuICBAaWYgJHRvcCA9PSBhdXRvIHtcbiAgICB0b3A6ICR0b3A7XG4gIH1cbiAgQGVsc2UgaWYgbm90KHVuaXRsZXNzKCR0b3ApKSB7XG4gICAgdG9wOiAkdG9wO1xuICB9XG5cbiAgQGlmICRyaWdodCA9PSBhdXRvIHtcbiAgICByaWdodDogJHJpZ2h0O1xuICB9XG4gIEBlbHNlIGlmIG5vdCh1bml0bGVzcygkcmlnaHQpKSB7XG4gICAgcmlnaHQ6ICRyaWdodDtcbiAgfVxuXG4gIEBpZiAkYm90dG9tID09IGF1dG8ge1xuICAgIGJvdHRvbTogJGJvdHRvbTtcbiAgfVxuICBAZWxzZSBpZiBub3QodW5pdGxlc3MoJGJvdHRvbSkpIHtcbiAgICBib3R0b206ICRib3R0b207XG4gIH1cblxuICBAaWYgJGxlZnQgPT0gYXV0byB7XG4gICAgbGVmdDogJGxlZnQ7XG4gIH1cbiAgQGVsc2UgaWYgbm90KHVuaXRsZXNzKCRsZWZ0KSkge1xuICAgIGxlZnQ6ICRsZWZ0O1xuICB9XG59XG4iLCIvLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8vXG4vLyBFeGFtcGxlOiBAaW5jbHVkZSBwcmVmaXhlcihib3JkZXItcmFkaXVzLCAkcmFkaWksIHdlYmtpdCBtcyBzcGVjKTtcbi8vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLy9cbi8vIFZhcmlhYmxlcyBsb2NhdGVkIGluIC9zZXR0aW5ncy9fcHJlZml4ZXIuc2Nzc1xuXG5AbWl4aW4gcHJlZml4ZXIgKCRwcm9wZXJ0eSwgJHZhbHVlLCAkcHJlZml4ZXMpIHtcbiAgQGVhY2ggJHByZWZpeCBpbiAkcHJlZml4ZXMge1xuICAgIEBpZiAkcHJlZml4ID09IHdlYmtpdCB7XG4gICAgICBAaWYgJHByZWZpeC1mb3Itd2Via2l0IHtcbiAgICAgICAgLXdlYmtpdC0jeyRwcm9wZXJ0eX06ICR2YWx1ZTtcbiAgICAgIH1cbiAgICB9XG4gICAgQGVsc2UgaWYgJHByZWZpeCA9PSBtb3oge1xuICAgICAgQGlmICRwcmVmaXgtZm9yLW1vemlsbGEge1xuICAgICAgICAtbW96LSN7JHByb3BlcnR5fTogJHZhbHVlO1xuICAgICAgfVxuICAgIH1cbiAgICBAZWxzZSBpZiAkcHJlZml4ID09IG1zIHtcbiAgICAgIEBpZiAkcHJlZml4LWZvci1taWNyb3NvZnQge1xuICAgICAgICAtbXMtI3skcHJvcGVydHl9OiAkdmFsdWU7XG4gICAgICB9XG4gICAgfVxuICAgIEBlbHNlIGlmICRwcmVmaXggPT0gbyB7XG4gICAgICBAaWYgJHByZWZpeC1mb3Itb3BlcmEge1xuICAgICAgICAtby0jeyRwcm9wZXJ0eX06ICR2YWx1ZTtcbiAgICAgIH1cbiAgICB9XG4gICAgQGVsc2UgaWYgJHByZWZpeCA9PSBzcGVjIHtcbiAgICAgIEBpZiAkcHJlZml4LWZvci1zcGVjIHtcbiAgICAgICAgI3skcHJvcGVydHl9OiAkdmFsdWU7XG4gICAgICB9XG4gICAgfVxuICAgIEBlbHNlICB7XG4gICAgICBAd2FybiBcIlVucmVjb2duaXplZCBwcmVmaXg6ICN7JHByZWZpeH1cIjtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIGRpc2FibGUtcHJlZml4LWZvci1hbGwoKSB7XG4gICRwcmVmaXgtZm9yLXdlYmtpdDogICAgZmFsc2U7XG4gICRwcmVmaXgtZm9yLW1vemlsbGE6ICAgZmFsc2U7XG4gICRwcmVmaXgtZm9yLW1pY3Jvc29mdDogZmFsc2U7XG4gICRwcmVmaXgtZm9yLW9wZXJhOiAgICAgZmFsc2U7XG4gICRwcmVmaXgtZm9yLXNwZWM6ICAgICAgZmFsc2U7XG59XG4iLCJAbWl4aW4gcmV0aW5hLWltYWdlKCRmaWxlbmFtZSwgJGJhY2tncm91bmQtc2l6ZSwgJGV4dGVuc2lvbjogcG5nLCAkcmV0aW5hLWZpbGVuYW1lOiBudWxsLCAkcmV0aW5hLXN1ZmZpeDogXzJ4LCAkYXNzZXQtcGlwZWxpbmU6IGZhbHNlKSB7XG4gIEBpZiAkYXNzZXQtcGlwZWxpbmUge1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IGltYWdlLXVybChcIiN7JGZpbGVuYW1lfS4jeyRleHRlbnNpb259XCIpO1xuICB9XG4gIEBlbHNlIHtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiAgICAgICB1cmwoXCIjeyRmaWxlbmFtZX0uI3skZXh0ZW5zaW9ufVwiKTtcbiAgfVxuXG4gIEBpbmNsdWRlIGhpZHBpIHtcbiAgICBAaWYgJGFzc2V0LXBpcGVsaW5lIHtcbiAgICAgIEBpZiAkcmV0aW5hLWZpbGVuYW1lIHtcbiAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogaW1hZ2UtdXJsKFwiI3skcmV0aW5hLWZpbGVuYW1lfS4jeyRleHRlbnNpb259XCIpO1xuICAgICAgfVxuICAgICAgQGVsc2Uge1xuICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiBpbWFnZS11cmwoXCIjeyRmaWxlbmFtZX0jeyRyZXRpbmEtc3VmZml4fS4jeyRleHRlbnNpb259XCIpO1xuICAgICAgfVxuICAgIH1cblxuICAgIEBlbHNlIHtcbiAgICAgIEBpZiAkcmV0aW5hLWZpbGVuYW1lIHtcbiAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiI3skcmV0aW5hLWZpbGVuYW1lfS4jeyRleHRlbnNpb259XCIpO1xuICAgICAgfVxuICAgICAgQGVsc2Uge1xuICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIjeyRmaWxlbmFtZX0jeyRyZXRpbmEtc3VmZml4fS4jeyRleHRlbnNpb259XCIpO1xuICAgICAgfVxuICAgIH1cblxuICAgIGJhY2tncm91bmQtc2l6ZTogJGJhY2tncm91bmQtc2l6ZTtcblxuICB9XG59XG4iLCJAbWl4aW4gc2l6ZSgkc2l6ZSkge1xuICBAaWYgbGVuZ3RoKCRzaXplKSA9PSAxIHtcbiAgICBAaWYgJHNpemUgPT0gYXV0byB7XG4gICAgICB3aWR0aDogICRzaXplO1xuICAgICAgaGVpZ2h0OiAkc2l6ZTtcbiAgICB9XG5cbiAgICBAZWxzZSBpZiB1bml0bGVzcygkc2l6ZSkge1xuICAgICAgd2lkdGg6ICAkc2l6ZSArIHB4O1xuICAgICAgaGVpZ2h0OiAkc2l6ZSArIHB4O1xuICAgIH1cblxuICAgIEBlbHNlIGlmIG5vdCh1bml0bGVzcygkc2l6ZSkpIHtcbiAgICAgIHdpZHRoOiAgJHNpemU7XG4gICAgICBoZWlnaHQ6ICRzaXplO1xuICAgIH1cbiAgfVxuXG4gIC8vIFdpZHRoIHggSGVpZ2h0XG4gIEBpZiBsZW5ndGgoJHNpemUpID09IDIge1xuICAgICR3aWR0aDogIG50aCgkc2l6ZSwgMSk7XG4gICAgJGhlaWdodDogbnRoKCRzaXplLCAyKTtcblxuICAgIEBpZiAkd2lkdGggPT0gYXV0byB7XG4gICAgICB3aWR0aDogJHdpZHRoO1xuICAgIH1cbiAgICBAZWxzZSBpZiBub3QodW5pdGxlc3MoJHdpZHRoKSkge1xuICAgICAgd2lkdGg6ICR3aWR0aDtcbiAgICB9XG4gICAgQGVsc2UgaWYgdW5pdGxlc3MoJHdpZHRoKSB7XG4gICAgICB3aWR0aDogJHdpZHRoICsgcHg7XG4gICAgfVxuXG4gICAgQGlmICRoZWlnaHQgPT0gYXV0byB7XG4gICAgICBoZWlnaHQ6ICRoZWlnaHQ7XG4gICAgfVxuICAgIEBlbHNlIGlmIG5vdCh1bml0bGVzcygkaGVpZ2h0KSkge1xuICAgICAgaGVpZ2h0OiAkaGVpZ2h0O1xuICAgIH1cbiAgICBAZWxzZSBpZiB1bml0bGVzcygkaGVpZ2h0KSB7XG4gICAgICBoZWlnaHQ6ICRoZWlnaHQgKyBweDtcbiAgICB9XG4gIH1cbn1cbiIsIi8vIENTUyBjdWJpYy1iZXppZXIgdGltaW5nIGZ1bmN0aW9ucy4gVGltaW5nIGZ1bmN0aW9ucyBjb3VydGVzeSBvZiBqcXVlcnkuZWFzaWUgKGdpdGh1Yi5jb20vamF1a2lhL2Vhc2llKVxuLy8gVGltaW5nIGZ1bmN0aW9ucyBhcmUgdGhlIHNhbWUgYXMgZGVtbydlZCBoZXJlOiBodHRwOi8vanF1ZXJ5dWkuY29tL2RlbW9zL2VmZmVjdC9lYXNpbmcuaHRtbFxuXG4vLyBFQVNFIElOXG4kZWFzZS1pbi1xdWFkOiAgICAgIGN1YmljLWJlemllcigwLjU1MCwgIDAuMDg1LCAwLjY4MCwgMC41MzApO1xuJGVhc2UtaW4tY3ViaWM6ICAgICBjdWJpYy1iZXppZXIoMC41NTAsICAwLjA1NSwgMC42NzUsIDAuMTkwKTtcbiRlYXNlLWluLXF1YXJ0OiAgICAgY3ViaWMtYmV6aWVyKDAuODk1LCAgMC4wMzAsIDAuNjg1LCAwLjIyMCk7XG4kZWFzZS1pbi1xdWludDogICAgIGN1YmljLWJlemllcigwLjc1NSwgIDAuMDUwLCAwLjg1NSwgMC4wNjApO1xuJGVhc2UtaW4tc2luZTogICAgICBjdWJpYy1iZXppZXIoMC40NzAsICAwLjAwMCwgMC43NDUsIDAuNzE1KTtcbiRlYXNlLWluLWV4cG86ICAgICAgY3ViaWMtYmV6aWVyKDAuOTUwLCAgMC4wNTAsIDAuNzk1LCAwLjAzNSk7XG4kZWFzZS1pbi1jaXJjOiAgICAgIGN1YmljLWJlemllcigwLjYwMCwgIDAuMDQwLCAwLjk4MCwgMC4zMzUpO1xuJGVhc2UtaW4tYmFjazogICAgICBjdWJpYy1iZXppZXIoMC42MDAsIC0wLjI4MCwgMC43MzUsIDAuMDQ1KTtcblxuLy8gRUFTRSBPVVRcbiRlYXNlLW91dC1xdWFkOiAgICAgY3ViaWMtYmV6aWVyKDAuMjUwLCAgMC40NjAsIDAuNDUwLCAwLjk0MCk7XG4kZWFzZS1vdXQtY3ViaWM6ICAgIGN1YmljLWJlemllcigwLjIxNSwgIDAuNjEwLCAwLjM1NSwgMS4wMDApO1xuJGVhc2Utb3V0LXF1YXJ0OiAgICBjdWJpYy1iZXppZXIoMC4xNjUsICAwLjg0MCwgMC40NDAsIDEuMDAwKTtcbiRlYXNlLW91dC1xdWludDogICAgY3ViaWMtYmV6aWVyKDAuMjMwLCAgMS4wMDAsIDAuMzIwLCAxLjAwMCk7XG4kZWFzZS1vdXQtc2luZTogICAgIGN1YmljLWJlemllcigwLjM5MCwgIDAuNTc1LCAwLjU2NSwgMS4wMDApO1xuJGVhc2Utb3V0LWV4cG86ICAgICBjdWJpYy1iZXppZXIoMC4xOTAsICAxLjAwMCwgMC4yMjAsIDEuMDAwKTtcbiRlYXNlLW91dC1jaXJjOiAgICAgY3ViaWMtYmV6aWVyKDAuMDc1LCAgMC44MjAsIDAuMTY1LCAxLjAwMCk7XG4kZWFzZS1vdXQtYmFjazogICAgIGN1YmljLWJlemllcigwLjE3NSwgIDAuODg1LCAwLjMyMCwgMS4yNzUpO1xuXG4vLyBFQVNFIElOIE9VVFxuJGVhc2UtaW4tb3V0LXF1YWQ6ICBjdWJpYy1iZXppZXIoMC40NTUsICAwLjAzMCwgMC41MTUsIDAuOTU1KTtcbiRlYXNlLWluLW91dC1jdWJpYzogY3ViaWMtYmV6aWVyKDAuNjQ1LCAgMC4wNDUsIDAuMzU1LCAxLjAwMCk7XG4kZWFzZS1pbi1vdXQtcXVhcnQ6IGN1YmljLWJlemllcigwLjc3MCwgIDAuMDAwLCAwLjE3NSwgMS4wMDApO1xuJGVhc2UtaW4tb3V0LXF1aW50OiBjdWJpYy1iZXppZXIoMC44NjAsICAwLjAwMCwgMC4wNzAsIDEuMDAwKTtcbiRlYXNlLWluLW91dC1zaW5lOiAgY3ViaWMtYmV6aWVyKDAuNDQ1LCAgMC4wNTAsIDAuNTUwLCAwLjk1MCk7XG4kZWFzZS1pbi1vdXQtZXhwbzogIGN1YmljLWJlemllcigxLjAwMCwgIDAuMDAwLCAwLjAwMCwgMS4wMDApO1xuJGVhc2UtaW4tb3V0LWNpcmM6ICBjdWJpYy1iZXppZXIoMC43ODUsICAwLjEzNSwgMC4xNTAsIDAuODYwKTtcbiRlYXNlLWluLW91dC1iYWNrOiAgY3ViaWMtYmV6aWVyKDAuNjgwLCAtMC41NTAsIDAuMjY1LCAxLjU1MCk7XG4iLCJAbWl4aW4gdHJpYW5nbGUgKCRzaXplLCAkY29sb3IsICRkaXJlY3Rpb24pIHtcbiAgaGVpZ2h0OiAwO1xuICB3aWR0aDogMDtcblxuICBAaWYgKCRkaXJlY3Rpb24gPT0gdXApIG9yICgkZGlyZWN0aW9uID09IGRvd24pIG9yICgkZGlyZWN0aW9uID09IHJpZ2h0KSBvciAoJGRpcmVjdGlvbiA9PSBsZWZ0KSB7XG4gICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICBib3JkZXItc3R5bGU6IHNvbGlkO1xuICAgIGJvcmRlci13aWR0aDogJHNpemUgLyAyO1xuXG4gICAgQGlmICRkaXJlY3Rpb24gPT0gdXAge1xuICAgICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogJGNvbG9yO1xuXG4gICAgfSBAZWxzZSBpZiAkZGlyZWN0aW9uID09IHJpZ2h0IHtcbiAgICAgIGJvcmRlci1sZWZ0LWNvbG9yOiAgICRjb2xvcjtcblxuICAgIH0gQGVsc2UgaWYgJGRpcmVjdGlvbiA9PSBkb3duIHtcbiAgICAgIGJvcmRlci10b3AtY29sb3I6ICAgICRjb2xvcjtcblxuICAgIH0gQGVsc2UgaWYgJGRpcmVjdGlvbiA9PSBsZWZ0IHtcbiAgICAgIGJvcmRlci1yaWdodC1jb2xvcjogICRjb2xvcjtcbiAgICB9XG4gIH1cblxuICBAZWxzZSBpZiAoJGRpcmVjdGlvbiA9PSB1cC1yaWdodCkgb3IgKCRkaXJlY3Rpb24gPT0gdXAtbGVmdCkge1xuICAgIGJvcmRlci10b3A6ICRzaXplIHNvbGlkICRjb2xvcjtcblxuICAgIEBpZiAkZGlyZWN0aW9uID09IHVwLXJpZ2h0IHtcbiAgICAgIGJvcmRlci1sZWZ0OiAgJHNpemUgc29saWQgdHJhbnNwYXJlbnQ7XG5cbiAgICB9IEBlbHNlIGlmICRkaXJlY3Rpb24gPT0gdXAtbGVmdCB7XG4gICAgICBib3JkZXItcmlnaHQ6ICRzaXplIHNvbGlkIHRyYW5zcGFyZW50O1xuICAgIH1cbiAgfVxuXG4gIEBlbHNlIGlmICgkZGlyZWN0aW9uID09IGRvd24tcmlnaHQpIG9yICgkZGlyZWN0aW9uID09IGRvd24tbGVmdCkge1xuICAgIGJvcmRlci1ib3R0b206ICRzaXplIHNvbGlkICRjb2xvcjtcblxuICAgIEBpZiAkZGlyZWN0aW9uID09IGRvd24tcmlnaHQge1xuICAgICAgYm9yZGVyLWxlZnQ6ICAkc2l6ZSBzb2xpZCB0cmFuc3BhcmVudDtcblxuICAgIH0gQGVsc2UgaWYgJGRpcmVjdGlvbiA9PSBkb3duLWxlZnQge1xuICAgICAgYm9yZGVyLXJpZ2h0OiAkc2l6ZSBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICB9XG4gIH1cbn1cbiJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFRQSxBQUFBLElBQUksQ0FBQztFQUNILFVBQVUsRUFBRSxNQUFNLEdBQ25COztBQUVELDhCQUE4QjtBQUM5QixBQUFBLFdBQVcsQ0FBQztFQUNWLEtBQUssRUFBRSxlQUFlLEdBQ3ZCOztBQUVELEFBQUEsZ0JBQWdCLENBQUM7RUFDZixZQUFZLEVBQUUsQ0FBQyxHQUNoQjs7QUFFRCxBQUFBLHVCQUF1QixFQUFFLEtBQUssQUFBQSxhQUFhLEVBQUUsS0FBSyxBQUFBLGdCQUFnQixFQUFFLEtBQUssQ0FBQSxBQUFBLElBQUMsQ0FBSyxNQUFNLEFBQVgsQ0FBWSxhQUFhLEVBQUUsS0FBSyxDQUFBLEFBQUEsSUFBQyxDQUFLLFFBQVEsQUFBYixDQUFjLGFBQWEsQ0FBQztFQUNySSxVQUFVLEVBQUUsS0FBSztFQUNqQixPQUFPLEVBQUUsQ0FBQyxDQW5CWSxJQUFJLENBbUJRLENBQUMsQ0FBQyxJQUFJLEdBQ3pDOztBQUVELEFBQUEsS0FBSyxBQUFBLGFBQWEsQ0FBQSxBQUFBLElBQUMsQ0FBSyxRQUFRLEFBQWIsRUFBZTtFQUNoQyxPQUFPLEVBQUUsQ0FBQyxDQXZCWSxJQUFJLENBdUJRLENBQUMsQ0FBQyxHQUFHLEdBQ3hDOztBQUVELEFBQUEsV0FBVyxFQUFFLHlCQUF5QixDQUFDO0VBQ3JDLFNBQVMsRUFBRSxHQUFHLEdBSWY7RUFMRCxBQUVFLFdBRlMsQ0FFVCxLQUFLLENBQUEsQUFBQSxJQUFDLENBQUssTUFBTSxBQUFYLENBQVksYUFBYSxFQUZwQix5QkFBeUIsQ0FFcEMsS0FBSyxDQUFBLEFBQUEsSUFBQyxDQUFLLE1BQU0sQUFBWCxDQUFZLGFBQWEsQ0FBQztJQUM5QixPQUFPLEVBQUUsR0FBRyxDQTdCUSxJQUFJLEdBOEJ6Qjs7QUFHSCxBQUFBLHVCQUF1QixBQUFBLE1BQU0sQ0FBQztFQUM1QixJQUFJLEVBQUUsSUFBSTtFQUNWLEtB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 */